Skip to content


Switch branches/tags


Round-Anything is primarily a set of OpenSCAD utilities that help with rounding parts, but it also embodies a robust approach to developing OpenSCAD parts. The heart of the library a list of polygon points, with a 3rd radius parameter at each point. That is a series of [x, y, radius] points.

The Why

The truth is radii, internal radii in particular can be a real pain to add in openscad. and the more you move away from shapes with 90 degree angles the more difficult it becomes, effectively putting a complexity ceiling on parts you can produce in OpenScad. Because of how important radii in both making an appealing and strong part, reducing stress concentration etc, A library that focuses on radii as a core principle makes for a solid foundation for your parts. Furthermore the heart of the library revolves around the polygon, this is because we're leveraging the battle tested paradigm of extruding from 2d sketches of most CAD packages. I can't imagine making an OpenScad part without Round-Anything.

Quick side-notes

I'm currently working on a community website for "Code-CAD" (like OpenSCAD). A good way to think of it is codepen crossed with a thing repository. You can check it out at or it's repo.

Also please submit examples of what you build with the library in the discussions, I'd love to see them. I also recommend you "watch" the repo with notifications turned on for the discussions to stay up-to-date.


See an overview of the library in video form

Written overview.

Full documentation of the API is here.

Installation instructions


I live streamed the making of this part using this library. I was able to make the bulk of this part quickly even with some complex radii involved thanks to the library.

Below are some of the example parts that can be found in roundAnythingExamples.scad.


roundUnionMask Includes code based on examples from: Kogan, Jonathan (2017) "A New Computationally Efficient Method for Spacing n Points on a Sphere," Rose-Hulman Undergraduate Mathematics Journal: Vol. 18 : Iss. 2 , Article 5. Available at: []