>>
>> Also I need open source CAD software that handles plumbing.
>
> [something about freecad] and it's OK, but I'm studying BRL CAD again also now.
> It's gotten some work in the last ten years -- Nathan said
> it is usable, so I'm going to try too. It's one of my projects today even.
I've been playing with python-brlcad this past week and while it is usable, it is also broken (crashes but still produces geometry, unless you have a typo then it silently fails) and seems like no one wants to maintain it.
I spent an hour or two writing a small backend using python-brlcad's syntax that instead of interacting with brlcad directly, it emits a script file the brlcad can then load and produce geometry with. It has the advantage of not crashing and giving a user useful error messages if they make a python coding mistake. It isn't complete, but I will add some more primitive shapes today maybe (i've got potentiometry homework to do which is more important for now).
So far other than relative lack of community around brlcad (it seems the don't have people interested in helping beginners, or the active folks forgot what being a beginner is like) I am pretty happy. I still need to learn about how to make models look pretty, but that is just for aesthetics (it would be adding a shader then raytracing your geometry file). So far I've been able to easily export to PNG and STL, and crank up the quality on the STL output with the -r option to the g-stl command.
If I get dissuaded with brlcad, I'm buying the $138 copy of rhino3d which while being Windows only (it supposedly runs in WINE too) allows for commercial projects with the student license. Also rhino released opennurbs which brlcad uses, so it seems like if i should support any closed-source CAD tool, rhino is the 'friendliest' company out there. Rhino also has Python bindings for doing parametric modelling.
Forgot the link
https://github.com/nmz787/python-brlcad-tcl