feat: wire GpuPairEvaluator into NestEngine with auto-detection

NestEngine.CreateEvaluator factory delegate allows injection of GPU
evaluator from UI layer. GpuEvaluatorFactory.Create attempts GPU,
returns null (CPU fallback) if unavailable. All NestEngine call sites
wired up.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-07 18:27:15 -05:00
parent 1c1508bc9e
commit 5bebfcb612
6 changed files with 237 additions and 17 deletions
+1
View File
@@ -172,6 +172,7 @@ namespace OpenNest.Actions
{
var plate = plateView.Plate;
var engine = new NestEngine(plate);
engine.CreateEvaluator = GpuEvaluatorFactory.Create;
var groupParts = parts.Select(p => p.BasePart).ToList();
var bounds = plate.WorkArea();
+2 -4
View File
@@ -25,10 +25,8 @@ namespace OpenNest.Actions
private void FillArea()
{
var engine = new NestEngine(plateView.Plate);
engine.FillArea(SelectedArea, new NestItem
{
Drawing = drawing
});
engine.CreateEvaluator = GpuEvaluatorFactory.Create;
engine.Fill(new NestItem { Drawing = drawing }, SelectedArea);
plateView.Invalidate();
Update();