8 comments

[ 6.4 ms ] story [ 35.7 ms ] thread
Nice! I love code-based CAD. Eventually I want to build a tool which uses a hybrid approach: a GUI for things that are hard/tedious to express in code like complicated 2D sketches, with code as the "persistence" layer so at the end you still just have code to maintain, no binary files or piles of XML.

One of the hard parts though will be synchronizing changes between UI and code. I suppose it could start as a unidirectional flow from UI to code... if you were to generate a sketch with something like a loop, it would be hard to recover that code structure from just a bunch of resulting points and line segments.

But anyway, I'm happy to see more code-based CAD approaches pop up. I think there's still a lot to explore in this space.

FreeCAD apparently supports OpenSCAD as well as build123d, which looks like a very nice DSL for geometry. Still no 2 way binding tho, unless you count the variable editor in the GUI.
This project uses some very interesting Swift techniques. Is this the new C++ interop? Looks very clean.
I'd like to see the code for this more complex object: https://github.com/tomasf/Cadova/wiki
This is the base part of my little delta printer. This was an experimental project and not something I planned to publish. The code is unfinished, unorganized and originally written for an older version of Cadova. I’ve patched it to work with the latest release, but otherwise it’s largely unchanged. Posting it as-is for reference: https://github.com/tomasf/m3
Regarding the geometry engine, the README says:

Cadova uses Manifold-Swift, Apus and ThreeMF.

First I hear of those. Curious to see how those compare to things like OpenCascade.