08b31d0797646e6d12835ce76e1e2afa2eb5c1ce
RayEdgeDistance returned double.MaxValue for touching vertices (dist ≈ 0), causing rays from other vertices to hit the far side of stationary parts and allow movement through obstacles. Now returns 0 when touching so the distance > 0 check in PushSelected correctly prevents further movement. Added directional edge filtering using outward normals to discard back-facing edges before ray checks, reducing line count by ~2/3. DirectionalDistance now checks both StartPoint and EndPoint per line to preserve vertices at filtered edge boundaries. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Description
A Windows desktop app for CNC nesting — imports DXF drawings, arranges parts on plates and exports layouts as DXF or G-code for cutting.
Languages
C#
99.3%
Jupyter Notebook
0.7%