You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(vscode): smoother keeps arrow axis perpendicular; dial spacing back
Two adjustments on top of the earlier edge-polish commit, driven by
feedback on the Running composite in ``test_formatter_playground``.
- Arrow perpendicularity. The merge-based smoother collapsed a short
final stub by deleting its bend point and sliding the preceding
one, which FLIPPED the final segment's axis — a 2px vertical stub
into a node's top edge became a long horizontal segment running
parallel to that edge. The arrow landed parallel instead of
perpendicular.
Rewrite the smoother to elongate a stub by shifting the two bend
points parallel to the stub, keeping the segment's axis intact. An
anti-cycle guard skips the shift when it would trade a stub at one
end for a new stub at the other end — the pathological case where
both ends are already short; in that case the polyline is left as
ELK produced it so perpendicularity is never sacrificed.
- Edge spacing dialed back. The earlier bump was too aggressive on
small diagrams. Settle on values that are still noticeably roomier
than the original:
elk.spacing.edgeNode 42 -> 48 (was 56)
elk.spacing.edgeEdge 30 -> 36 (was 44)
elk.layered.spacing.baseValue 48 -> 50 (was 52)
elk.layered.spacing.edgeNodeBetweenLayers 46 -> 52 (was 58)
elk.layered.spacing.edgeEdgeBetweenLayers (new) 32 (was 40)
elk.layered.spacing.nodeNodeBetweenLayers 110 -> 116 (was 120)
mergeEdges / mergeHierarchyEdges / unnecessaryBendpoints stay on.
The combined effect on the playground's ``[*] -> Active`` edge:
ELK now picks a balanced 10-75-10 orthogonal route instead of the
original 18-75-2, and the smoother leaves it alone because an anti-
cycle shift would cost the other end. The arrow lands vertically on
Active's top edge, well inside the flat region between the rounded
corners.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
0 commit comments