Windows in Rooms


Custom Node

Project File

Good afternon all :slight_smile:

So, we have a task in the office which requires some poor guy to manually calculate the “Openable Area” of a window, the “Required Openable Area” for each naturally ventilated room (which is Room floor Area / 30) and check weather each room Passes/Fails. Its taken 2-4 days to do this taks and if any changes need made its a nightmare.

Ive been playing around with a definition, utilizing the “Ayuda.WindowCommentsByRoomNumber” node. Which i have butchered slightly to suit what im trying to do. Every step seems to execute as expected, but when it comes to writing the parameters of the total “Openable Area” back to the room parameters it only seems to do it for 3-4 of the rooms in the project.

I have no clue what is going on. The definition is probably a bit crude but it seems to be (nearly) doing the job. Id love it if any of you could elaborate on why it isn’t working… or provide any better definitions.

I basically need to get a list of What windows are in what rooms, then write a type parameter from the windows into the Rooms.

Any help is greatly appreciated! :slight_smile:

Thanks in advance


You were close! Attached is the revised version. I just switched the element for set parameter to utilize the unique keys portion :slight_smile:Openable-AreaT1

Hi, you need clockwork package to get this working. I put some values to random parameters only for tagging. I changed family type for bathroom to get really big openable area. Dyn file: Openable AreaOpenable

John - Thanks a lot! Simple fix :slight_smile:

Tomasz - I have not had a chance to look through and test your definition, but will let you know once i do :slight_smile: Thanks


So… I’ve been tinkering with the definition on a live project now, and im hitting some problems.

There are approx 85 Windows which are Curtain Panels that are not being picked up and i cant figure out how to do it.

Is there a way to report the room of a Curtain Panel “window” so i can use it in my definition?

Here is the updated Definition Openable Area_Rev01 Unfortunately i cannot share the live project due to security restrictions… here is a dummy file with the problem inside it (Curtain w all windows) Room file_CW

Any input would be greatly appreciated :slight_smile:


Hi Alisder,

Your issue is solved. See workflow below. Good Luck!

1 Like

Sory for the late reply

Got the definition working perfectly now!

Thanks so much for your help guys! Its been a huge help! My boss is loving the new workflow. Will be saving days of work for each project!


Much appreciated :slight_smile:

Hi Alisder,


I´ve just read your problem.

Maybe it is a stupid question (I can be missing something). Why do not you do this task in Revit? I mean you can workout the number over there, put a formule and conditional parameter, right?

Why Dynamo is really helpful in this case? Just I am curious…,I would like to understand the problem…

Thank you very much.


So, what im trying to do is this:

1 - Get room area, Divide it by 30 and have that result stored into a room parameter

2 - Get all of the windows in the project, calculate their “Openable Area”, group each window into what Room it is in, get the SUM of all the windows’ openable area for each room then store this result into each room parameter

3 - Read from an Excel shedule which rooms require to be Naturally Ventilated, and either apply this Tick or Untick to the rooms parameter

4 - Take the list of all rooms, if they are not meant to be naturally Ventilated, populate “N/A” into a room parameter. If they ARE meant to be naturally Ventilated, pass them onto the next step

5 - Take this list of Naturally Ventilated rooms, calculate if the total SUM of all Openable windows in that room is greater than the Required openable area, put a “Pass”, of if it is not, put a “Fail” into the rooms parameter

6 - This then allows to schedule out all this data and also tag and more importantly, Colour up a floor plan showing compliance and what the difference is.

This task usually takes 2 days for someone to calculate, validate and report on, this code now allows me to do all of this in like 10 seconds.

Its true you can do some of this to a certain degree native in Revit, but populating these values and colouring up floor plans by the values cant. And doing it all in one click saves insane amount of time and it can now be applied to all future projects


Oh, I got you right now.

Thanks for the replay.

We do it by excel (using dynamo as well) but not for everything, we do not spend two days but the process it is not such fast as your.

Have you checked if you do not have any problem when you have corridor and this type of thing?

Thank you very much, I really apreciate the time you spent replying me.

All the best.


Time it takes manually depends per project, but this one im on just now took one of the guys 2 days to do from start to finish. Ive never had to get this calc out before but i would hate to have to do it manually xD

Re: circulation/vestibules/closets etc… we just exclude them from the ventilation schedule before we run the definition. Confirm with the MEP guys what rooms are to not be included and run it.