diff --git a/OpenNest.Core/CNC/CuttingStrategy/CuttingResult.cs b/OpenNest.Core/CNC/CuttingStrategy/CuttingResult.cs new file mode 100644 index 0000000..933db14 --- /dev/null +++ b/OpenNest.Core/CNC/CuttingStrategy/CuttingResult.cs @@ -0,0 +1,11 @@ +using OpenNest.CNC; +using OpenNest.Geometry; + +namespace OpenNest.CNC.CuttingStrategy +{ + public readonly struct CuttingResult + { + public Program Program { get; init; } + public Vector LastCutPoint { get; init; } + } +} diff --git a/OpenNest.Engine.Tests/CuttingResultTests.cs b/OpenNest.Engine.Tests/CuttingResultTests.cs new file mode 100644 index 0000000..ab600dd --- /dev/null +++ b/OpenNest.Engine.Tests/CuttingResultTests.cs @@ -0,0 +1,23 @@ +using OpenNest.CNC; +using OpenNest.CNC.CuttingStrategy; +using OpenNest.Geometry; +using Xunit; + +namespace OpenNest.Engine.Tests; + +public class CuttingResultTests +{ + [Fact] + public void CuttingResult_StoresValues() + { + var pgm = new Program(); + pgm.Codes.Add(new RapidMove(new Vector(1, 2))); + var point = new Vector(3, 4); + + var result = new CuttingResult { Program = pgm, LastCutPoint = point }; + + Assert.Same(pgm, result.Program); + Assert.Equal(3, result.LastCutPoint.X); + Assert.Equal(4, result.LastCutPoint.Y); + } +}