SelChain implies surfaces are accepted, but how?

I searched for how to select all tangent (or position) surfaces from a base surface selection and ended up here:

But I can’t figure out how to get SelChain to accept surfaces.

My use case is that I have split several polysurfaces which are in close proximity on the same layer, and I’m having trouble selecting all of the surfaces of the previously individual objects (without stitching them together again, I guess… which would be one workaround, but still… I’d like to know how the command works with surfaces). :slight_smile:

Hello - surface edges, yes, surfaces, no… It is a curve selection tool only.


Ah. So there’s no way of selecting tangent/position continuous surfaces, apart from selecting everything and attempting to join it?

Hi - That’s correct. But Join only cares about position continuity, of course.

Today, I ended up needing to select many, many faces (not for a join this time), including some hairline thin ones, which would have been one-click if there was a “select tangent faces” option…

(I ended up using the brush, but that was still finnicky due to how this geometry was made.)

Hi Robert - the feature request is now on the list as RH-57133.


Hello -if the surfaces are in a single polysurface, you can try this tool - fairly ancient but I think it actually works pretty well - it extracts tangent (with tolerance available) faces from a brep, optionally as a copy.
ExtractTangentFaces_.rhp (39.5 KB)

1 Like

That worked amazingly well, and had many lovely options included too!

Again, another one of your scripts that really should be included by default in Rhino. I hope they nativize them all in V7 (with C++ instead of Python to get maximum performance)!


Has something changed with the latest SR release that made this script not work anymore?

I can’t get out of the “press enter to accept current selection” mode… it just repeats the line until I press Esc and abort the command.

@Pascal I’m still having issues with this script, unfortunately. I don’t even know where to begin to try to find out what changed within Rhino, and even if I could, the script is a RHP file…

Hm… it works here - let me post the latest that I have, it fixed a bug, not obviously related to what you describe though. Does it fail on say a box with a few edges filleted?

@eobet ExtractTangentFaces.rhp (40.5 KB)


Thank you! :+1:

Whatever that bug was, intentionally or unintentionally it seems to have fixed the issue for me. I was able to get it working again now, and my “enter” key was finally accepted.

Weird. Today, again, using Rhino 7, I get stuck in the “select faces to add” loop, and Enter only recalculates the selection. :frowning:

So, weirdly almost exactly one year later, I had use for this again, and it still fails (Enter isn’t accepted when prompted).

This time, I noticed the following in the command line:

@Pascal So I’m guessing this script is really outdated now, and the compability test isn’t really accurate…

Is there a new Rhino 7 command that replaces this?

EDIT: Also, I can’t edit the topic, but it would be nice to replace the title with something along the lines of “How to select all adjacent tangent surfaces?”