Comment by knollimar
1 month ago
It says "can convert cad latents into a sequence of parametric CAD commands"
Which CAD program? I'm confused
Am I reading this right?
>Most importantly, GenCAD does not merely generate a 3D solid but also the entire CAD program.
It's DeepCAD* output, it looks like, which is a JSON payload that is the sketch / extrude / whatever steps, which is itself based on Onshape output.
Looks like you can go JSON -> step files, but not really in such a way that you can modify any of the operations.
* https://github.com/mightyhorst/DeepCAD
> Which CAD program? I'm confused
Clue here: > Our proposed GenCAD architecture...
So, at this point, it seems like this will work with all CAD programs, since they have yet to encounter any systems that they can't work with. More seriously, my guess would be whatever one is available for free in their lab. Kind of standard operating procedure for academic projects -- do a proof of concept, make a video that avoids known bugs, get a grade, push source to git, graduate. Good ideas come out of that... production code... eh... maybe.
More likely someone ends up in the situation that my kid did, previous graduate student's git repo is stale by 2 versions of C++, and 4 versions of ROS, and neither of the two unit tests still work after porting.
> Which CAD program?
Doesn't matter. CAD models/objects are represented by a sequence of operations on a primitive or sketch. Unlike meshes, that describe the manifested resulting shape of objects in 3D programs like Blender.
So it's about the fact, that their model outputs that hierarchy of operations. The history of development, not just the result.
How does it not matter? Every CAD program is not going to have exactly the same interface and commands. I doubt for example this will for example generate and OpenSCAD text file.
It could be used as pseudo-code for LLMs to produce specific CAD commands?
3 replies →
Nothing stops you from storing a history of mesh operations. This is exactly what modifiers (including geometry nodes) do in Blender today.