| OpenSCAD isn't perfect, but it's so plainly obvious that code-based CAD is a better idea to me that it sort of bothers me that it's not the default. Being able to utilize actual code to do anything allows you to use any kind of logic to create your models. I'm sure that someone could write something that would convert KiCAD stuff into a Fusion 360 model, but since SCAD is "just text", it is categorically easier to work with. I was never able to really do anything productive with FreeCAD or CorelCAD, but I've been able to make tons of 3D prints from SCAD designs. The model just jives with my brain a bit better. If anyone here likes SCAD, I highly recommend checking out Bowler Studio as well [1]. It's more robotics-focused than OpenSCAD, but free and open source, has its own "JavaCAD" DSL that lets you write in Java or Groovy or Clojure or Kotlin or Python to do CSG, and you can tack on a physics engine to test things out. The interface is still pretty clunky but it's definitely pretty cool software that I think is worth playing with. [1] https://commonwealthrobotics.com/ |
I'm a software developer, but I'm also a 3D print designer and a woodworker. OpenSCAD is really unfriendly once you want to get past "I have a box and the box needs to connect to another box"; cadquery and especially build123d are more promising for sure, but the environment and the affordances are clumsy compared to "draw a sketch with a mouse and extrude a thing" in Fusion. Maybe if my alternative was FreeCAD (thankfully it's not) code-based CAD would feel like a better alternative, but it's not, and like--if I have to contort myself to make a fillet work, I would simply not bother. And if I have to sit there, squint, and change a variable and wait for a recompute, rather than dragging the thing to where I want it, I'm also probably not gonna bother with that, either. I tried; it doesn't work for me, and sweeping universal statements about this stuff are Pretty Weird.
On the other hand, having access to a kernel like Fusion's, plus their Python scripting environment, is pretty nice for me, and I enjoy building tools to manipulate that. But those tools don't take center stage; the visuals and the chain of features do that.