Comment by jrflo

8 hours ago

As someone with a background in mechanical engineering, I'd love to be able to automate CAD design as it's quite tedious and only fun like 5% of the time, but I've tried these tools and I really don't think text-to-CAD is the right approach. It usually takes longer for me to come up with an accurate written prompt to fully dimension what I need than to just grab my space mouse and do it.

The real power with these kinds of tools isn’t prompting one shotted models but giving agents the ability to do the full workflow. You give them a description of the part and how it’s supposed to mate with parts from McMaster, Misumi, existing parts libraries, etc and the agent downloads the models, asks any clarifying questions to clear up ambiguities (using available part configurations to provide options when applicable), uses measurement tools to validate the design, provide material details for FEA, read and use PDF drawings/datasheets, and so on.

At least, that’s the theory. The problem is that none of the existing CAD tools (almost all exclusively built on Parasolid) are set up to support agentic workflows. None have proper text based representations, with the possible exception of OnShape’s feature script which is too undocumented and proprietary to be of much use. Even if it was supported, Parasolid isn’t set up to provide the kind of detailed error reporting needed to provide agent feedback.

I’ve been experimenting with this in ECAD by giving agents the ability to edit Altium files directly and it’s been working very well (even with footprint drawings!), but my attempts to do it with MCAD have fallen flat on their face because it’d require developing a geometric kernel from scratch with this workflow in mind.

  • What's your opinion on FreeCAD's scripting abilities [1]? The link [1] claims

    > FreeCAD has been designed so that it can also be used without its user interface, as a command-line application. Almost every object in FreeCAD therefore consists of two parts: an Object, its "geometry" component, and a ViewObject, its "visual" component. When you work in command-line mode, the geometry part is present, but the visual part is disabled.

    [1] https://wiki.freecad.org/Python_scripting_tutorial

  • That still sounds much slower than actually making it yourself. Also you have to take extra time to review the agent's work. The idea of it making subtle errors, hard to find, non-obvious errors is off putting.

Worc.dev might be for you. I might call it Jupyter for engineers. Founder is a Mechanical

I seem to see one or two of these CAD projects a week. It’s cool, but the real value is design automation specific to my problem domain. Modeling isn’t usually that hard if you’re comfortable with the software. It would probably take as long to just think about what you need. I find more difficulty in maintaining coherence in complex projects that doesn’t involve me forcing a whole team to go all in on some stupid PaaS. A tip for founders: if you’re adding steps to the work process, you’re not helping.

Could be camera and canvas to CAD - be more apt for your use case? Something akin to minority report + AI?

Asking seriously.

Context: Have some overlapping interest in the space because I am prototyping a camera based edge device that allows for AR/AI interactions.

  • The problem is more so that I think I'd need a brain-machine interface to get what I want. If I'm brainstorming a way to solve a problem mechanically, some if it is drawing but honestly a lot of it is just imagining it in my head. From there I go straight from imagination or sketches to CAD, which is why text-to-CAD or drawing-to-CAD generally doesn't work, the act of making the CAD file is how you learn and figure out how to solve the problem better once you see it all in 3D space

  • We have a little experimental tldraw style canvas integrated in the extension we've been playing with!