lucasoshiro 2 days ago

I'm really happy to see OpenSCAD stuff here in HN. Of course it has some downsides (not being able to measure an object is the main one...), but it is an underrated tool.

I'm using it as my main 3D modeling tool for three years, and I even gave I course about it last year. No regrets, and I never felt that I needed to learn Fusion or similar

  • GuB-42 a day ago

    For me, the big problem with OpenSCAD and the reason I let go of it quickly is the lack of constraint-based modeling. For example, if I want to design a cup and I want my handle to have a 30mm round hole that is tangent to the walls of the cup, I want to be able to adjust the thickness of the handle and the size and shape of the cup while keeping these properties. And I don't what do do the maths myself if I can avoid it.

    OpenSCAD does very little to help me with these maths as it doesn't have a solver. Not to my knowledge at least.

    • zokier a day ago

      Other big problem is one demonstrated also by the article; openscad is not great at any rounded shapes because it is mostly polygon based. So even if you write out the maths explicitly they might end up being wrong because of the difference between true round and the polygonal approximation

    • WillAdams a day ago

      Basically one has to write the solver oneself --- see comment elsethread about how this is OpenSCAD's weakness --- what one can make in it is bounded by one's mathematical fluency.

  • WillAdams a day ago

    OpenSCAD recently got a Measure tool:

    https://www.youtube.com/watch?v=Q_AEHI2o-6Q

    OpenSCAD's strength --- that it makes it easy to create 3D designs which are easily represented mathematically using cubes, spheres, cylinders, cones, and assemblies and distortions thereof is also its weakness --- what one can do in OpenSCAD is strongly bounded by one's fluency in mathematics/geometry/trigonometry (says the guy who is stuck on conic sections in a particular project and needs a solution which is faster to calculate).

    Still waiting for the Python-enabled version to make it big:

    https://pythonscad.org/

    • kiba a day ago

      Being able to do object oriented programming is going to make reasoning about geometrical objects much easier.

      I like the measuring tool but I prefer doing something more permanent like labeling it.

    • lucasoshiro a day ago

      > OpenSCAD recently got a Measure tool

      Sadly, in the GUI, it would be really nice if I could do something like:

      module myObj() { import("bla.stl"); }

      myObjDimensions = dimensions(myObj);

      translate([0, 0, myObjDimensions.z]) cube();

      But this couldn't even be a valid SCAD code...

      • WillAdams 10 hours ago

        I am sure that a patch which implemented that would be gladly accepted.

  • Joel_Mckay 2 days ago

    Depends on the use-case, but openscad can be useful for simple parametric designs prone to deformation during manufacturing (we use it for printing off-axis parabolas.)

    FreeCAD supports the openscad language plugin, and can generate proper solids. Many classic CAD/CAM users often see the parametric design workflow as baffling... not an entirely undeserved reputation.

    Freecad tutorials:

    https://www.youtube.com/@4axisprinting/videos

    Blender geometry nodes tutorials:

    https://www.youtube.com/@Entagma/videos

    Best of luck, =3

jgoewert a day ago

This came up at pretty much the perfect time for me to try out.

I started learning OpenSCAD over the weekend to try out an idea to 3d print a 70" dome to make my own Star Wars Battlepod after seeing that video on making the replica Space War cabinet.

One guy got an acrylic forming shop to make him one about 10 years ago for $700, but I was calculating in how much it would cost to 3d print and stich a dome screen together. My test sample that I started used a sort of ribbed dome that I was trying to figure out how to split the file and bolt it together - https://www.reddit.com/r/openscad/comments/1i922ed/trying_to...

I started playing around with thickness because at 1/2 inch, it was looking like about $200 in filament. But if I can reduce the thickness because of having the jigsaw edging to make it easier to align, it might get cheaper.

Currently tried running this in Windows and it isn't happy. I'll make a Linux VM and give it a go again.

>>WARNING: Too many unnamed arguments supplied in file in.scad, line 6 Geometries in cache: 20 Geometry cache size in bytes: 3802608 CGAL Polyhedrons in cache: 182 CGAL cache size in bytes: 0 Total rendering time: 0:00:01.063 Top level object is a 3D object (manifold): Status: NoError Genus: 1 Vertices: 39078 Facets: 78156 Num. beds: 0

