SelChain resources / ExtractTangentFaces

I’m looking for resources for the Rhino command “SelChain”, but couldn’t find anything in the tutorials etc as it does not behave as I expect it to.

SelChain only works for the example in the middle, but the order of selection seems to matter.
If I start from the circle section I get all connected (setting ChainContinuity=Position) edges, when I start from another position it does not work.

What is the reason for this effect? How can I make sure that I always get the resired result independent of the first element?

extract tangent.3dm (59.7 KB)

Context:
I’m trying to select all surfaces that have a certain continuity with each other, without being limited to polysurfaces like the rhino plugin from @pascal from
SelChain implies surfaces are accepted, but how? - Rhino / Rhino for Windows - McNeel Forum
seems to be. As a first step I’d like to select all edges that fit the criteria, but the results don’t make sense to me (yet).

Thanks

Hi Martin - I think what you want is ‘SelectTangentFaces’ rather than ‘Extract’, correct?

-Pascal

Yes, that name describes what I want to do better -

SelectContinuousFaces

with C0, C1, C2 option.
Unfortunately this command doesn’t seems to exist right now.

Version 7 SR7
(7.7.21160.5001, 2021-06-09)

If it does not exist yet, I’ll try to do it myself. Right now I don’t know what would be best for doing this.
Any suggestions?

A really inefficient way is iteratively combining faces together face by face and then checking if there is any discontinuity with combined_face.GetNextDiscontinuity, but there are better ways for this.

We are in RH7 SR12

Thank you for your answer eddi,
I just tried out the newer version attached to the post you quoted.

I’m trying to select all surfaces that have a certain continuity with each other, without being limited to polysurfaces like the rhino plugin from @pascal

It still seems to limited to polysurfaces it seems, at least thats what the command windows says and therefore it does not work with my provided example (it contains no polysurfaces, just surfaces / trimmed surfaces).

I not have Pascal’s plugin installed, but if is limited to polysurface what says one click on command _Join ?

Edit: Please ignore my comment I had not read your first post :face_with_thermometer:

Was only for info and not directly relevant for Your wish.