From 5e346270c6dafe240d7a3ff471e1050755e43b73 Mon Sep 17 00:00:00 2001 From: AJ Isaacs Date: Sun, 15 Mar 2026 22:43:42 -0400 Subject: [PATCH] fix: delegate Fill(groupParts) and PackArea to DefaultNestEngine StripNestEngine only overrode Fill(NestItem), so ActionClone.Fill and Pack operations fell through to the empty base class defaults. Now all virtual methods delegate to DefaultNestEngine. Co-Authored-By: Claude Opus 4.6 (1M context) --- OpenNest.Engine/StripNestEngine.cs | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/OpenNest.Engine/StripNestEngine.cs b/OpenNest.Engine/StripNestEngine.cs index 45d6384..8e08bcc 100644 --- a/OpenNest.Engine/StripNestEngine.cs +++ b/OpenNest.Engine/StripNestEngine.cs @@ -30,6 +30,26 @@ namespace OpenNest return inner.Fill(item, workArea, progress, token); } + /// + /// Group-parts fill delegates to DefaultNestEngine. + /// + public override List Fill(List groupParts, Box workArea, + IProgress progress, CancellationToken token) + { + var inner = new DefaultNestEngine(Plate); + return inner.Fill(groupParts, workArea, progress, token); + } + + /// + /// Pack delegates to DefaultNestEngine. + /// + public override List PackArea(Box box, List items, + IProgress progress, CancellationToken token) + { + var inner = new DefaultNestEngine(Plate); + return inner.PackArea(box, items, progress, token); + } + /// /// Selects the item that consumes the most plate area (bounding box area x quantity). /// Returns the index into the items list.