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:
2026-04-06 08:17:49 -04:00
parent e92208b8c0
commit 250fdefaea
20 changed files with 405 additions and 505 deletions

View File

@@ -241,17 +241,11 @@ static class NestConsole
static Drawing ImportDxf(string path)
{
var importer = new DxfImporter();
if (!importer.GetGeometry(path, out var geometry))
{
Console.Error.WriteLine($"Error: failed to read DXF file: {path}");
return null;
}
var geometry = Dxf.GetGeometry(path);
if (geometry.Count == 0)
{
Console.Error.WriteLine($"Error: no geometry found in DXF file: {path}");
Console.Error.WriteLine($"Error: failed to read DXF file or no geometry found: {path}");
return null;
}