refactor: merge DxfImporter and DxfExporter into single static Dxf class
Consolidated two stateless classes into one unified API: Dxf.Import(), Dxf.GetGeometry(), Dxf.ExportPlate(), Dxf.ExportProgram(). Export state moved into a private ExportContext. Removed bool+out pattern from GetGeometry in favor of returning empty list on failure. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -382,7 +382,6 @@ namespace OpenNest.Forms
|
||||
}
|
||||
|
||||
var jobName = txtJobName.Text.Trim();
|
||||
var importer = new DxfImporter();
|
||||
var nestsCreated = 0;
|
||||
var importErrors = new List<string>();
|
||||
|
||||
@@ -416,7 +415,7 @@ namespace OpenNest.Forms
|
||||
|
||||
try
|
||||
{
|
||||
var result = importer.Import(part.DxfPath);
|
||||
var result = Dxf.Import(part.DxfPath);
|
||||
|
||||
var drawingName = Path.GetFileNameWithoutExtension(part.DxfPath);
|
||||
var drawing = new Drawing(drawingName);
|
||||
|
||||
@@ -74,8 +74,7 @@ namespace OpenNest.Forms
|
||||
{
|
||||
try
|
||||
{
|
||||
var importer = new DxfImporter();
|
||||
var result = importer.Import(file);
|
||||
var result = Dxf.Import(file);
|
||||
|
||||
if (result.Entities.Count == 0)
|
||||
return;
|
||||
@@ -383,8 +382,7 @@ namespace OpenNest.Forms
|
||||
newItems.Add(splitPath);
|
||||
|
||||
// Re-import geometry but keep bends from the split drawing
|
||||
var importer = new DxfImporter();
|
||||
var result = importer.Import(splitPath);
|
||||
var result = Dxf.Import(splitPath);
|
||||
|
||||
var splitItem = new FileListItem
|
||||
{
|
||||
|
||||
@@ -362,9 +362,8 @@ namespace OpenNest.Forms
|
||||
{
|
||||
if (dlg.FilterIndex == 1)
|
||||
{
|
||||
var exporter = new DxfExporter();
|
||||
var success = exporter.ExportPlate(PlateView.Plate, dlg.FileName);
|
||||
return success;
|
||||
Dxf.ExportPlate(PlateView.Plate, dlg.FileName);
|
||||
return true;
|
||||
}
|
||||
else if (dlg.FilterIndex == 2)
|
||||
{
|
||||
@@ -540,8 +539,7 @@ namespace OpenNest.Forms
|
||||
var plate = PlateView.Plate;
|
||||
var name = string.Format("{0}-P{1}.dxf", Nest.Name, PlateManager.CurrentIndex + 1);
|
||||
var path = Path.Combine(Path.GetTempPath(), name);
|
||||
var exporter = new DxfExporter();
|
||||
exporter.ExportPlate(plate, path);
|
||||
Dxf.ExportPlate(plate, path);
|
||||
|
||||
Process.Start(path);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user