Missing curves from Intersect call


I’m using Rhino v5 and calling Intersect on two solids (file attached).

Here’s a screenshot of the two solids:

When I call Intersect on these two, this is what I see - and I’ve annotated in red one of the vertical lines that I should see now but don’t:

Why are the curves returned by the Intersect call apparently missing some (vertical) lines here?


TestIntersect.3dm (124.2 KB)

There are some problems with a red colored object, I have re-created that object now it works.

TestIntersect_solved.3dm (276.8 KB)

Thanks @Adn_Kocc but just to be clear, this isn’t an exercise in solving this particular case (I found a way to recreate the smaller solid myself such that the Intersect call works) - it’s more about trying to understand why and how this could happen.

These extrusions where actually originally created within a Rhinocommon plug-in using my own C# tranlsation of of @dale 's https://github.com/dalefugier/SampleVbCommands/blob/master/SampleVbExtrusion.vb



applying _DivideAlongCreases to both solids with the option SplitAtTangent=yes should solve it.
the intersection problem happens when the extruded solid doesn’t have the edges in each fillet.


Also you can use the SplitAtTangent option inside the ExtrudeCrv command to avoid this issue.

Thanks so far - I’m still not sure about these though @DiegoKrause

  1. Why and how does splitting of surfaces at tangents when extruding each solid affect the generation of intersection curves between the solids? Why would I be wrong to assume that Rhino could correctly calculate the intersection curve between any surface no matter its shape?

  2. What do you mean when a solid “doesn’t have the edges in each fillet”? At the risk of sounding ignorant: I don’t see any fillets here.



in every corner of your input curve is a fillet, an arc between adjacent lines, when you extrude it, you get that arc on the surface too. those fillets should appear like my second image but sometimes Rhino tries to make a single surface when the input curves have some sort of continuity with each other.
I don’t know the math underneath, so why this happen I don’t have any clue. I just apply those command or make the extrusions without fillets and aplly later on the solid wobjects.

Hi Diego - some commands have a ‘SplitAtTangents’ option - if No, then tangent curves do not make separate surfaces. A confusing exception is ExtrudeCrv - only offers that option if UseExtrusions is set to Polysurface… extrusions as extrusion objects always split.


1 Like