-
6a2f39530f
docs: add contour re-indexing design spec
AJ Isaacs
2026-03-12 23:41:30 -04:00
-
18023cb1cf
docs: clarify cutting strategy runs at nest-time, not post-processing
AJ Isaacs
2026-03-12 23:24:23 -04:00
-
b4a740a515
Merge branch 'feature/cutting-strategy' into master
AJ Isaacs
2026-03-12 23:20:02 -04:00
-
-
441628eff2
feat: add ContourCuttingStrategy orchestrator
AJ Isaacs
2026-03-12 23:15:38 -04:00
-
ac7d90ae17
feat: add CuttingParameters and configuration classes
AJ Isaacs
2026-03-12 23:13:36 -04:00
-
459738e373
feat: add Tab hierarchy (4 classes)
AJ Isaacs
2026-03-12 23:13:31 -04:00
-
b112f70f6a
feat: add LeadOut hierarchy (5 classes)
AJ Isaacs
2026-03-12 23:12:09 -04:00
-
f17db1d2f9
feat: add LeadIn hierarchy (7 classes)
AJ Isaacs
2026-03-12 23:07:31 -04:00
-
-
9b3cf10222
docs: add cutting strategy implementation plan
AJ Isaacs
2026-03-12 22:56:52 -04:00
-
e14382f2f3
docs: update cutting strategy spec with review fixes
AJ Isaacs
2026-03-12 22:48:17 -04:00
-
cb30c20eb9
docs: add cutting strategy design spec
AJ Isaacs
2026-03-12 22:43:05 -04:00
-
e4e1d9b5a3
refactor: rename DefinedShape to ShapeProfile
AJ Isaacs
2026-03-12 22:19:49 -04:00
-
0c395421cd
chore: add .claude/ to .gitignore
AJ Isaacs
2026-03-12 22:02:54 -04:00
-
612b540d9d
refactor: rename Size.Height to Size.Length across codebase
AJ Isaacs
2026-03-12 22:01:40 -04:00
-
7e0edd112a
refactor: use 'length' instead of 'height' in nest JSON format
AJ Isaacs
2026-03-12 21:50:53 -04:00
-
c2534ef08b
feat: replace XML nest file format with JSON (v2)
AJ Isaacs
2026-03-12 18:44:43 -04:00
-
a084819889
perf: comment out Debug.WriteLine calls in FillLinear
AJ Isaacs
2026-03-12 08:44:14 -04:00
-
d0d334e734
fix: use chain tolerance for shape building to handle DXF endpoint gaps
AJ Isaacs
2026-03-12 08:37:39 -04:00
-
2632b3dbf7
fix: resolve infinite loop in multi-plate autonest and wire into console
AJ Isaacs
2026-03-12 08:29:02 -04:00
-
3f3b07ef5d
feat: add NFP-based mixed-part autonesting
AJ Isaacs
2026-03-12 08:08:22 -04:00
-
-
-
9f84357c34
chore: add .worktrees/ to .gitignore
AJ Isaacs
2026-03-11 14:48:08 -04:00
-
164bab4a83
docs: update NFP autonest spec with review fixes
AJ Isaacs
2026-03-11 14:42:42 -04:00
-
f126bfe2ba
docs: add NFP-based autonesting design spec
AJ Isaacs
2026-03-11 14:28:22 -04:00
-
-
ad50751250
feat: add OpenNest.Console project (renamed from TestHarness)
AJ Isaacs
2026-03-11 00:43:02 -04:00
-
78ee65d946
fix: resolve grid overlap bug and parallelize fill loops
AJ Isaacs
2026-03-11 00:36:48 -04:00
-
0e3bf3ccaa
feat: try fewer rows in FillRecursive when remainder strip yields more parts
AJ Isaacs
2026-03-10 23:19:42 -04:00
-
f3662465cf
feat: try cardinal rotations in FillRemainingStrip for better strip fills
AJ Isaacs
2026-03-10 23:12:07 -04:00
-
4d250e3990
feat: use FillScore for fill result comparisons in NestEngine
AJ Isaacs
2026-03-10 23:11:38 -04:00
-
a5b7049ecc
feat: add FillScore struct with lexicographic comparison
AJ Isaacs
2026-03-10 23:10:09 -04:00
-
add88bd410
docs: add FillScore design spec and implementation plan
AJ Isaacs
2026-03-10 23:03:21 -04:00
-
b55aa7ab42
fix: correct GPU overlap detection coordinate system mismatch
AJ Isaacs
2026-03-10 07:00:21 -04:00
-
079a44052c
perf: pre-allocate tile list capacity and remove redundant bbox walks
AJ Isaacs
2026-03-09 23:13:22 -04:00
-
94850795cf
perf: replace O(p²) startOffset loop with O(p) pass in FindPatternCopyDistance
AJ Isaacs
2026-03-09 23:10:44 -04:00
-
53759c5877
perf: eliminate Program.Clone calls from copy-distance computations
AJ Isaacs
2026-03-09 23:02:59 -04:00
-
8ad01bb7f8
perf: pre-compute directional edges in PartBoundary constructor
AJ Isaacs
2026-03-09 22:59:06 -04:00
-
23b5358352
perf: add CloneAtOffset to skip re-rotation and bbox walk on part clones
AJ Isaacs
2026-03-09 22:53:02 -04:00
-
5fc16e9dae
perf: halve rotating calipers edge iterations
AJ Isaacs
2026-03-09 22:17:24 -04:00
-
91908c1732
perf: optimize fill hot path — bbox pre-check and geometry inner loop
AJ Isaacs
2026-03-09 22:10:25 -04:00
-
35d7248da0
refactor: move OpenNest.Test to separate test data repo
AJ Isaacs
2026-03-09 21:06:43 -04:00
-
574342b5be
chore: add OpenNest.Test to solution
AJ Isaacs
2026-03-09 20:47:17 -04:00
-
c1811af5d5
test: add RemnantFillTests for remnant area filling
AJ Isaacs
2026-03-09 20:43:55 -04:00
-
1c3d9e08bd
test: add FillTests for full plate fill and remainder strip refill
AJ Isaacs
2026-03-09 20:03:39 -04:00
-
54da2bd2da
refactor: convert OpenNest.Test to xUnit project with TestData helper
AJ Isaacs
2026-03-09 20:00:39 -04:00
-
bb64249af9
docs: add xUnit test suite implementation plan
AJ Isaacs
2026-03-09 19:56:35 -04:00
-
3705d50546
feat: add remainder strip re-fill to improve pattern fill density
AJ Isaacs
2026-03-09 19:15:42 -04:00
-
3516199f25
docs: add MCP service design and implementation plan
AJ Isaacs
2026-03-09 18:33:13 -04:00
-
57c35450dd
docs: update remnant fill investigation with root causes and fix details
AJ Isaacs
2026-03-09 18:33:10 -04:00
-
435a08074b
feat: improve remnant fill with rotation sweep, smart pair selection, and partial pattern fill
AJ Isaacs
2026-03-09 18:33:06 -04:00
-
c5a9c27160
feat: add F key zoom-to-fit and fix middle-click conflict in PlateView
AJ Isaacs
2026-03-09 18:28:55 -04:00
-
d1353d58e5
feat: add configurable chord tolerance for offset drawing and push geometry
AJ Isaacs
2026-03-09 17:48:05 -04:00
-
df283d15dc
docs: update remnant fill investigation — engine needs more rotation candidates
AJ Isaacs
2026-03-08 16:12:51 -04:00
-
892b11b341
docs: add remnant fill optimization investigation plan
AJ Isaacs
2026-03-08 16:10:26 -04:00
-
38b4b6debf
Merge branch 'feature/mcp-service'
AJ Isaacs
2026-03-08 16:03:35 -04:00
-
-
8952b9d0ea
fix(mcp): add [McpServerToolType] attribute to all tool classes
AJ Isaacs
2026-03-08 16:01:47 -04:00
-
5951a6a5c0
docs: update CLAUDE.md with OpenNest.IO and OpenNest.Mcp projects
AJ Isaacs
2026-03-08 15:53:19 -04:00
-
f55779a01a
feat(mcp): publish OpenNest.Mcp and register in .mcp.json
AJ Isaacs
2026-03-08 15:52:40 -04:00
-
e9ea290907
fix(mcp): add null guards and safe parsing to pack_plate
AJ Isaacs
2026-03-08 15:52:10 -04:00
-
0c56a9049a
feat(mcp): add inspection tools — get_plate_info, get_parts, check_overlaps
AJ Isaacs
2026-03-08 15:49:02 -04:00
-
8806bccb4e
feat(mcp): add nesting tools — fill_plate, fill_area, fill_remnants, pack_plate
AJ Isaacs
2026-03-08 15:48:30 -04:00
-
3e8f8cd3bf
feat(mcp): add setup tools — create_plate, clear_plate
AJ Isaacs
2026-03-08 15:47:55 -04:00
-
721197f1d4
feat(mcp): add input tools — load_nest, import_dxf, create_drawing
AJ Isaacs
2026-03-08 15:47:33 -04:00
-
d02dfb92e9
feat: scaffold OpenNest.Mcp project with session state
AJ Isaacs
2026-03-08 15:46:02 -04:00
-
a9af5effc5
feat: add Plate.GetRemnants() for finding empty edge strips
AJ Isaacs
2026-03-08 15:43:27 -04:00
-
cc286dd9b7
refactor: extract OpenNest.IO class library from WinForms project
AJ Isaacs
2026-03-08 15:41:07 -04:00
-
-
4196a30791
refactor: unify FillLinear tiling into recursive FillRecursive method
AJ Isaacs
2026-03-08 15:00:09 -04:00
-
c28d5d8c12
fix: use CPU evaluator for best-fit cache, remove broken GPU dilation
AJ Isaacs
2026-03-08 14:20:13 -04:00
-
3220306d3a
feat: add reverse push directions for concave interlocking and cache best-fit results
AJ Isaacs
2026-03-08 14:02:41 -04:00
-
031264e98f
refactor: pre-compute offset boundaries in FillLinear via PartBoundary
AJ Isaacs
2026-03-08 13:28:01 -04:00
-
a92ba7af89
feat: resolve per-entity color and line type from DXF imports
AJ Isaacs
2026-03-08 13:27:56 -04:00
-
2225c4ef09
feat: add BestFitCell control with screen-space text overlay
AJ Isaacs
2026-03-08 13:26:29 -04:00
-
e078ef4b77
feat: implement color and line type exclusion filters on CadConverterForm
AJ Isaacs
2026-03-08 13:14:09 -04:00
-
bc392b37dc
refactor: move GpuEvaluatorFactory to OpenNest.Gpu project
AJ Isaacs
2026-03-07 21:40:56 -05:00
-
99edad4228
refactor: extract responsibilities from NestEngine into focused classes
AJ Isaacs
2026-03-07 21:37:50 -05:00
-
b738d4c72c
refactor: clean up NestEngine — collapse overloads, extract helper, remove dead code
AJ Isaacs
2026-03-07 21:31:15 -05:00
-
d3704378c2
refactor: replace VPattern/HPattern with unified FillGrid method
AJ Isaacs
2026-03-07 21:27:11 -05:00
-
062981ebe9
fix: compute accurate bounding metrics for GPU pair results
AJ Isaacs
2026-03-07 20:55:16 -05:00
-
43a27df73c
fix: handle multi-part pattern copy distance in FillLinear
AJ Isaacs
2026-03-07 20:55:12 -05:00
-
1d46ce2298
feat: add BestFitViewerForm for visualizing best-fit nesting results
AJ Isaacs
2026-03-07 20:06:28 -05:00
-
c575d82f80
Merge feature/gpu-bitmap-bestfit into master
AJ Isaacs
2026-03-07 20:02:22 -05:00
-
-
90b89a5dfa
feat: add FillRectangleBestFit strategy and remove false overlap rejection
AJ Isaacs
2026-03-07 20:00:38 -05:00
-
0c14d7f854
fix: align best-fit sweep to include offset=0 for grid arrangements
AJ Isaacs
2026-03-07 19:24:37 -05:00
-
73c20c30ce
fix: exclude rapid moves from Part.Intersects to fix FillLinear rejection
AJ Isaacs
2026-03-07 18:52:35 -05:00
-
7ed4572f8a
feat: add GPU status indicator and device probe
AJ Isaacs
2026-03-07 18:33:10 -05:00
-
5bebfcb612
feat: wire GpuPairEvaluator into NestEngine with auto-detection
AJ Isaacs
2026-03-07 18:27:15 -05:00
-
1c1508bc9e
feat: add GpuPairEvaluator with ILGPU bitmap overlap kernel
AJ Isaacs
2026-03-07 18:24:39 -05:00
-
8d28167b2f
feat: add OpenNest.Gpu project with PartBitmap rasterizer
AJ Isaacs
2026-03-07 18:21:04 -05:00
-
b83d09c3a7
refactor: extract IPairEvaluator interface from PairEvaluator
AJ Isaacs
2026-03-07 18:19:05 -05:00
-
dd7383467b
feat: add Polygon.ContainsPoint using ray casting
AJ Isaacs
2026-03-07 18:13:12 -05:00
-
-
688b00b3e4
docs: add GPU bitmap best fit implementation plan
AJ Isaacs
2026-03-07 18:06:01 -05:00
-
443556d2e3
docs: add GPU bitmap best fit evaluation design
AJ Isaacs
2026-03-07 18:03:40 -05:00
-
bc411949b8
fix: use offset geometry for moving part in FillLinear spacing
AJ Isaacs
2026-03-07 14:10:48 -05:00
-
54cdf21264
docs: update CLAUDE.md for .NET 8 migration
AJ Isaacs
2026-03-07 13:32:11 -05:00
-
0e7eb3df81
chore: update solution file for Visual Studio 17
AJ Isaacs
2026-03-07 13:31:43 -05:00
-
e6e87b7cad
refactor: simplify MainApp for .NET 8 DPI handling
AJ Isaacs
2026-03-07 13:31:19 -05:00
-
848023a2b9
refactor: rewrite DxfExporter for ACadSharp
AJ Isaacs
2026-03-07 13:30:23 -05:00
-
d185adecfa
refactor: rewrite DxfImporter for ACadSharp
AJ Isaacs
2026-03-07 13:26:33 -05:00
-
3baa942f4e
refactor: rewrite IO Extensions for ACadSharp
AJ Isaacs
2026-03-07 13:25:04 -05:00
-
263c2d0ae1
feat: convert OpenNest WinForms project to .NET 8 SDK-style
AJ Isaacs
2026-03-07 13:23:47 -05:00
-
a6949a390d
feat: convert OpenNest.Engine to .NET 8 SDK-style project
AJ Isaacs
2026-03-07 13:22:09 -05:00
-
6ce81d99a7
feat: convert OpenNest.Core to .NET 8 SDK-style project
AJ Isaacs
2026-03-07 13:21:16 -05:00