As it happens I wrote about this almost exactly a year ago
I recently started messing around with OpenSCAD too. I found these boxes that are great for storing the tiles for various 18xx railroad boardgames: https://www.printables.com/model/287297-parametric-18xx-tile...
Cool thing is that you can easily print them in whichever size you like, and the sizes in the supplied files are rather large, so I tried some smaller sizes, and discovered some details weren't actually centered properly, so I dove into the code, tweaking some bits here and there until I got it centered properly.
Then my dad asked me to print boxes for a game that had slightly larger tiles, so I needed to tweak the sizes, the thickness, and made everything just a bit more configurable.
I've got another idea I haven't tried yet: print the shape of the track on the tile on the spot its meant for. That's a whole new feature and not merely tweaking an existing one, so maybe it's time to finally learn how this format actually works.
Although I did see in the code that you create shapes through intersections and substractions with other shapes. And that's where I got stuck. Maybe it's time to pick it up again. It's a fun way of building shapes.
And not just for me; now I might also be able to get my kids to design stuff to print.
If/when your kids outgrow it, there's also:
I went from OpenSCAD -> cadquery/build123d -> Zoo/KCL
It still is early days, and it needs some more helper functions but it's really nice having two-way capabilities (not just code -> model, but also the reverse).
Of course having Text-to-model as a first class citizen is also nice.
I know the ecosystem not-at-all (sum total knowledge of the CAD ecosystem is that my kids got a Bambu printer for Hanukkah) but it feels to me that current LLMs should be able to generate specs for something like https://partcad.readthedocs.io/en/latest/, which can then be sliced etc.
Curious to know what others think? I come at this from the position of zero interest in developing the fine design skills needed to master but wanting to be able to build and tweak basic functional designs.
As many correctly pointed out, STL & DXF are not considered professional file-formats anymore by some people. Some fabricators will not respond to quote requests, as without a Step file they are literately self-confessed useless clowns without Onshape/Fusion true solids handling the ugly math.
It is partially a unofficial standards issue, but customers without Step files may have to look around for fabricators. YMMV =3
STLs have an obvious quality problem with geometry since they have an internal resolution that cannot be changed. The amount of people printing STL artifacts into their plastic parts is kind of ridiculous, honestly speaking.
The other problem is that CNC machines turn the geometry encoded by STEP files into toolpaths. This is basically impossible with meshes unless you want to mill the STL artifacts right into your part with a generic tool.
In subtractive manufacturing the manufacturer has to choose a selection of tools and assign each tool to the relevant features of the part. If you want holes you need a drill, if you want threads you need a tap, if you want fillets or chamfers, there is a tool for that and so on.
Your STL file is the equivalent of a JPEG here. It has already lost the critical information that is needed to manufacture your part.
The fact many fabs avoid DXF is unit and format version ambiguity. However, the other reason is predicting bend deduction is often wishful thinking. Most high end CAD packages are fairly good at handling that mess for people, but often still have issues figuring out how features will deform.
CAD can also start to fail on large complex geometries, as even a simple single combo-tool g-code macro to drill, helical mill, and chamfer threaded-holes in a plate often is done by the time CAD/CAM path-planners finish/crash.
Best of luck =3
I'm aware of Onshape having a git-like workflow as well, wonder how the two compare! A fully cloud-based suite would probably not work well for an open source project.
I personally do better with CAD software such as fusion or freecad since my mind doesn't work in the code realm since I have more of a hardware mindset. Translating the picture in my head to code is more difficult than drawing it using the standard CAD set of tools.
My opinion on OpenSCAD is that it is a very useful piece of software which many have used to make some very interesting things. If you have a background in code I recommend giving it a go. I largely view it as "the coder's CAD".
That's not necessarily a bad thing; there's a clientele for it, especially here on HN. But as a mechanical engineer who's used quite a few industry standard CAD systems, I'm sorry to say I wouldn't touch it with a ten foot pole.
Funnily, just a few days ago I tried FreeCAD, and found it to be better than I had expected.
Freecad 1.0 is a gamechanger IMHO. It so far has suited all my needs as well as being significantly easier to use than the pre 1.0 versions.
There is no explicit iteration, so if you want to do flexible spacing for any reason, like distribute a feature evenly along a dynamic length, you need to use recursion.
Also with OpenSCAD, you can feed the documentation to your favorite LLM and ask it for a starter design of whatever you are building. (Or you can skip the documentation; it is in the trading data after all.) Maybe in the future that SVG Pelican on a bike test will be a 3D model in OpenSCAD.
https://github.com/rahulgarg123/openscad-mcp
It’s still strictly worse than what these models are capable of for general-purpose coding, but for simple tasks where precision isn't the bottleneck, it's surprisingly decent.The "aha" moment for me was an image-to-object workflow: found a geometric design on the web --> generated OpenSCAD to match the image --> 3D printed it. Going from seeing a JPEG to holding the physical object in a few hours.