refactor: extract PlacedPart/SequenceEntry types, add IFP caching

Move PlacedPart to its own file. Replace tuple-based sequences with
SequenceEntry struct for clarity. Add IProgress parameter to
INestOptimizer. Add IFP caching to NfpCache to avoid recomputing
inner fit polygons for the same drawing/rotation/workArea.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-03-20 14:42:50 -04:00
parent facd07d7de
commit 9411dd0fdd
4 changed files with 65 additions and 2 deletions

View File

@@ -0,0 +1,15 @@
using OpenNest.Geometry;
namespace OpenNest.Engine.Nfp
{
/// <summary>
/// Represents a part that has been placed by the BLF algorithm.
/// </summary>
public class PlacedPart
{
public int DrawingId { get; set; }
public double Rotation { get; set; }
public Vector Position { get; set; }
public Drawing Drawing { get; set; }
}
}