From c4d09f246617d2ffb892492236eb1669cbd379db Mon Sep 17 00:00:00 2001 From: AJ Isaacs Date: Fri, 13 Mar 2026 10:22:39 -0400 Subject: [PATCH] feat(engine): integrate NFP phase into FindBestFill (sync overload) Co-Authored-By: Claude Opus 4.6 --- OpenNest.Engine/NestEngine.cs | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/OpenNest.Engine/NestEngine.cs b/OpenNest.Engine/NestEngine.cs index 9032353..a9264cc 100644 --- a/OpenNest.Engine/NestEngine.cs +++ b/OpenNest.Engine/NestEngine.cs @@ -151,6 +151,13 @@ namespace OpenNest if (IsBetterFill(pairResult, best, workArea)) best = pairResult; + // NFP phase (non-rectangular parts only) + var nfpResult = FillNfpBestFit(item, workArea); + Debug.WriteLine($"[FindBestFill] NFP: {nfpResult?.Count ?? 0} parts"); + + if (IsBetterFill(nfpResult, best, workArea)) + best = nfpResult; + return best; }