How to shell a self intersecting surface

Sometimes I create a continuous surface which intersects itself repeatedly. Sometimes it even intersects itself continuously (See attached image). I have been struggling with this - what I need is simply the external shape or “shell”, without all the internal self-intersection parts. Ideally, I would like to print the overall shape.

I’ve found this to be really challenging! Any ideas would be much appreciated. I have attached the definition for an example shape I am trying this on.

Self-intersecting surface.gh (12.0 KB)

Rhino doesn’t seem able to find the intersections of a surface and itself, and I’ve had no success by splitting the twirl up into smaller parts and intersecting those. Sure some portions of the intersection are found, but many remain missing.

You should also try just baking the shape, and posting it as a 3dm file in the Rhino category, see what those guys come up with.

If you want to print this shape solid, the printer won‘t have a problem with the intersection btw.

The cocoon plug in might help you. You would have to scale the surface smaller to allow for cocoon making it bigger but it outputs a mesh which is good for 3d printing

Nice idea. Could solve his problems.

Btw. this is the file atm in Cura.

That’s OK if a solid print is required but if a shelled print is needed then you might find some 3d print software that can create a new shell interior surface. I think Magix could do this but that’s not cheap

Or if you do not mind it being a mesh ZBrush can do this pretty easily and quickly (and keep nice quads). Other solutions that are free are MeshLab and MeshMixer. However, Zbrush def makes the best result mesh over other software.

The problem with 3D printing objects with intersecting/overlapping shells is indeed a vexing one. I’ve been dealing with this issue for quite a while now, and what I’ve found out is that different slicing programs handle the same STL file that has overlapping shells quite differently.

Generally speaking the slicers I use (Craftware, the Prusa version of Slic3r (which I call Plic3r) , and Simplify3D) do strange things when slicing an STL that has overlapping shells. I have been able to get a very few parts like this sliced properly with Plic3r, but only with careful/tedious tweaking of the underlying geometry.

Luckily David recently pointed out a new STL repair tool that seems to eliminate these problems. Here it is: Netfabb Online Service. This does not seem to be the same Netfabb repair tool that’s been around in various forms for quite a while now. I say that because it will make an overlapping shell STL printable seemingly every time. Previous versions of Netfabb software were not able to do that.

Here’s an image of how Cratware 1.14 slices your un-fixed geometry:


Notice how the insides are partially hollow. This is because the slicing software can’t quite distinguish between what is inside and what is outside.

But after running it through the above NetFabb repair service the results look like this:


This is a much better result and should be pretty much what you want to actually print.

I’m not sure you could print this without a lot of supports, but maybe you can.

PS: Thanks David for pointing out that website. How did you become aware of it anyway?

I think this might be the route I go down - a mesh should be fine. I’m fairly new to Zbrush - do you know which tool will do this?

Look at Dynamesh and ZRemesher. A quick google search of those will bring you many tutorials.