almog 2 days ago

> "The strength comes from the tightening/wedging effect when pulling the join apart. If the dovetail is tapered, the join can also tighten when it aligns too – this is highly desirable for gluing, as it means the glue will not be scraped away."

While true, dovetail and other traditional woodworking joints borrow their strength from using the wood grain to support the joint.

I don't know a lot about 3D printing but I'm guessing a lot of the assumptions about woodworking joints strength aren't applicable.

  • wongarsu a day ago

    Grain direction in woodworking has many similarities to layer lines in 3d printing. That makes techniques from woodworking often more directly transferable than techniques from CNC machined, cast, or injection molded parts.

    • almog a day ago

      How so? What kind of filament preserves a multiple fibers like structure that resembles wood grain? Sincerely asking since I couldn't find any source for that

      • wongarsu a day ago

        Each continuous strand of filament is kind of like a wood fiber, in the sense that the strand is much stronger than the connection to the other strands.

        Of course 3d printers lay these strands in a 2d plane (and stack layers of these 2d planes), whereas trees grow in more-or-less one dimension. So wood has one strong direction and two weak ones, while 3d prints have two strong directions and one weak direction. And obviously 3d printed strands are layed out by boring and often naive algorithms that lack any of the beauty of naturally grown wood. Then again, for structural applications you also want the most bland and boring wood patterns possible.

        • almog a day ago

          That much I'm aware of, but as I mentioned in previous comments, with wood strength is high in the direction of the grain but weak across the grain, plenty of academic studies confirm that (and it takes little to verify it empirically).

          With 3D printing, despite the analogy, I couldn't find any sources for strength along/across the "grain" so i'm not sure how accurate that analogy really is.

          • wongarsu a day ago

            With 3d prints this is usually framed as layer adhesion. Within one layer (so in the x-y plane) you are basically "along the grain" since the strands form loops and other 2d shapes within the layer. Between layers (== in z direction) you only have the adhesion between different strands holding the layers together, which is equivalent to going across the grain in wood.

            CNC kitchen on youtube does a lot of strength and impact testing, e.g. [1] (results at 9:55). "Across the grain" you have half the strength in PLA (and similar numbers in all filament types except TPU). Or if you prefer manufacturer numbers, [2] is the datasheet for a random PLA filament. It also shows worse numbers in every metric in the Z direction (across the grain).

            The difference isn't as severe as in wood, but it's big enough that it is something you have to consider in structural parts

            [1] https://youtu.be/dOzVuoBP9gY?t=535

            [2] https://polymaker.com/wp-content/uploads/lana-downloads/Poly...

            • almog 10 hours ago

              Thank you!

      • WillAdams a day ago

        layer lines.

        That said, if the part is small, and one can afford to print w/ 100% infill just put it in a tray of salt and bake to re-melt/re-flow to make a (more) solid part.

        https://x3d.com.au/blogs/tips-and-tricks/pla-baking-the-secr...

  • bb88 2 days ago

    Interesting. I didn't know that.

    But I do know about 3d printering. :)

    Strength in printing is usually a function of the mass used to print with. So more plastic used at the boundary layers will mean stronger joints.

    Eg. A PET plastic soda bottle (pepsi, coke) will flex in the body where it's thin, but not on the threads on the top of the bottle. In fact, those are pretty strong, because they need to hold on a cap which keeps the carbonation in.

    A good question to ask is if the dovetail joint in plastic as strong as wood? The answer may likely be no, but it may not also need to be. It just needs to be "good enough". And this looks like it might be.

  • observationist a day ago

    https://github.com/TengerTechnologies/Bricklayers

    This came at a perfect time, then - you can cause each adjacent layer to be offset by half the layer height, to maximize the strength.

    Annealing parts by baking them at the right temperature for a sufficient length of time is relatively easy to do. Printing at higher temperatures and slower speeds to ensure layers are melted together also results in higher strength parts.

nejsjsjsbsb 2 days ago

I been thinking an openscad->cura pipeline would be cool. This post is very similar and inspiring.

Imagine running a custom action or pipeline and getting a physical object pop out in the shed. Pretty awesome.

