From 64874857a1b6d21954181f276eed80fa97a60ebf Mon Sep 17 00:00:00 2001 From: AJ Isaacs Date: Fri, 27 Mar 2026 20:14:39 -0400 Subject: [PATCH] feat: add LeadConfig, CutOffConfig, and ThicknessConfig data models --- OpenNest.Data/CutOffConfig.cs | 9 +++++++++ OpenNest.Data/LeadConfig.cs | 9 +++++++++ OpenNest.Data/ThicknessConfig.cs | 14 ++++++++++++++ 3 files changed, 32 insertions(+) create mode 100644 OpenNest.Data/CutOffConfig.cs create mode 100644 OpenNest.Data/LeadConfig.cs create mode 100644 OpenNest.Data/ThicknessConfig.cs diff --git a/OpenNest.Data/CutOffConfig.cs b/OpenNest.Data/CutOffConfig.cs new file mode 100644 index 0000000..2cc6060 --- /dev/null +++ b/OpenNest.Data/CutOffConfig.cs @@ -0,0 +1,9 @@ +namespace OpenNest.Data; + +public class CutOffConfig +{ + public double PartClearance { get; set; } = 0.02; + public double Overtravel { get; set; } + public double MinSegmentLength { get; set; } = 0.05; + public string Direction { get; set; } = "AwayFromOrigin"; +} diff --git a/OpenNest.Data/LeadConfig.cs b/OpenNest.Data/LeadConfig.cs new file mode 100644 index 0000000..6e02411 --- /dev/null +++ b/OpenNest.Data/LeadConfig.cs @@ -0,0 +1,9 @@ +namespace OpenNest.Data; + +public class LeadConfig +{ + public string Type { get; set; } = "Line"; + public double Length { get; set; } + public double Angle { get; set; } = 90.0; + public double Radius { get; set; } +} diff --git a/OpenNest.Data/ThicknessConfig.cs b/OpenNest.Data/ThicknessConfig.cs new file mode 100644 index 0000000..715cb2b --- /dev/null +++ b/OpenNest.Data/ThicknessConfig.cs @@ -0,0 +1,14 @@ +using System.Collections.Generic; + +namespace OpenNest.Data; + +public class ThicknessConfig +{ + public double Value { get; set; } + public double Kerf { get; set; } + public string AssistGas { get; set; } = ""; + public LeadConfig LeadIn { get; set; } = new(); + public LeadConfig LeadOut { get; set; } = new(); + public CutOffConfig CutOff { get; set; } = new(); + public List PlateSizes { get; set; } = new(); +}