FOSSPicks
Computer-aided design
OpenSCAD
When most of us think of a CAD application for designing real physical things in two and three dimensions, we think of tools that are a little like Blender but tuned for mechanical engineering. They might include dragging and dropping objects with mathematical names, such as a torus, cylinder, sphere, and cube, dropped onto a rigidly defined grid where you can then play with their layout using properties to create a more complex object. This is the way FreeCAD works, for example, but it's not the way OpenSCAD works. OpenSCAD does the same thing, only the drag-and-drop part is replaced by a simple scripting language. This sounds intimidating at first, as if OpenSCAD could be the design equivalent of Mathematica, but it's not. The language is simple, easy to learn, and powerful enough to let you easily create complex objects. It's actually better than drag and drop in many ways.
When adding each object with code, such as cylinder(r1=33,r2=33,h=2);
to create a cylinder with a radius of 33 and a height of 2, you immediately see what it looks like in the 3D view. You can then group together these functions to create a combined union structure that you could then perhaps cut from a "difference" structure. When you have objects in these structures, it becomes very easy to move them with a single translate function, or copy and paste them, in ways that just aren't possible with simple point and click. This extends to making small changes when something doesn't fit, such as increasing a radius by a single value, or moving an object to the side, which is often needed when creating models you're going to print. The next step is simply saving the model and either loading it into Blender to make more bespoke edits, or slicing the model to send to your printer.
Project Website
3D printing tool
Buy this article as PDF
(incl. VAT)