Internal mass reduction for 3D printed parts

I’m running Rhino 6 on Mac. I have modeled some solid parts that will be 3D printed and need internal weight reduction. I was wondering if there is a tool that can create the proper internal voids for 3D printing at a given volume reduction percentage. Any suggestions?

1 Like

The command you’re looking for is typically called “shell” in 3D software that supports creating internal voids. However, I’m not entirely sure if Rhino 6 has this capability. Using the Offset command might not work as expected since it could lead to overlaps and intersections depending on the geometry.
Edit: I have just tested this in Rhino 8, and unfortunately, it doesn’t seem to work with meshes as far as I can tell.

These days, this is usually handled by the 3D printer software…

If you have NURBS surfaces you can try OffsetSurface - although this will likely fail if the parts are complex.

Note also that Rhino does not directly support making “disjoint” solids - i.e. internal voids that do not connect to the outside surfaces anywhere (think tennis ball or similar). There are some workarounds to make them, but they are of limited usefulness.

With Rhino 8 you have Shrinkwrap which is capable of decent mesh shelling.

2 Likes

While some 3D printer software can handle shelling well, having precise control over shelling beforehand is crucial for certain workflows. This can be particularly frustrating for organic forms (3D-scans, sculpts) with current tools, even in ZBrush. Often, expensive software like Freeform, Geomagic, or Magics is required. If Rhino offered a robust mesh shelling tool, it would likely attract a significant number of users.

Maybe try V8/Shrinkwrap - Kyle has a video on it…

2 Likes
3 Likes

Shrinkwrap works fine in some cases, but it’s not quite the same as shelling—it’s more like offset wrapping. Shelling involves offsetting a shape by a specific distance without intersecting the original geometry, even in tricky spots like tight curves, sharp edges, or complex angles. (Like the ‘shell’ command in rhino which does not work either for meshes it seems.)

If shrinkwrap could use the original mesh as a boundary while offsetting inward and keeping a minimal distance at edges, it would solve a lot of problems. But right now, it struggles with tubes and small offsets. As you can see in the video, the only control you really have is the target edge length, which can get pretty messy when you need a very small offset.

It might seem like nitpicking, but having precise control over these details is really important, especially in art production where accuracy is key. Unfortunately, in my experience, shrinkwrap just doesn’t quite cut it for shelling right now. You often have to split your geometry, which can be cumbersome or even impossible at times.

1 Like

Here’s an example of doing just this with Isopod in Grasshopper:
isopod_shell_example.gh (210.3 KB)

11 Likes

i did not see this. thanks!

1 Like

Thanks! That might be worth upgrading to V8. I still haven’t used any Grasshopper.

1 Like