mirror of
https://github.com/storytold/vectorcraft.git
synced 2026-10-24 17:56:50 -06:00
The Shaper fits a hexagon's rotation by scoring 0, 90, 180 and 270 degrees, but a hexagon at 180 is the one at 0 (and 270 the one at 90): those pairs score the same up to rounding, so the platform's atan2 picked between them. FreeBSD's libm gave 270 where Linux gives 90, failing tilted_rectangles_ellipses_and_hexagons_snap_to_their_angle_steps on the FreeBSD build+test job. Candidates a whole number of periods from an earlier one are now dropped. A new test reproduces the flip on Linux with the old code (180 instead of 0 at tilt -9). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GQPh8UDgMyARR5Hat9UchC