30981fa066
fix(brain): enforce r_f=6mm minimum, reject pockets that can't fit fillets
...
- Default r_f raised from 1.5mm to 6mm (machining constraint)
- Default min_pocket_radius raised to 6mm
- Pockets that can't fit r_f at any corner (within 80% tolerance) are
skipped entirely — left solid for more stiffness in tight areas
- Result: 26 pockets (was 432), 187 NX entities (was 13,061)
- Min fillet radius: 4.88mm, all >= 4.8mm (80% of 6mm)
- Mass: 4,601g (was 3,480g — more solid = heavier but manufacturable)
2026-02-16 20:42:46 +00:00
da9b579bcf
refactor(brain): structured pocket output — 3 lines + 3 arcs per pocket
...
Replaced Shapely buffer-based fillet (59-pt polylines) with exact geometric
fillet computation. Each pocket now outputs:
- 3 straight edges (line start/end pairs)
- 3 fillet arcs (center, radius, tangent points, angles)
NX import updated to use SketchLineBuilder + SketchArcBuilder (3-point).
Total NX entities: ~2,600 (was ~13,000). Includes arc fallback to 2-line
segments if SketchArcBuilder fails.
Also outputs circular hole definitions for future NX circle creation.
2026-02-16 20:17:49 +00:00
c93239c9c6
fix: strip closing duplicate points in triangulation (segfault fix), batch line creation for NX speed, 6mm endmill params
2026-02-16 19:29:41 +00:00
ef8801a5cd
test: add sandbox1 rib profile output for import testing
2026-02-16 18:49:21 +00:00
f4cfc9b1b7
feat(adaptive-isogrid): import_profile.py - push rib profile as NX sketch, sandbox1 brain input test file
2026-02-16 18:45:24 +00:00
e4651c9a40
Adaptive isogrid: min triangle area filtering and circular hole bosses
2026-02-16 01:11:53 +00:00
9d4c37234a
Add standalone brain CLI, test geometries, and robustness sweep outputs
2026-02-16 00:12:12 +00:00
4bec4063a5
feat: add adaptive isogrid tool — project foundations
...
- Python Brain: density field, constrained Delaunay triangulation,
pocket profiles, profile assembly, validation modules
- NX Hands: skeleton scripts for geometry extraction, AFEM setup,
per-iteration solve (require NX environment to develop)
- Atomizer integration: 15-param space definition, objective function
- Technical spec, README, sample test geometry, requirements.txt
- Architecture: Python Brain + NX Hands + Atomizer Manager
2026-02-16 00:01:35 +00:00