LabKit MATLAB Workbench

history

Single-click DIC rigid point matching

id: LK-20260713-dic-rigid-point-editor
date: 2026-07-13
sequence: 50
type: feat
compatibility: compatible
component: `labkit.ui` | `5.0.4 -> 5.1.0`
component: `labkit_DICPreprocess_app` | `1.3.6 -> 1.4.0`
scope: Single-click DIC rigid point matching

Context

DIC manual rigid matching had draggable points but maintained a separate pointer implementation and required a less consistent placement workflow than the ROI-center anchors used by Imager Reconstruction.

Decision and rationale

Extend the existing app-neutral anchor editor with a discrete point mode, then keep moving/fixed pair order, numbering, minimum pair count, and rigid-fit policy inside DIC.

Changes

User and data impact

Feature placement now follows the same direct click-and-drag model as Imager ROI anchors. Point coordinates and the resulting rigid transform keep their existing N-by-2 pixel-coordinate contract.

Compatibility and migration

The default anchor-editor curve mode is unchanged. DIC exports and transform math are unchanged; this is an additive interaction improvement.

Validation

UI anchor-editor tests cover discrete point append and no-path behavior. The DIC GUI workflow covers toolbox-free modal cancellation and app launch wiring.

Evidence

Primary sources are labkit.ui.interaction.anchorEditor and dic_preprocess.userInterface.selectRigidPointPairs. Commit 392a073e introduced their shared DIC rigid-point interaction.

Known limitations and follow-up

Automated hidden-GUI tests cannot judge pointing ergonomics; final interaction feel still requires a short manual placement-and-drag check.