Remix.run Logo
alnwlsn 6 hours ago

I think most GUI CADs have some kind of API like this. In FreeCAD it's Python. In Solidworks, it's VBA or C#. I don't think any are particularly well documented or supported by tutorials.

unholiness 4 hours ago | parent | next [-]

Solidworks has VBA macros, which (on top of being poorly documented and unstable) subvert to the whole benefit of parametric CAD. Once you're creating features with a macro, you naturally want to edit them, but you also naturally want to rerun the macro itself to create them differently. It's like editing generated code and it's not a viable long-term setup.

FeatureScript is a different beast. It actually runs as part of regeneration in Onshape. Standard features (extrude, loft...) are also defined in FeatureScript, so your custom features are the same first-class citizens with a interactive GUIs and stable updates to upstream changes. You can freely mix interactive CAD and custom code by adding standard features and custom features.

fainpul 2 hours ago | parent [-]

> runs as part of regeneration

You can do that in FreeCAD. Performance is horribly slow in my experience, but maybe I'm doing something wrong.

https://wiki.freecad.org/Scripted_objects

https://wiki.freecad.org/Create_a_FeaturePython_object_part_...

injidup 5 hours ago | parent | prev [-]

https://cad.onshape.com/FsDoc/