Alternative to Elements in Room from Archilab?

Hello to everybody.

I have a problem with “Elements in Room from Archilab”. It was working properly but since two weeks this node is no working properly anymore.

I have three rooms in Revit and I want to know the doors, windows and floors of each room. It was a perfect node…
But now, this node is giving me the same result for every room even if I have only windows and doors in the first room.

Has some one an Idea about why? or has someone another node who is working properly and is similar than “Elements in Room” from Archilab? Or I am just doing something wrong.

I have Revit 2020.
Dynamo – Build
Thank you…

a quick and easy way is to get the solid form of the room and use filterelement collector.

multiCat = List[BuiltInCategory]()
multi_Catfilter = ElementMulticategoryFilter(multiCat)
for room in rooms:
    solid = room.get_Geometry(Options())
    filter = ElementIntersectsSolidFilter(solid)
    eles = FilteredElementCollector(doc).WherePasses(multi_Catfilter).WherePasses(filter).WhereElementIsNotElementType().ToElement()

Hi stillgotme.
Thank you very much for your response.

I have not started to learn python yet… I am starting to learn Dynamo from cero.
It is really hard for me understand right now what are you telling me with this code.

I have tried to put it in a python node… but It is no working cause for sure I did a mistake…

@alejandre I don’t think it was ever a perfect node for this. The only reason that I “might” have worked for you before is because I suspect that you had your Room boundaries set to go to the middle of the wall.

If you did that there is a good chance that the Windows/Doors would report their location at a place that actually falls inside of the Room, and that node was picking it up properly. It might also be dependent on how the Door/Window families were built and where is their Location point being reported. For most families its actually at the intersection of the two center reference planes of the family:

Now, with these two things in mind, you can see how this was a really bad approach to calculating what room does a door/window belong to. I would recommend that you instead simply query the Door/Window families for their ToRoom property. You see every, Door/Window should have that, and they also have a Room Calculation Property that can be turned on in the family:

This makes the ToRoom and FromRoom properties VERY predictable. Please use that instead as that’s the better way of getting that information.




Well the legend has spoken :smiley:

Thank you… :wink: