feat: geometry-aware convergence, both-axis search, remnant engine, fill cache
- Convergence loop now uses FillLinear internally to measure actual waste with geometry-aware spacing instead of bounding-box arithmetic - Each candidate pair is tried in both Row and Column orientations to find the shortest perpendicular dimension (more complete stripes) - CompleteStripesOnly flag drops partial stripes; remnant strip is filled by a full engine run (injected via CreateRemnantEngine) - ConvergeStripeAngleShrink tries N+1 narrower pairs as alternative - FillResultCache avoids redundant engine runs on same-sized remnants - CLAUDE.md: note to not commit specs/plans Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -100,6 +100,8 @@ Always use Roslyn Bridge MCP tools (`mcp__RoslynBridge__*`) as the primary metho
|
||||
|
||||
Always keep `README.md` and `CLAUDE.md` up to date when making changes that affect project structure, architecture, build instructions, dependencies, or key patterns. If you add a new project, change a namespace, modify the build process, or alter significant behavior, update both files as part of the same change.
|
||||
|
||||
**Do not commit** design specs, implementation plans, or other temporary planning documents (`docs/superpowers/` etc.) to the repository. These are working documents only — keep them local and untracked.
|
||||
|
||||
## Key Patterns
|
||||
|
||||
- OpenNest.Core uses multiple namespaces: `OpenNest` (root domain), `OpenNest.CNC`, `OpenNest.Geometry`, `OpenNest.Converters`, `OpenNest.Math`, `OpenNest.Collections`.
|
||||
|
||||
Reference in New Issue
Block a user