Files
OpenNest/OpenNest.Core/Geometry
AJ Isaacs 7f96d632f3 fix: correct NFP polygon computation and inflation direction
Three bugs fixed in NfpSlideStrategy pipeline:

1. NoFitPolygon.Reflect() incorrectly reversed vertex order. Point
   reflection (negating both axes) is a 180° rotation that preserves
   winding — the Reverse() call was converting CCW to CW, producing
   self-intersecting bowtie NFPs.

2. PolygonHelper inflation used OffsetSide.Left which is inward for
   CCW perimeters. Changed to OffsetSide.Right for outward inflation
   so NFP boundary positions give properly-spaced part placements.

3. Removed incorrect correction vector — same-drawing pairs have
   identical polygon-to-part offsets that cancel out in the NFP
   displacement.

Also refactored NfpSlideStrategy to be immutable (removed mutable
cache fields, single constructor with required data, added Create
factory method). BestFitFinder remains on RotationSlideStrategy
as default.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-20 23:24:04 -04:00
..
2026-03-18 16:47:42 -04:00
2026-03-18 16:47:42 -04:00
2026-03-18 16:47:42 -04:00
2026-03-18 16:47:42 -04:00
2026-03-18 16:47:42 -04:00
2026-03-18 16:47:42 -04:00
2026-03-18 16:47:42 -04:00
2026-03-18 16:47:42 -04:00
2026-03-18 16:47:42 -04:00
2026-03-18 16:47:42 -04:00
2026-03-18 16:47:42 -04:00