I also like the idea as git as the way to share and remix 3d printing instead of (as well as) the various STL sites.

  • bb88 2 days ago

    I kinda want this in the slicer, like prusaslicer.

  • lucasoshiro 2 days ago

    I once tried to do something like that, but I stopped when trying to deal with the CuraEngine CLI...

    I don't know if other slicers have a better CLI, or even if they have a CLI...

    • wongarsu a day ago

      Orca Slicer might be a good candidate. The cli is a bit rudimentary. I assume it was built by Bambu Labs for slicing ready-made print profiles for printing from the mobile app. Or maybe it's inherited from PrusaSlicer (Orca Slicer is the open-source fork of Bambu Studio, which was forked from PrusaSlicer, which was forked from Slic3r). But as long as you only want to apply print settings, filament settings, load an stl, run auto-layout and get gcode out, it should do the trick with minimal effort.

  • ajolly a day ago

    You can link openscad to a slicer, at least in the dev snapshots, press F8 and your model opens in your slicer of choice.

    Makerworlds customizer is simply a web version of OpenScad. Upload your OpenSCAD script and good to go

  • Joel_Mckay 2 days ago

    Keep in mind some OpenSCAD designs use complex library dependencies, and baked source geometry.

    The simple language IDE preview pane sometimes chokes on the surfaces that are compiled, and on rare occasion must be done via command line. Thus, some complex designs may take hours to generate a model.

    The slicers are meant to be more CAM tool than CAD utility, but people are mixing features as use-cases increase in complexity.

    Best of luck, =3

ramboldio 2 days ago

A big advantage of this technique is that the assembled model is 'isotropic'. If it was printed in one piece, it would be easy to split along the layer lines.

But when printing the plates separately, every face is equally strong.

Great project!

nine_k 2 days ago

This is cool. This is also massive. I wonder how much e.g. the arcade machine housing costs just in the filament used, and how many hours did it take to print.

  • regularfry a day ago

    There's a relatively well-travelled path of filling hollow prints with something to get strength back, which does mitigate that. What that something is will vary per application, but I've previously used premixed post-hole concrete where I've just wanted to add weight.

batch12 a day ago

I wonder if leaving some of the base intact would help with the artifact issue. Instead of cutting the teeth all the way through the whole section, leave a few mm solid on each side and reduce the height of the teeth to compensate the opposing base layer. It might add a bonus of hiding the teeth, too.

camel_gopher 2 days ago

I 3d printed puzzle pieces using Go to generate the join sections. Figuring out the right tolerance takes some trial and error.

ashoeafoot 2 days ago

Skipping teeth? Why not scale the whole series of dove tails for detected cases?

  • WillAdams a day ago

    That requires re-working the design for the fit tolerance.

    • ashoeafoot a day ago

      only the dove tail scaled should work

ajolly a day ago

This is great I'm going to have to try this out. I've got my own openscad dovetail joint scripts, but this seems more refined.

MisterTea a day ago

While this is nice for things like the speaker enclosure I cant help but recoil in horror from the 3d printed arcade cabinet - so much plastic. I get how this enables shapes and other niceties but between aesthetic and the environment I'll take boring and recyclable any day.

  • WillAdams a day ago

    Aren't 3D printer filaments recyclable?

    I know that at least one person doing 3D printing was making it a point of picking up old projection TVs and recycling the ABS housing to make new filament using a Filastruder.

    • poulpy123 11 hours ago

      Theoritically some filaments are recyclable, and the main one (PLA) is even advertised as biodegradable. However in practice this is not the case, both for material reasons (PLA needs actually to be processed to decompose) and logistic reasons (there is no recycling center for 3d prints and you'll need to print only a single filament type)

    • MisterTea a day ago

      You can mostly recycle ABS but unsure of the others. In the case of ABS Plastic it isn't infinity recyclable and you can get maybe 2 or 3 uses from it before it degrades. Personally, I would prefer we design for minimizing plastics.

DonHopkins 2 days ago

Oh man, now I totally want to 3d print a full sized interlocking Han Solo in Carbonite with embedded magnets to stick on the front of my refrigerator!

Maybe I'll have to get huge commercial refrigerator for the proper effect, but it will be worth it.

3d printed life size Han Solo in Carbonite replica Part 1:

https://www.youtube.com/watch?v=lOj3yZ-iMjM