Check which surfaces connect to lines

Hello everyone,

So I have a list of surfaces and a list of lines. Is there a way to check which line is “connected” to which of the surfaces (see also the picture)?

Thanks in advance.


linksurfacetocrv.gh (28.9 KB)

If the collection is a Mesh (and thus the modules MeshFaces) use Mesh Connectivity. If is Brep (and the modules BrepFaces) use Brep Connectivity. If are not in some collection then Mesh/Mesh or Brep/Brep proximity is the way to go.

Hello,

This is a standard Graft/Flatten trick with a proximity check.

Assuming you want to get the list of adjacent surfaces for each line :

  • For each line means you have to Graft the lines
  • test the distance of the middle of that line to all the surfaces - this means Flatten the surfaces
  • and retain only the results where the distance is close to 0 (with tolerances, =0 is problematic).

linksurfacetocrv.gh (66.1 KB)

@PeterFotiadis In this case, not all the edges have to be tested, so the EF tree would have to be filtered.

Thanks!

General case:

  1. If we are talking about Breps then first find Islands then compute EF.
  2. If we are talking about Meshes then first find Disjoined Pieces and then compute EF.
  3. If pieces are individual then first Cluster by Proximity then compute E/E pairs.

There is also a component Brep topology in Parakeet