Remove internal inclusions

I have an object (see image) with an internal inclusion. If I send this to a 3D printer the inclusion would be filled with support material. Can I shrinkwrap the outer polysurface so that the exported stl file doesn’t produce the inclusion? Essentially I want to print a solid object that is enclosed by the outer wetted, completely enclosed, surface.

In theory you would flip the normal of the smaller cube, but Rhino prevents that.
You can convert the cubes to meshes, flip the normal of the small cube and then join the two cubes.
Or, you you’d like to stay with surfaces, you could model a microscopic tube going from one to the other.

I guess I wasn’t clear. What I’m trying to do is ignore every internal inclusion and print only a solid object that is bounded by the outermost surface. Drop this object in a bucket of water, keep only the surfaces that get wet, and throw away all the insides. Part of the problem is that I’m getting client files to 3D print and all I care about is what I can see on the outside. Imagine a hollow pipe with endcaps. I want to throw away the inside surface and print, what in essence, becomes a solid cylinder. Furthermore, I don’t want to have to manually find every internal surface to edit/delete. I’m looking for something just a little more robust, accurate, 3D, than “Drape surface over objects”.

Except if you frequently have files with dozens of objects, I would select the visible objects, Invert-Delete and print…

Not sure I understand your question but if you save off as an. stl file, all you would get is a solid block (big)
assuming the outer(big) block is an closed polysurface

So so close but there’s still a problem.

The picture shows a box beam that is capped with 2 plates. Typical of a parametric solids modeler where an assembly is made up of 3 parts with constraints applied. In this case it was created in Rhino and the caps are coincident with the ends of the tube. However, it’s still 3 distinct closed polysurfaces. I’d like a means to get rid of the inner surface and 2 end surfaces of the tube so that I could print a solid assembly. With your suggestion, picking the visible polysurfaces ends up including the interior. So I did a bunch of exploding/deleting/joining to try to exclude the tube ends and interior.

Problem#1 All of the endcap surfaces are visible therefore they are retained. The final “join” results in 2 endcap closed polysurfaces each comprised of 6 surfaces and 1 open polysurface for the tube comprised of 4 surfaces. It looks right but open polysurfaces don’t work in 3D printing software. I think a complicated trim might have helped.

Problem#2 The visible surfaces selection means visible within the dragged window. When exploded, this assembly has 22 surfaces. If I orient the assembly as below and drag a window, I end up selecting only 10 of the surfaces whereas I really needed to pick 16. I would be working with hundreds of surfaces so I could never be sure I used enough camera angles to get all of the visible surfaces.


  • if “visible” equated to “outside” that might help
  • it’s still complicated by the fact that the endcap surfaces touching the tube aren’t automatically trimmed. In the end they should look like this (box beam hidden):

    so that joining (16 surfaces) produces 1 closed polysurface.
  • when the final closed polysurface is saved as an stl, the 3D printer slices look like this

What I’ve done is a manual version of a shrinkwrap or watertight fit. Unfortunately it’s not workable for an assembly with anything more than a few, simple, prismatic, parts.

Still thinking …

Dunno, if the objects are solids (closed volumes) and you are able to BooleanUnion everything - which you should if things are built and fit correctly - you will end up with one outer volume and (perhaps) any number of inner disjoint volumes. I say “perhaps” because in your example, when I BU the parts, the inner volume just disappears “automagically”. IF there are inner volumes that do get left, just unselect all, select the outer volume and invert/delete. Good to go.


1 Like
  1. Select exterior and interior poly-surfaces.
  2. Enter command “nonmanifoldmerge”
  3. enter command: “createregions”
  4. select interior poly-surface.
  5. Hit delete.