If you want to do code-CAD for anything substantial and you haven't yet developed a significant dependency on OpenSCAD, do your brain a favour and spend at least some time with CadQuery, Build123D or (if you prefer JS to Python) Replicad. As impressive as NopSCADlib and BOSL2 are (and OMG they are, when you consider what they have to work with!) , OpenSCAD is a one-way, declarative CSG environment that essentially on…
That is... a weird post to be making from a throwaway account. Do you work for Big OpenSCAD or something? :) But that said, this is all correct. OpenSCAD is actually an extremely limited environment and much more expressive tools exist in the same "code-based 3D modelling" space.
OpenSCAD: The Programmer's Solid 3D CAD Modeller
21–30 of 191 posts
Re: OpenSCAD: The Programmer's Solid 3D CAD Modeller
#22If you want to do code-CAD for anything substantial and you haven't yet developed a significant dependency on OpenSCAD, do your brain a favour and spend at least some time with CadQuery, Build123D or (if you prefer JS to Python) Replicad. As impressive as NopSCADlib and BOSL2 are (and OMG they are, when you consider what they have to work with!) , OpenSCAD is a one-way, declarative CSG environment that essentially on…
That is... a weird post to be making from a throwaway account. Do you work for Big OpenSCAD or something? :) But that said, this is all correct. OpenSCAD is actually an extremely limited environment and much more expressive tools exist in the same "code-based 3D modelling" space.
OpenSCAD also has a lower barrier to entry in that the programming language and environment is familiar without needing a lot of training or context.
Re: OpenSCAD: The Programmer's Solid 3D CAD Modeller
#23the "manifold" renderer makes possible some stunts that couldn't be done before. for example, i made this "usa counties" outline from a png : https://www.printables.com/model/895723-usa-counties its under the "features" preference, doesn't work for everything yet, but is worth investigating if you haven't.
Re: OpenSCAD: The Programmer's Solid 3D CAD Modeller
#24If you want to do code-CAD for anything substantial and you haven't yet developed a significant dependency on OpenSCAD, do your brain a favour and spend at least some time with CadQuery, Build123D or (if you prefer JS to Python) Replicad. As impressive as NopSCADlib and BOSL2 are (and OMG they are, when you consider what they have to work with!) , OpenSCAD is a one-way, declarative CSG environment that essentially on…
That is... a weird post to be making from a throwaway account. Do you work for Big OpenSCAD or something? :) But that said, this is all correct. OpenSCAD is actually an extremely limited environment and much more expressive tools exist in the same "code-based 3D modelling" space.
I saw this thread only because it's clearly a followup to the FreeCAD discussion the other day that I have contributed to.
--
People do get oddly grumpy when you criticise OpenSCAD; there is an element of the "I can do maths and refuse to believe CAD needs to be any more than this" militancy about it.
I absolutely don't hate it -- OpenSCAD's mere existence is what unlocked my ability to even reason in 3D, actually. But that quasi-militant tendency is holding back a fascinating, liberating software field.
Re: OpenSCAD: The Programmer's Solid 3D CAD Modeller
#25Earlier quoted context omitted.
That is... a weird post to be making from a throwaway account. Do you work for Big OpenSCAD or something? :) But that said, this is all correct. OpenSCAD is actually an extremely limited environment and much more expressive tools exist in the same "code-based 3D modelling" space.
The operative word being "open". Much more expressive tools exist but the condition on libre/free/open reduces the size of that list substantially. OpenSCAD also has a lower barrier to entry in that the programming language and environment is familiar without needing a lot of training or context.
(With the addition of developer openness: directly meshing with Python or JS libraries)
Re: OpenSCAD: The Programmer's Solid 3D CAD Modeller
#26Earlier quoted context omitted.
That is... a weird post to be making from a throwaway account. Do you work for Big OpenSCAD or something? :) But that said, this is all correct. OpenSCAD is actually an extremely limited environment and much more expressive tools exist in the same "code-based 3D modelling" space.
This is a totally reasonable question! I am using a throwaway to limit my HN usage, to be honest. I wish I had a better way to manage my addictive social media behaviour than torching accounts after a few discussions. But I do not. I saw this thread only because it's clearly a followup to the FreeCAD discussion the other day that I have contributed to. -- People do get oddly grumpy when you criticise OpenSCAD; there…
Re: OpenSCAD: The Programmer's Solid 3D CAD Modeller
#27Earlier quoted context omitted.
This is a totally reasonable question! I am using a throwaway to limit my HN usage, to be honest. I wish I had a better way to manage my addictive social media behaviour than torching accounts after a few discussions. But I do not. I saw this thread only because it's clearly a followup to the FreeCAD discussion the other day that I have contributed to. -- People do get oddly grumpy when you criticise OpenSCAD; there…
This viewpoint resonates for me. OpenSCAD is a useful tool for hacking together 3D parts quickly, but an excellent tool for exercising the shape rotating parts of your brain.
Re: OpenSCAD: The Programmer's Solid 3D CAD Modeller
#28Usually, I'll hand draw what I need, then work out the equations, then build the models. No need to figure out what certain icons mean or to learn accelerator commands. I've built some fairly intricate designs with OpenSCAD. CSG is quite intuitive.
Re: OpenSCAD: The Programmer's Solid 3D CAD Modeller
#29If you want to do code-CAD for anything substantial and you haven't yet developed a significant dependency on OpenSCAD, do your brain a favour and spend at least some time with CadQuery, Build123D or (if you prefer JS to Python) Replicad. As impressive as NopSCADlib and BOSL2 are (and OMG they are, when you consider what they have to work with!) , OpenSCAD is a one-way, declarative CSG environment that essentially on…
The learning curve required a paradigm shifted in abstraction. That was too much.
I just want OpenSCAD simplicity, but with modern programming language syntax.
I ended up settling with PythonScad. I was able to hit the ground running and leverage what I already know about python within a day.
It's new, but the author is extremely active and collaborative on github (https://github.com/gsohler/openscad) and reddit (https://www.reddit.com/r/pythonscad/). The author actually pushed for merging this into OpenSCAD mainline, but got gatekeeped out since OpenSCAD maintainers believed Python went against OpenSCAD's mantra of being 'secure'.
I recommend PythonSCAD to anyone that liked OpenSCAD simplicity in abstraction but feel handicapped by the lack of expressiveness.
Re: OpenSCAD: The Programmer's Solid 3D CAD Modeller
#30If you find yourself doing a lot of OpenSCAD, you might want to check out what you're missing from more traditional CAD systems: A few examples of simple fillets in SOLIDWORKS: https://www.youtube.com/watch?v=f78gblpqxHc Higher level continuity: https://www.youtube.com/watch?v=h5QN40d02cw A good example of nontrivial surfacing: https://www.youtube.com/watch?v=cujS1icUTtg (the entire channel is a goldmine of surfacing…
SolidWorks is subscription based, so your $50 buys access this year and probably you won’t want to use the model again next year, right?
OpenSCAD is free software, and that matters.
Hopefully readers know it’s decades behind and very rough to use. Your example of “superpower modern CAD” could have been a whole lot simpler... probably some simple 2D geometric construction would be enough to show a big gap.
SolidWorks is locked to Windows - out in the real world that might be 95% of the users but here it’s probably 50%.
To finish my defense of OpenSCAD: there’s a place and an upside to all-text source and coding parameterized with traditional variables that you can change in your editor and recompile just like any other code. No GUI is only 80% bad.