The torus primitive was creating "donut" shapes that looked unrealistic.
Fixed 7 parts by replacing torus with layered cylinders:
- flywheel: Now shows proper disc with bolt holes, no ring gear torus
- first-gear through fifth-gear: Tiered cylinders with splined hub
- release-bearing: Proper cylindrical bearing stack
Added torus detection to validate-geometry.ts:
- DONUT SHAPE: Warns when torus tubeR > 15% of body radius
- DOMINANT TORUS: Warns when torus radius close to body size
All 16 gearbox parts now pass validation with scores 84-162.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Detects problematic patterns that produce visually poor results:
- First shape is subtraction/intersection (nothing to operate on)
- BREEZE BLOCK: Single base with only subtractions (invisible internal cuts)
- NO EXTERNAL FEATURES: All unions centered (looks like basic shape)
- Subtraction encompasses base shape (may hollow out completely)
- Duplicate shapes (likely copy-paste error)
- Subtraction outside base bounds (has no effect)
- Very thin shapes (may be invisible)
- Zero/negative dimensions
Smart exceptions:
- Shaft bores (long thin cylinders) don't trigger "larger than base" warning
Added --strict mode to treat warnings as errors.
Updated validate-assembly.sh to show warning count.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Added detailed clutch disc geometry:
- Dual-layer friction ring surfaces
- 8 damper spring cylinders arranged radially
- 4 spring retainer plates
- Splined hub with cross-pattern cutout
- Hub retention flange
Also fixed validate-geometry.ts to accept #RGB shorthand colors.
All 16 gearbox parts now pass complexity scoring (min 79, max 162).
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
CLI tools for fast iteration without browser:
- validate-geometry.ts: JSON schema validation
- geometry-stats.ts: Metrics and warnings (breeze block detection)
- complexity-score.ts: Visual interest scoring with breakdown
- ascii-preview.ts: Terminal-based top-down/front view
- validate-assembly.sh: Batch validate all parts
Updated 3D_GEOMETRY_AUTHORING_GUIDE.md with headless workflow section.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>