How to create a list that shows ducts contained within a space

Hello everyone. I am a Dynamo newbie. I am trying to generate a list of ducts that penetrate a space. I believe I am on the right path by using Element.Geometry nodes and utilizing the Geometry.DoesIntersect node to identify the ducts that are contained within a space. Where I start to fall apart is on how to organize the data to be able to write it to Excel and have it be coherent. Ideally I would like to have a list that shows the room number/name and shows all of the ducts, indicating type and size, that penetrates that room listed under it. I appreciate any help and feedback anyone has to offer. Thank you.

My Current Graph:

1 Like

The Excel result from my graph:

Please use Konrad’s Archi-lab package,

connect: Elements and Spaces.

TIP. when connecting spaces add check if area >0 so you will not check unplaced spaces etc…

Thank you for the tip. I believe it has gotten me closer to my goal. However, I am still struggling with formatting the information in a way that I can cleanly export it to Excel. Again, any help anyone can offer is appreciated.

Current Graph:

Hi, you could take a look here, for instance:


@jmmiller
Here is my proposal I was using native Revit Excel Node but with Bumblebee you could achieve more,
Please share your final code once you done,

DuctsInSpace.dyn (23.2 KB)

1 Like

Thank you Micha_Dengusiak, I learned a lot by reviewing what you did. This is much closer to what I wanted. The information is actually being exported to Excel in a way that can be consumed. Everything works the way I want, with the exception of when a duct penetrates multiple spaces. I have narrowed down the issue is with using the “Elements in Space” node. The node uses a midpoint to calculate elements placed by line. Which means the duct either appears under just 1 space or does not appear at all because the midpoint is outside of a space. I believe I might have to go back and explore using the “Geometry.DoesIntersect” to see if I can get a duct that penetrates more than one space to populate under all the spaces it penetrates. I will also look into Bumblebee on further formatting the information on export to Excel. Again, I am open to any and all help anyone can offer to get me going in right direction.

There’s maybe another solution with Element.Location which let you choose between points and curves locations, along with BoundingBox.Contains and Filter.ByBoolMask (but I didn’t test it with ducts). See here:

It took me a while, but I finally managed to get a working graph. The graph is able to generate the information I am after and is useable. However, I am having difficulty figuring out how to combine and count like elements. Currently the graph generates a new item for every element in the space. Ideally I would want the graph to combine like elements and report back there are “X” number of “This Size & Type” of pipe/duct contained in that space. Please see attachments for .dyn file and image of the current output. If any one is willing to take a look and point me in the right direction I would greatly appreciate it. ElementsInSpace.dyn (78.1 KB)

Hi, thanks for good code I am trying to do similar but a bit more tricky. I have MEP families in my model, ie radiators and I have spaces in linked mode and want to write in each mechanical equipment space reference from linked model. Does anyone tried this already? …

Hi,
I managed to get almost fully working. Seems that archi-lab.net works perfectly also with linked elements. This is geat.
The only step I am missing is to write into each ducts parameter Space name…

DuctsInSpaceFromLinkedModel.dyn (12.9 KB)

Where do you find the Archi-Lab that has those nodes in it, i can’t find it