mirror of
https://github.com/storytold/vectorcraft.git
synced 2026-10-24 09:46:59 -06:00
G11 #937: Shape Builder cuts art of thousands of segments with lines again
The planar map found each edge's source input by scanning every input segment, and the face around each hole or merge point by scanning every face, so it was quadratic in the segments; the Shape Builder therefore gave up past 4096 segments (traced or type outlines) and offered whole shapes. Index outline segments and faces by bounds on both axes (RectIndex), walk an edge's segments lazily when finding its leaving angle, and raise SHAPE_BUILDER_MAX_SEGMENTS to 65,536. Divide with open paths shares the cap; its cap test now follows the constant. Tests: a 20,000-segment blob cut by two lines, a 300-line hatch, the index against a brute-force scan, and the existing cap test at the new cap. Progress docs updated (G11, parity evidence, roadmap). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014gCpjL3yUhaH3jRp7ksufh
This commit is contained in:
committed by
bflatastic
co-authored by
Claude Opus 5.5
parent
974bca0c9d
commit
e7233ef0c5
+9
-1
File diff suppressed because one or more lines are too long
+5
-2
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user