refactor: migrate WinForms callsites to NestEngineRegistry
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -47,7 +47,7 @@ namespace OpenNest.Actions
|
|||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
var engine = new NestEngine(plateView.Plate);
|
var engine = NestEngineRegistry.Create(plateView.Plate);
|
||||||
var parts = await Task.Run(() =>
|
var parts = await Task.Run(() =>
|
||||||
engine.Fill(new NestItem { Drawing = drawing },
|
engine.Fill(new NestItem { Drawing = drawing },
|
||||||
SelectedArea, progress, cts.Token));
|
SelectedArea, progress, cts.Token));
|
||||||
@@ -61,7 +61,7 @@ namespace OpenNest.Actions
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
var engine = new NestEngine(plateView.Plate);
|
var engine = NestEngineRegistry.Create(plateView.Plate);
|
||||||
engine.Fill(new NestItem { Drawing = drawing }, SelectedArea);
|
engine.Fill(new NestItem { Drawing = drawing }, SelectedArea);
|
||||||
plateView.Invalidate();
|
plateView.Invalidate();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -833,7 +833,7 @@ namespace OpenNest.Controls
|
|||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
var engine = new NestEngine(Plate);
|
var engine = NestEngineRegistry.Create(Plate);
|
||||||
var parts = await Task.Run(() =>
|
var parts = await Task.Run(() =>
|
||||||
engine.Fill(groupParts, workArea, progress, cts.Token));
|
engine.Fill(groupParts, workArea, progress, cts.Token));
|
||||||
|
|
||||||
|
|||||||
@@ -53,6 +53,9 @@ namespace OpenNest.Forms
|
|||||||
|
|
||||||
if (GpuEvaluatorFactory.GpuAvailable)
|
if (GpuEvaluatorFactory.GpuAvailable)
|
||||||
BestFitCache.CreateSlideComputer = () => GpuEvaluatorFactory.CreateSlideComputer();
|
BestFitCache.CreateSlideComputer = () => GpuEvaluatorFactory.CreateSlideComputer();
|
||||||
|
|
||||||
|
var enginesDir = Path.Combine(Application.StartupPath, "Engines");
|
||||||
|
NestEngineRegistry.LoadPlugins(enginesDir);
|
||||||
}
|
}
|
||||||
|
|
||||||
private Nest CreateDefaultNest()
|
private Nest CreateDefaultNest()
|
||||||
@@ -794,7 +797,8 @@ namespace OpenNest.Forms
|
|||||||
if (workArea.Width <= 0 || workArea.Length <= 0)
|
if (workArea.Width <= 0 || workArea.Length <= 0)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
var engine = new NestEngine(plate) { PlateNumber = plateCount };
|
var engine = NestEngineRegistry.Create(plate);
|
||||||
|
engine.PlateNumber = plateCount;
|
||||||
|
|
||||||
var parts = await Task.Run(() =>
|
var parts = await Task.Run(() =>
|
||||||
engine.FillExact(item, workArea, progress, token));
|
engine.FillExact(item, workArea, progress, token));
|
||||||
@@ -826,10 +830,10 @@ namespace OpenNest.Forms
|
|||||||
if (packItems.Count > 0 && workArea.Width > 0 && workArea.Length > 0
|
if (packItems.Count > 0 && workArea.Width > 0 && workArea.Length > 0
|
||||||
&& !token.IsCancellationRequested)
|
&& !token.IsCancellationRequested)
|
||||||
{
|
{
|
||||||
var engine = new NestEngine(plate);
|
var engine = NestEngineRegistry.Create(plate);
|
||||||
var partsBefore = plate.Parts.Count;
|
var packParts = engine.PackArea(workArea, packItems, null, CancellationToken.None);
|
||||||
engine.PackArea(workArea, packItems);
|
plate.Parts.AddRange(packParts);
|
||||||
var packed = plate.Parts.Count - partsBefore;
|
var packed = packParts.Count;
|
||||||
|
|
||||||
if (packed > 0)
|
if (packed > 0)
|
||||||
{
|
{
|
||||||
@@ -962,7 +966,7 @@ namespace OpenNest.Forms
|
|||||||
try
|
try
|
||||||
{
|
{
|
||||||
var plate = activeForm.PlateView.Plate;
|
var plate = activeForm.PlateView.Plate;
|
||||||
var engine = new NestEngine(plate);
|
var engine = NestEngineRegistry.Create(plate);
|
||||||
|
|
||||||
var parts = await Task.Run(() =>
|
var parts = await Task.Run(() =>
|
||||||
engine.Fill(new NestItem { Drawing = drawing },
|
engine.Fill(new NestItem { Drawing = drawing },
|
||||||
|
|||||||
Reference in New Issue
Block a user