Get elements directly besides specific element (wall)

I have a wall, and besides it (on both sides), there are some other finish arranged parallel to it, it might be some paint and some plaster. What is the best way to determine those elements within a tolerance distance from the wall? I’ve tried some methods:

  1. By using the bounding box intersection/elements inside bounding box from Bimorph, but this will create a bounding box that is not object orientated (since the wall is not orientated according to real world axis), and thus returned inaccurate result
  2. Draw a perpendicular line to the wall of certain length (tolerance), but from here I don’t know where to proceed because I can’t find a node that allow me to determine the intersection between a line and objects
  3. By using Ray Bounce taking the wall center as origin, this usually give me undesired result as the walls are sticked together and multiple layers, and tends to return the wall itself as the bounced element since origin of the wall itself was taken.

Are there idea on the best way to solve this? Thanks in advance!

Here is the sample project: https://drive.google.com/file/d/1OIOOA84IsgBJZCUDTvA4WQz35Fkj4W55/view?usp=sharing

Could you find the geometry of the elements and then group by distance? I think Springs has a node that will group by distance.

That would be slow as you would be testing N elements which you don’t need to test. And in this case N could be a VERY large number.

Start with the bounding box intersectiontest in Bimorph nodes, then check the distance.

1 Like

Try to use the element.location node and then run your analysis on the resulting lines, maybe a circle in the center line of the location line and a does.intersect node or even a geometry distance to. and filter by 1/2 out of the wall thickness you have. Ideally you would use rooms that these walls contain and the room boundary elements as a way to identify where walls are and reduce calculations.

1 Like