Parametric CAD in Rust

Geometry representation & seriousness for CAD

  • Many argue a triangle-mesh kernel (Manifold) is unsuitable for “serious” CAD and manufacturing:
    • Meshes are lossy approximations; errors accumulate when later features reference earlier ones (e.g., tangency, precise constraints).
    • High-end CAD uses BREP/NURBS surfaces for exact geometry and robust booleans/fillets.
  • Others note meshes are fine as an output format (e.g., for visualization, games, 3D printing prototypes) but poor as an internal representation for precision work.
  • Manifold is praised for robust watertight CSG on meshes, but its accuracy limits are seen as a blocker for pro manufacturing workflows.

What counts as CAD?

  • Debate over “CAD” vs “modeling”:
    • Some reserve “CAD” for design with real units, constraints, and manufacturing intent; “modeling” for visual/game assets.
    • Others point out that common terms (CAD/CAM) and tools blur the line.
  • Several commenters stress that parametric CAD = constraint-based modeling (dimensions, perpendicularity, tangency, etc.), not just code that generates shapes.

Programmatic vs GUI workflows

  • Enthusiasts like code-based CAD for:
    • Version control, types, tests, CI, and reproducible regeneration from parameters.
    • Simple, highly parametric parts (fasteners, gears, boxes).
  • Critics say:
    • This space is already explored by OpenSCAD, libfive, BRL-CAD, etc.
    • For complex or irregular parts, pure code feels like “editing SVG in a text editor” vs using a proper GUI.
    • CSG-style tools struggle with surfacing, fillets, chamfers, and ergonomic geometric constraints.
  • Some want hybrid systems: code as source of truth but a GUI that stays in sync and helps pick faces, edges, and positions.

LLMs and AI agents

  • Several report LLMs work surprisingly well with CSG/OpenSCAD-like APIs:
    • The problem becomes logic/syntax rather than purely spatial reasoning.
    • Text→OpenSCAD or text→FreeCAD macros are already being used.
  • Others doubt AI spatial competence and note that code generation doesn’t fix the limitations of mesh-based geometry or lack of constraints.
  • The project’s explicit “for AI agents” positioning draws both curiosity and skepticism, with some seeing it as over-marketed.

Existing tools and ecosystem

  • Multiple mature or related systems are mentioned:
    • FreeCAD, SolveSpace, Onshape, Fusion 360, SolidWorks, OpenCASCADE (via build123d, pythonocc), libfive, Fidget, Microcad, EngineeringSketchPad, BRL-CAD, Truck, Fornjot.
  • Consensus: commercial parametric CAD remains far ahead for assemblies, manufacturing workflows, constraints, libraries of standard parts, and integration with CAM/metrology.
  • Some users value FOSS tools like OpenSCAD and FreeCAD despite limitations; others prioritize capability over implementation language.

Constraint solving and numerics

  • Several insist that parametric CAD’s hard part is the geometric kernel + constraint solver, not just “types + CSG”:
    • BREP modeling, topological naming, robust booleans, fillets, and constraint satisfaction are highlighted as unsolved or difficult areas.
  • A subthread dives into numerical methods (Jacobians, Newton-based optimization) vs SAT/SMT-style constraint solving and how tricky branching/multiple solutions are for geometry.
  • One commenter criticizes the article’s implication that Rust types or lack of GC meaningfully mitigate floating-point issues; FP error is described as a deep, language-agnostic problem.

Usability and presentation

  • Some praise the idea for web apps and scriptable generation of STLs, and express intent to experiment.
  • Others complain about the site’s dark-mode contrast and washed-out screenshots, calling it hard to read; a few emphasize giving such feedback more politely.
  • There is mild suspicion that parts of the article read like LLM-generated marketing copy, which some find off-putting.

Overall reception

  • Positive: neat Rust-based, OpenSCAD-like tool; good fit for simple, code-heavy, highly parametric parts and AI/automation experiments.
  • Negative: not genuinely “parametric CAD” in the industrial sense; mesh-based, CSG-only, and far from replacing established constraint-based BREP systems.