Hacker News

Favorites Setup
Comment by Brian_K_White | original | OpenSCAD the Programmers Solid 3D CAD Modeller
[−]Brian_K_White · 2026-10-11 Sun 00:19 UTC · link
There is no trick way to solve the fillet problem or about 100 other common necessary things in openscad.

Don't get me wrong, I love it myself and use it as much as possible simply because it's outstanding to be able to express a complete design in 1k of plain text which is readable, diffable, gittable.

You can get a lot done, and some things you can do even easier and simpler than anything else, and you can work-around some things, and you can get a good-enough almost-what-you-want other times, and it's practically ideal for certain classes of jobs as long as you're willing to live within the limits.

But "live within the limits" is not something a general purpose tool gets to say.

You can get some fillets easy sometimes if the geometry just happens to lend itself to some boolean op like making a rounded corner hollow box by hulling 8 spheres (which you can populate effortlessly with translate,copy,mirror) and then cutting another smaller copy. Voila, all kinds of interior and exterior fillets in like 10-15 short lines of plain text code. And the whole thing fully parameterized with dead simple variables sitting off by themselves with human descriptive names at the top of the file.

But that does not mean anything. That's a choice showcase example, and all the other infinite real life cases are somewhere between agonizing to code, to agonizing to code and agonizing for the computer (minkowski), to flat impossible.

I love openscad but this implication that it's just a matter of using it right is false.

[−]jacquesm · 2026-10-11 Sun 00:51 UTC · link
The fillet problem is not a problem. It is a problem if you try to apply fillets after you have created something complex. But if you generate it out of variations on the primitives that already have filets it gets much easier to keep control over the resulting shape. What OpenSCAD makes next to impossible is to first combine a bunch of primitives and then to do one more operation on the resultant shape. That's really fighting the tool. But if instead you define a layer just above your primitives that already have the edges the way you want them to be then you can combine them and the filets will stay where they were on the primitives. The problem that remains is to blend them if you need to, I've found a really simple trick for that: define spheres with the fillet radius and create hulls over sets of these. That allows you to fill in the gaps if there are any.
[−]Brian_K_White · 2026-10-11 Sun 00:58 UTC · link
Incorrect. I repeat what I already said since you didn't say anything new either.
[−]vjvjvjvjghv · 2026-10-11 Sun 02:06 UTC · link
That works to some degree but you will quickly run into trouble because you can't get things 100% right. I don't think anybody is using OpenSCAD for professional use where you have to collaborate and have to produce exact shapes.
[−]_ph_ · 2026-10-11 Sun 10:44 UTC · link
May be it is just the matter to compose a few good HOW-TOs. What I gave up on once was creating slabs with rounded edges. Basically imagine a slab which looks like an iPhone icon: you have in the plane of the slab rather a large corner radius, but for rounding the edges of the resulting slab, a much smaller one.

Writing now about it, I think I could do it with a torus, where the radius of its cross section is the small radius, the torus radius is the large one, take two of them, add two cylinders to only keep one quarter edge and then take a quarter of the resulting bevelled disk.

[−]dgroshev · 2026-10-11 Sun 11:25 UTC · link
Those tricks won't help when the design calls for G2 (or higher) fillets or surfaces.