Commit the drag and refresh any derived state from the committed geometry.
Move the control during drag. Returns the updated visual position of the control, or undefined if no movement was possible (e.g. degenerate geometry).
Optional pre-computed restriction-constrained position. When provided the control should derive its movement from this world-space point rather than from a raw line-line closest-point computation on the ray.
Optional constraint evaluator. When provided, edge controls use it to find the tightest valid scalar t before moving both endpoints, guaranteeing they always translate rigidly together.
Refreshes all derived state from the current geometry (e.g. after undo/redo).
Called when a single point in the geometry has moved (not during a drag). Returns true if this control was affected and its visual position changed.
Begin a drag interaction. Snapshots any required initial state. Returns false if the control cannot be dragged at this time.
Cancel the drag, restoring all affected geometry points to their pre-drag positions.