OpenSCAD of course is not as powerful as other tools, but it has a lot of pros (depending on what you consider a pro):
- Free, unlike other tools such as Fusion or SolidWorks
- Open Source, unlike other tools such as Tinkercad or OnShape
- 100% based on a programming language: compared to others is like comparing plain HTML with HTML + JS
- Parameterizable (as a consequence of being based on a programming language), makes it a lot easier to adjust the model in a second iteration
- Lightweight (it runs ok in my 12 year old desktop)
- It can be used in CLI to generate STL files, makes it easier to automate the model generation
But of course it has a lot of cons:
- It isn't multithreaded, so, it doesn't matter if you have an 32-core CPU or a single core. It also doesn't matter if you have a GPU. So, there's no "best machine" for running it
- You can't compute the size of a shape, unless you know a formula for it. It's specially bad if you are dealing with texts, as you can't predict their shapes unless you're using a monospace font
- It has some bugs in visualization
- Even though it's on active development (you can see that in their Git), its latest release was in 2021
Multi thread support is an experimental feature available on nightly build (and needing to be enabled). The bug tracking it is interesting to read, it has been a long journey... https://github.com/openscad/openscad/issues/391
> But of course it has a lot of cons: - It isn't multithreaded, so, it doesn't matter if you have an 32-core CPU or a single core. It also doesn't matter if you have a GPU.
FWIW these don't have massive benefits for CAD modelling either. Most CAD kernels, even commercial ones, are sort of stubbornly single-threaded.
Sure, multi-threading can really help make the wider application feel more responsive, and a GPU is enormously useful for high-level photorealistic rendering as an end product. But it doesn't bring that much to bear on geometry solving, and the kind of 3D you need for CAD modelling and viewing is pretty old hat in OpenGL terms, I think?
- re-setting the text using METAPOST embedded in LuaLaTeX so as to write out an SVG
- reading the SVG back into OpenPythonSCAD
Bailed when it looked as if the latter step would require using Inkscape to convert to paths (at that point it seemed it would just make more sense to do it all in Inkscape)
- Free, unlike other tools such as Fusion or SolidWorks - Open Source, unlike other tools such as Tinkercad or OnShape - 100% based on a programming language: compared to others is like comparing plain HTML with HTML + JS - Parameterizable (as a consequence of being based on a programming language), makes it a lot easier to adjust the model in a second iteration - Lightweight (it runs ok in my 12 year old desktop) - It can be used in CLI to generate STL files, makes it easier to automate the model generation
But of course it has a lot of cons: - It isn't multithreaded, so, it doesn't matter if you have an 32-core CPU or a single core. It also doesn't matter if you have a GPU. So, there's no "best machine" for running it - You can't compute the size of a shape, unless you know a formula for it. It's specially bad if you are dealing with texts, as you can't predict their shapes unless you're using a monospace font - It has some bugs in visualization - Even though it's on active development (you can see that in their Git), its latest release was in 2021