Intersection of spaces with percentage


I have two Revit files with a set of spaces each. I would like Dynamo to calculate which spaces from file 1 intersects with which spaces from file 2, and how much that intersection is in percent.

If I try to explain it more precisely: One of the Revit files contains spaces for electrical groupings, and the other Revit file contains spaces representing the different tenants of the building. The end goal is to bill the tenants on the consumption on energy from the different zones. So for example the space for tenant 1 is covered by 70 % of electrical space 1 and 30 % of electrical space 2. I hope that makes sense.

I found a package called BimorphNodes which potentially could make this happen, but unfortunately I am completely new to Dynamo.


I get the code to work to some extent (not with the percentages yet) if I use walls and beams, both in the same Revit file, see images Below.

However, when I try the same with spaces intersecting with spaces from a linked file, I don’t really understand the results from Element.IntersectsElement. Am I missing something?


in the intersection node change to cross product.

If these are all Space elements then you should be able to get the solid overlap and just compare that to the original space volume for percentages.

1 Like

Hi, and thanks for the reply!
I changed the intersection node to cross product, but the results I get doesn’t seem to add upp to what it should be. See image below. I’ll attach the two Revit files and the Dynamo script if that is useful.



Here are the files

Dynamo.dyn (9.7 KB) Electrical Zones.rvt (3.6 MB) Tenant Zones.rvt (3.6 MB)

Hi, and thank you!
What would the functions be to check for this solid overlap with percentage comparison?

Thanks in advance

Get the space geometries (solids) and find their intersections. Then compare the intersected volume with the full volume of the space. It’s all basic ootb nodes and some math.

1 Like

Seems like I have been able to solve what I had in mind. Attached is a screenshot of the routine. It’s documented in norwegian if anyone tries to read it :slight_smile:

What I have left is try tro create a list of some sort that combines the area/volume usage per tenant (“leitaker”) with the energy zones.