Get area from rooms inside area boundary

Hi,

I have to gather area information from multiple rooms inside of area boundary.

Does anyone have experience with this?

JB

What do you mean exactly? Can you show an example?

If you need to group rooms, according to areas, you can:

  • get area boundaries with Areas.OuterBoundary from Rhythm package
  • get room point location with GetLocation
  • use Polygon.ContainmentTest to group them
1 Like

For example, see picture.

I need to sum up the area of all rooms placed inside Area 101, all rooms placed inside Area 102ā€¦
The best option would be to get the total room area within each Area (101, 102ā€¦) in schedule or write to excel.

Hope this explain what Iā€™m doing.

Something like this should work:

3 Likes

Thank you for this.

I tried to replicate this but somehow Iā€™m only getting total Room Area within one Area boundary.
Iā€™m not getting the area information listed up like you do.

GetRoomArea-NotWorking.dyn (20.3 KB)

Hi @jon2

Right click ā€œPolygon.ContainmentTestā€ node change lacing to cross.

Nice,
Thanks for the reply. It worked! I got all the information written to excel from my demo project.

But it gets more complicated when Iā€™m implementing this to the project Iā€™m working on. The Polygon.ContainmentTest seams not to be time efficient for complex Revit models.

Is there some other Node out there which is more time efficient?

@jon2 Well, Here is the more time efficient node from Rhythm :wink:

Donā€™t forget to mark the post as solved. Cheers!

@lucamanzoni FYI :point_up:

5 Likes

Great!

One last thing. I was able to sort Areas by Number parameter with @lucamanzoni script but Iā€™m not so sure I have the solution in yours.

I really have to get that right if I want the information to stack up in right order.

Cheers!

I was able to sort the Areas by Number parameter but my Room Area sum up doesnā€™t sort up in right order.

Rooms_Areas

Drop rvt file here.

Hi, Iā€™ve been looking for a solution to this issue for a long time. But this node doesnā€™t work, it writes null. Maybe you know what the problem is?