Method or package to find all the components located in a certain room

Is there any method or package can find all the components located in a certain room?

My current method is to use All Elements at Level to first filter out all elements located on the same floor as the room.Then determine whether the centroid point of each element is inside the room, and finally filter out the correct elements. But when executing in GD, it seems to take up a lot of RAM when using this method.

I think this might work;

Room Elements > Bounding box from room > boundingbox.getelementsinside (bi-morph nodes package)

Maybe?

Thank you. I tried to use this node, but the elements input port also needs to input all the elements on this floor.
I wonder if it would be more efficient if there is a method that does not require a component list to be given as input in advance.

Are you saying it doesnt work? Or that you were hoping for a more efficient method?

Yes, it does work. But I would like to ask if there is a more efficient way.

Because the BoundingBox.GetElementsInside node still has to input all the elements on this floor(its a big number).

Well… there are more efficient and / or more accurate methods of doing this.

Here is a article which explains roughly both of those.

https://thebuildingcoder.typepad.com/blog/2013/03/filter-for-family-instances-in-a-room.html

The method that i have given you here is not efficient nor is it the most accurate but given your level of experience i saw this as the most suitable for you.

Take a read of the article or maybe someone else on here will provide one of the other methods for this.

2 Likes

Thank you, I will refer to it and give it a try.