From a59911b38a56e19f6f1057b266f75e1aa930c3b0 Mon Sep 17 00:00:00 2001 From: AJ Isaacs Date: Tue, 7 Apr 2026 19:43:38 -0400 Subject: [PATCH] =?UTF-8?q?remove=20MicrotabLeadOut=20=E2=80=94=20redundan?= =?UTF-8?q?t=20with=20normal=20tabs?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit MicrotabLeadOut was an unimplemented stub (Generate returned empty list) that duplicated tab functionality. Existing saved configs with "Microtab" selected will gracefully fall back to NoLeadOut. Co-Authored-By: Claude Opus 4.6 (1M context) --- .../CuttingStrategy/LeadOuts/MicrotabLeadOut.cs | 16 ---------------- OpenNest/Controls/CuttingPanel.cs | 13 +------------ OpenNest/Forms/CuttingParametersSerializer.cs | 2 -- 3 files changed, 1 insertion(+), 30 deletions(-) delete mode 100644 OpenNest.Core/CNC/CuttingStrategy/LeadOuts/MicrotabLeadOut.cs diff --git a/OpenNest.Core/CNC/CuttingStrategy/LeadOuts/MicrotabLeadOut.cs b/OpenNest.Core/CNC/CuttingStrategy/LeadOuts/MicrotabLeadOut.cs deleted file mode 100644 index 1b75e6f..0000000 --- a/OpenNest.Core/CNC/CuttingStrategy/LeadOuts/MicrotabLeadOut.cs +++ /dev/null @@ -1,16 +0,0 @@ -using OpenNest.Geometry; -using System.Collections.Generic; - -namespace OpenNest.CNC.CuttingStrategy -{ - public class MicrotabLeadOut : LeadOut - { - public double GapSize { get; set; } = 0.03; - - public override List Generate(Vector contourEndPoint, double contourNormalAngle, - RotationType winding = RotationType.CW) - { - return new List(); - } - } -} diff --git a/OpenNest/Controls/CuttingPanel.cs b/OpenNest/Controls/CuttingPanel.cs index 69f3567..d763040 100644 --- a/OpenNest/Controls/CuttingPanel.cs +++ b/OpenNest/Controls/CuttingPanel.cs @@ -11,7 +11,7 @@ namespace OpenNest.Controls { "None", "Line", "Arc", "Line + Arc", "Clean Hole", "Line + Line" }; private static readonly string[] LeadOutTypes = - { "None", "Line", "Arc", "Microtab" }; + { "None", "Line", "Arc" }; private readonly TabControl tabControl; private readonly ComboBox cboExternalLeadIn, cboExternalLeadOut; @@ -424,9 +424,6 @@ namespace OpenNest.Controls case 2: AddNumericField(panel, "Radius:", 0.25, ref y, "Radius"); break; - case 3: - AddNumericField(panel, "Gap Size:", 0.06, ref y, "GapSize"); - break; } } @@ -513,10 +510,6 @@ namespace OpenNest.Controls combo.SelectedIndex = 2; SetParam(panel, "Radius", arc.Radius); break; - case MicrotabLeadOut microtab: - combo.SelectedIndex = 3; - SetParam(panel, "GapSize", microtab.GapSize); - break; default: combo.SelectedIndex = 0; break; @@ -572,10 +565,6 @@ namespace OpenNest.Controls { Radius = GetParam(panel, "Radius", 0.25) }, - 3 => new MicrotabLeadOut - { - GapSize = GetParam(panel, "GapSize", 0.06) - }, _ => new NoLeadOut() }; } diff --git a/OpenNest/Forms/CuttingParametersSerializer.cs b/OpenNest/Forms/CuttingParametersSerializer.cs index 04ce693..a6e7d20 100644 --- a/OpenNest/Forms/CuttingParametersSerializer.cs +++ b/OpenNest/Forms/CuttingParametersSerializer.cs @@ -85,7 +85,6 @@ namespace OpenNest.Forms { LineLeadOut line => new LeadOutDto { Type = "Line", Length = line.Length, ApproachAngle = line.ApproachAngle }, ArcLeadOut arc => new LeadOutDto { Type = "Arc", Radius = arc.Radius }, - MicrotabLeadOut mt => new LeadOutDto { Type = "Microtab", GapSize = mt.GapSize }, _ => new LeadOutDto { Type = "None" } }; } @@ -97,7 +96,6 @@ namespace OpenNest.Forms { "Line" => new LineLeadOut { Length = dto.Length, ApproachAngle = dto.ApproachAngle }, "Arc" => new ArcLeadOut { Radius = dto.Radius }, - "Microtab" => new MicrotabLeadOut { GapSize = dto.GapSize }, _ => new NoLeadOut() }; }