Filtering lists? - Writing Room Information to excel


#1

BACKGROUND: Hi all. I’m new to Dynamo but I’m being tasked with testing it for use in my office. I figured I would start with something that could be useful to both the designers and our production teams so I decided to try a script that can write to our standard residential building tabulation. Based on what I’ve messed around with so far, I figure I need to have one set of nodes get the Room Name and Area Information and write that (call this task A), and have another get the room name, count, and level data and write that to excel in the correct column based on level (call this task B).

“Task A” PROBLEM: So far I’ve been able to generate a list of my rooms by level using the “Get rooms by Level” node from the Archi-Lab Grimshaw package. I can then get a the area of each room and create and then transpose those lists. My issue here is that my list contains all Unique room instances in the project. I only want this to write the units, but I’m not sure how to filter the list in this way. Thoughts? Additionally, I need to write them to excel by area from smallest to largest, but I’m not sure how to order them like that.

 

 

 

 

 

 

 

 

 

 

“TASK B” PROBLEM: I have a set of nodes that are doing a count based on name. Again, I’m having an issue figuring our how to eliminate rooms that are not “UNITS”. Additionally, they will also need to be sorted by area from smallest to largest, so when it writes the count to excel, It will correspond to the area and name list. Finally, once I sort and filter this information, I only want to write the count number. does anyone have any insight into how i might accomplish all of this? I’m Not really sure if I’ve structured this the right way. Any help is greatly appreciated!


#2

Hi Micahel,

“TASK A” SOLUTION : Collect all your “Unit numbers” from “Room elements” and then filter those by unit numbers using “FilterByBoolMask” node.

“TASK B” SOLUTION : There are lot of ways to eliminate rooms those are not “UNITS”. You can use “FilterByBoolMask”. For sorting “Areas” from smallest to largest you can use “SortIndexByValue” node Ascending/Descending.

Good Luck!


#3