Missing curves from Intersect call

Hello

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?

Cheers

Nic
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

Cheers

Nic

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.
Before:


After:

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.

Cheers

Nic

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.

-Pascal

1 Like