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

#1

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
Collect Elements from Multiple Linked Files and Obtain Their Space
#2

The Excel result from my graph:

#3

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…

Getting all Elements of type within a bounding box
#4

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:

#5

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


#6

@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
#7

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.

#8

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:

Help collecting linked elements inside a bounding box
#9

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)

#10

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? …

#11

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)

#12

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