Files
figcraft/crates/engine/src
叶林橦 d489235d2c engine: short loops in vector.reverseLoop really turn round
reverseLoop reversed the list and skipped shared segments, which only turns a
loop of three or more round: a one-segment loop has no order at all, and a
two-segment ring reads the same whichever way its list is turned, so both
answered reversed: true without moving.

Three or more segments: reverse the list and leave every stored end alone (a
shared one belongs to the neighbour too). One or two: store one segment the
other way round, skipping any segment another short loop lists; when none is
left to swap, refuse with a clear error and leave the document as it was.

Tests: two 2-segment areas over one line that share it, the shared segment
listed first in one area and last in the other; each reversal flips that area's
winding sign and leaves the shared segment and the neighbour alone. A shared
one-segment loop is refused. The 4-segment squares stay as the long-loop case.

Drop the two catalog.rs menu lines: they aren't in the reference app's menus,
and the Vector menu runs commands without parameters, so both would fail there.
2026-10-17 22:35:50 +08:00
..
2026-10-12 02:30:25 +07:00
2026-10-12 02:30:25 +07:00
2026-10-10 12:16:56 +07:00
2026-10-14 10:31:59 +07:00
2026-10-17 16:05:22 +07:00
2026-10-13 13:36:54 +07:00
2026-10-16 02:03:46 +02:00
2026-10-13 13:36:54 +07:00
2026-10-13 13:36:54 +07:00