Commit Graph

  • 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