From 5c918a0978c1926528ca5dc9bf5f0bfd15b721a2 Mon Sep 17 00:00:00 2001 From: AJ Isaacs Date: Thu, 9 Apr 2026 17:46:44 -0400 Subject: [PATCH] fix: draw rapid move to hole center before sub-program lead-in The rapid from the previous feature to the hole center is implied by the SubProgramCall offset but wasn't being drawn. Now DrawRapids renders this traverse before recursing into the sub-program. Co-Authored-By: Claude Opus 4.6 (1M context) --- OpenNest/Controls/PlateRenderer.cs | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/OpenNest/Controls/PlateRenderer.cs b/OpenNest/Controls/PlateRenderer.cs index d4b5a83..cb9e7a5 100644 --- a/OpenNest/Controls/PlateRenderer.cs +++ b/OpenNest/Controls/PlateRenderer.cs @@ -433,7 +433,15 @@ namespace OpenNest.Controls if (program != null) { var savedPos = pos; - pos = new Vector(savedPos.X + subpgm.Offset.X, savedPos.Y + subpgm.Offset.Y); + var holePos = new Vector(savedPos.X + subpgm.Offset.X, savedPos.Y + subpgm.Offset.Y); + + // Draw rapid from current position to hole center + if (!(skipFirstRapid && !firstRapidSkipped)) + DrawLine(g, pos, holePos, view.ColorScheme.RapidPen); + else + firstRapidSkipped = true; + + pos = holePos; DrawRapids(g, program, ref pos); pos = savedPos; }