6 ms·
I've been using OpenSCAD for personal projects for a couple of months, generally preparing models for 3D FDM printing. I'm a mechanical engineer by profession a
by rm445 6y ago
I've been using OpenSCAD for personal projects for a couple of months, generally preparing models for 3D FDM printing. I'm a mechanical engineer by profession and a certified Solidworks professional. I'd estimate that designing in OpenSCAD - as in, modelling something up and iterating on the design as my understanding of the application develops and prototypes are trialled - takes me four to fives times as long as using commercial parametric 3D CAD that I'm already familiar with.
That's not a damning critique, but it is something I'd advise a friend or colleague who had a project to get on with. I'm still highly positive about OpenSCAD, because of its openness, its versatility, and the potential for using great programmers' tools (library code, scripting languages and version control) to make it much more powerful.
I've been working with vanilla OpenSCAD, downloading a few functions from people, and building little libraries of helper functions. Getting more familiar all along, figuring out the right way to do things. Some people have got a little further with creating scaffolding for mechanical design - projects like MCAD and OMDL. Of course, OpenSCAD is very versatile and people have many other uses for it. But I think when someone comes along and creates some really great libraries and frameworks on top of OpenSCAD - like LaTeX on top of TeX or Jupyter on top of iPython on top of Python - it would be suitable for any kind of design, competitive with the best GUI-based packages.
- emilecantin 6y agoI can appreciate that point of view given your background. However, as a programmer who dabbles in 3d printing / 2.5d CNC routing, I have the exact opposite experience. I spend a lot of time in Fusion 360 just battling the software because for some dumb reason it decided to align the top of my part with the bottom of the other when I actually wanted everything in the same plane. OpenSCAD just makes a lot more sense to my programmer brain, and I'm often much more productive in it. However, beyond the obvious graphical VS text interface, there's another significant difference between the two: OpenSCAD's base concept is making operations (add / subtract) on solid primitives (prisms, cylinders, spheres) whereas Fusion360 is based on 2d sketches that you extrude. That latter model works very well with a CNC router & plywood.
- ajb 6y agoFunny thing is, also as a programmer, I find openSCAD annoying. I really want object-oriented objects. I want to be able to declare a cube and then refer to its corners. I want to be able to make a cylinder from point A to point B. Instead, everything is contextual and implicit, and there's no other way of doing anything. I'm sure you can get used to it eventually. But I think we could do better in terms of 'cad designed by programmers'
- kevin_thibedeau 6y agoThe same could be said of SQL or any other 4GL.
- derekp7 6y agoI really like the idea of openSCAD, in fact I use it exclusively for 3D modeling. My biggest problem with it is the language implementation. Things like: x = 5; cylinder(d = x, h=10); x = 20; Well, this will make a cylinder with a diameter of 20 instead of the expected value of 5. Yes, I'm familiar with various programming models and the idea of immutable variables. But when you have a language that looks and feels like something else familiar, this behavior can throw you for a loop.
- uranium 6y agoThis. When I was using OpenSCAD about 10 years ago, I immediately found it very intuitive and easy to use for simple things. But for anything complex, I ran into this sort of thing constantly. At the time the documentation of the language mentioned such issues, but failed to specify the language completely, leaving lots of ambiguous cases that I just had to try out to see what would happen. The behavior really seemed to be something that just agglomerated as the author had added features, rather than something planned with a design philosophy behind it. I found it hard to work around and plan more complex shapes as a result. I haven't been back to look at the docs in ages; perhaps it's better-specified now. I ended up doing my more complex stuff in an OpenSCAD clone I hacked together on top of https://evanw.github.io/csg.js/ https://evanw.github.io/csg.js/ until I ran into problems with non-manifold surfaces. Simple problems I could repair, but that library's really only intended for visualizations, not generating STLs for printing, so eventually I went beyond what I could fix. So then I wrote an implicit surface renderer [also in JS] using https://github.com/mikolalysenko/surface-nets https://github.com/mikolalysenko/surface-nets, and that was less-precise, and a bit limited [my code, not theirs], but got the job done. A short while later, I found implicitcad.org, and saw what I could have written, had I had just one more epiphany. I've never used it, but I like the philosophy behind it, and that may be what I try when I get back to 3D printing.
- sokoloff 6y agoI used OpenSCAD almost exclusively for 5 years (Mech E by degree, but computer programmer by profession) and switched to Fusion360 in the last 3 months. For me, within 6 hours Fusion was night and day more productive (even after a lot of experience in OpenSCAD). As one example, it was so much more productive that I can think of only 2 OpenSCAD designs in 5 years where I bothered to add fillets for strength and appearance. It's just too damn much trouble. In Fusion360, I'll often have a simple part whipped up in 15 minutes and then spend 1 extra minute adding fillets and chamfers as needed. In OpenSCAD, that same part would likely be 30 minutes for the base part and the fillets another 15-30 minutes (with fairly poor performance once added).
- panpanna 6y agoMy experience with Fusion for 3d printing is basically: looks great, is fast but my models fail to print correctly for some reason. Can't wait for freecad to get a useable UI, because it is works fairly well for printing despite its UX shortcomings
- sokoloff 6y agoMy email's in my profile. If you have some examples of what didn't work well for you, I'm happy to have a look and see if I can get you unstuck and headed to success. If it's a calibration issue on the printer (parts print, but are slightly the wrong size), I can recommend Teaching Tech's intro here and here: https://teachingtechyt.github.io/calibration.html https://teachingtechyt.github.io/calibration.html https://www.youtube.com/watch?v=rp3r921DBGI https://www.youtube.com/watch?v=rp3r921DBGI If it's in the Fusion->STL stage, I might be able to be of more help. If it's in the STL->physical part stage, the above or other 3DP videos might help.
- panpanna 6y agoI wiped the computer used for this whole ago, but the models are probably on the cloud somewhere. My problem was that the produced STL had some errors that were hard to see but definitely showed up in prints, for example a wall section could be missing.