• Joined on 2020-12-11
aj pushed to master at aj/OpenNest 2026-03-21 15:19:01 -04:00
93a8981d0a feat: add Disable/Enable API to FillStrategyRegistry
00e7866506 feat: add remnant filling to PairFiller for better part density
Compare 2 commits »
aj pushed to master at aj/OpenNest 2026-03-21 14:22:40 -04:00
560105f952 refactor: extract shared convergence loop and reduce parameter counts in StripeFiller
266f8a83e6 docs: update CLAUDE.md with fill goal engines architecture
0b7697e9c0 feat: add VerticalRemnantEngine and HorizontalRemnantEngine
83124eb38d feat: wire IFillComparer through PairFiller and StripeFiller
24beb8ada1 feat: wire IFillComparer through FillHelpers, Linear, and Extents strategies
Compare 16 commits »
aj pushed to master at aj/OpenNest 2026-03-21 00:14:20 -04:00
e9678c73b2 chore: remove remaining stale plan docs
aj pushed to master at aj/OpenNest 2026-03-21 00:13:05 -04:00
4060430757 chore: remove stale superpowers docs and update gitignore
aj pushed to master at aj/OpenNest 2026-03-21 00:10:54 -04:00
de527cd668 feat: add plate utilization to UI status bar
9887cb1aa3 fix: swap BestFitCell dimension display to height x width
cdf8e4e40e refactor: use IDistanceComputer and rename Type to StrategyIndex
4f21fb91a1 refactor: extract IDistanceComputer with CPU and GPU implementations
7f96d632f3 fix: correct NFP polygon computation and inflation direction
Compare 18 commits »
aj pushed to master at aj/OpenNest 2026-03-20 14:43:11 -04:00
2d1f2217e5 fix: guard IsHandleCreated in EditNestForm timer
ae88c34361 fix: prioritize width-fitting candidates in PairFiller strip mode
708d895a04 perf: remove automatic angle sweep in linear fill
884817c5f9 fix: normalize best-fit pairs to landscape and fix viewer size swap
cf1c5fe120 feat: integrate NFP optimization into nest engines and fill UI
Compare 10 commits »
aj pushed to master at aj/OpenNest 2026-03-20 12:14:17 -04:00
2ed02c2dae feat: show selected part bounding box in status bar
aj pushed to master at aj/OpenNest 2026-03-20 00:32:59 -04:00
3756ea255e fix(test): plate size
33ba40e203 refactor: use TrimToCount instead of blind Take(N) in DefaultNestEngine.Fill
6d66636e3d refactor: replace ShrinkFiller shrink loop with TrimToCount
85278bbb75 feat: add ShrinkFiller.TrimToCount for axis-aware edge trimming
f0a3547bd1 docs: add trim-to-count implementation plan
Compare 7 commits »
aj pushed to master at aj/OpenNest 2026-03-19 21:52:17 -04:00
8dc12972f5 feat(ui): add drawing selector, color scheme, and async loading to BestFitViewer
8a0ebf8c18 feat(ui): improve BestFitViewerForm navigation and reduce flicker
c552372f81 fix(core): copy-on-write for shared Program in tiled parts
Compare 3 commits »
aj pushed to master at aj/OpenNest 2026-03-19 18:50:57 -04:00
683cb3c180 docs: fix file format section in CLAUDE.md to match v2 nest format
aj pushed to master at aj/OpenNest 2026-03-19 18:45:00 -04:00
2cb2808c79 docs: add lead item rotation design spec for strip nesting
e969260f3d refactor(engine): introduce PairFillResult and remove FillRemainingStrip
8bfc13d529 fix(engine): move progress reporting from inner fills to ShrinkFiller
ca35945c13 fix(ui): show active or stationary preview parts, not both overlapping
fab2214149 perf(engine): reduce PairFiller work area when count exceeds target
Compare 27 commits »
aj pushed to master at aj/OpenNest 2026-03-18 22:48:41 -04:00
0f953b8701 docs: add two-bucket preview spec and plan
62ec6484c8 fix(ui): PatternTileForm layout, orientation, and dropdown display
0472c12113 refactor(fill): extract constants and EvaluateCandidate in PairFiller
a9a9dc8a0a feat(ui): route progress to stationary/active buckets in MainForm
4fc8f1f6cf feat(ui): two-bucket preview parts in PlateView
Compare 34 commits »
aj pushed to master at aj/OpenNest 2026-03-18 14:57:27 -04:00
442501828a test(io): add DXF roundtrip tests
202f49f368 test(engine): add FillStrategyRegistry and pipeline tests
7bbfe06494 refactor(engine): replace FindBestFill with strategy pipeline
267254dcae feat(engine): add LinearFillStrategy adapter
5668748f37 feat(engine): add ExtentsFillStrategy adapter
Compare 25 commits »
aj pushed to master at aj/OpenNest 2026-03-18 07:58:09 -04:00
6229e5e49d fix(engine): fix FillExtents competition and vertical gap bugs
aj pushed to master at aj/OpenNest 2026-03-18 07:25:47 -04:00
d2eeb23107 refactor(io): migrate nest file extension from .zip to .opnest
Compare 2 commits »
aj pushed to master at aj/OpenNest 2026-03-18 00:54:19 -04:00
ccd230568e feat(engine): integrate FillExtents phase into DefaultNestEngine
7a19b78d31 feat(engine): implement FillExtents horizontal column repetition
31b293324d feat(engine): implement FillExtents iterative height adjustment
7bc9f134f6 feat(engine): add FillExtents scaffold with pair construction and column tiling
6e30e24957 feat(engine): add NestPhase.Extents enum value
Compare 5 commits »
aj pushed to master at aj/OpenNest 2026-03-17 16:21:15 -04:00
42f2475f3c fix: correct Size width/length axis mapping throughout codebase
aj pushed to master at aj/OpenNest 2026-03-17 12:13:48 -04:00
a487d33f52 merge: integrate remote master
bfd740c81e feat(core): add FlangeShape with JSON preset loading
Compare 2 commits »
aj pushed to master at aj/OpenNest 2026-03-17 10:33:47 -04:00
03efeff85a Update README.md
aj pushed to master at aj/OpenNest 2026-03-17 10:28:00 -04:00
d4222db0e8 fix: correct Size width/length ordering and add CLI docs to README