From f26edb824db80637b1a6474fcda703ecfe4b74c6 Mon Sep 17 00:00:00 2001 From: AJ Isaacs Date: Thu, 2 Apr 2026 11:11:29 -0400 Subject: [PATCH] fix: remove dangerous G0 X0 Y0 return-to-home rapids from Cincinnati post Rapid traversing back to origin over a sheet of freshly cut parts risks collisions with tipped or warped pieces. Removed from both the sheet footer and part subprogram endings. Co-Authored-By: Claude Opus 4.6 (1M context) --- OpenNest.Posts.Cincinnati/CincinnatiPartSubprogramWriter.cs | 1 - OpenNest.Posts.Cincinnati/CincinnatiSheetWriter.cs | 1 - OpenNest.Tests/Cincinnati/CincinnatiPostProcessorTests.cs | 3 +-- OpenNest.Tests/Cincinnati/CincinnatiSheetWriterTests.cs | 1 - 4 files changed, 1 insertion(+), 5 deletions(-) diff --git a/OpenNest.Posts.Cincinnati/CincinnatiPartSubprogramWriter.cs b/OpenNest.Posts.Cincinnati/CincinnatiPartSubprogramWriter.cs index 8b8a9b5..25a0674 100644 --- a/OpenNest.Posts.Cincinnati/CincinnatiPartSubprogramWriter.cs +++ b/OpenNest.Posts.Cincinnati/CincinnatiPartSubprogramWriter.cs @@ -66,7 +66,6 @@ public sealed class CincinnatiPartSubprogramWriter _featureWriter.Write(w, ctx); } - w.WriteLine("G0 X0 Y0"); w.WriteLine($"M99 (END OF {drawingName})"); } diff --git a/OpenNest.Posts.Cincinnati/CincinnatiSheetWriter.cs b/OpenNest.Posts.Cincinnati/CincinnatiSheetWriter.cs index 63228e4..2f04c0b 100644 --- a/OpenNest.Posts.Cincinnati/CincinnatiSheetWriter.cs +++ b/OpenNest.Posts.Cincinnati/CincinnatiSheetWriter.cs @@ -95,7 +95,6 @@ public sealed class CincinnatiSheetWriter // 5. Footer w.WriteLine("M42"); - w.WriteLine("G0 X0 Y0"); var emitM50 = _config.PalletExchange == PalletMode.EndOfSheet || (_config.PalletExchange == PalletMode.StartAndEnd && isLastSheet); if (emitM50) diff --git a/OpenNest.Tests/Cincinnati/CincinnatiPostProcessorTests.cs b/OpenNest.Tests/Cincinnati/CincinnatiPostProcessorTests.cs index 024ff54..f7ef945 100644 --- a/OpenNest.Tests/Cincinnati/CincinnatiPostProcessorTests.cs +++ b/OpenNest.Tests/Cincinnati/CincinnatiPostProcessorTests.cs @@ -258,8 +258,7 @@ public class CincinnatiPostProcessorTests Assert.Contains(":200", output); Assert.Contains("G84", output); - // Sub-program ends with G0 X0 Y0 and M99 - Assert.Contains("G0 X0 Y0", output); + // Sub-program ends with M99 Assert.Contains("M99 (END OF Square)", output); // G92 restore after M98 call diff --git a/OpenNest.Tests/Cincinnati/CincinnatiSheetWriterTests.cs b/OpenNest.Tests/Cincinnati/CincinnatiSheetWriterTests.cs index d13279a..4b60846 100644 --- a/OpenNest.Tests/Cincinnati/CincinnatiSheetWriterTests.cs +++ b/OpenNest.Tests/Cincinnati/CincinnatiSheetWriterTests.cs @@ -55,7 +55,6 @@ public class CincinnatiSheetWriterTests var output = sb.ToString(); Assert.Contains("M42", output); - Assert.Contains("G0 X0 Y0", output); Assert.Contains("M50", output); }