Depending on your organisation’s naming conventions, a window is generally named something along the lines of Element prefix – Room # – Sequence #, for example, W-101-01. In this scenario, the room number references the window’s ‘from’ room. While most external windows won’t have a ‘to’ room, using the ‘from’ room ensures that the window naming still makes sense if an exterior room is present, such as a balcony or terrace.
Since Revit 2014, when Autodesk introduced the room calculation point, scheduling the ‘to’ and ‘from’ parameters in window families has been possible. This feature has its limitations and quirks. However, assuming the family has been built correctly, how can we automate the naming convention?
Renumbering windows with Dynamo
One possible way is to use Dynamo, which fully automates the process. To solve this need, Parametric Monkey has developed a Dynamo graph, available as part of our Dynamo Package Development service. Before running the graph, ensure that all window families have the room calculation point enabled, as Revit’s automatic calculation of the ‘to room’ and ‘from room’ is inaccurate.


To run the graph:
- Select the windows to be renumbered (#1).
- [Optional] Define the prefix to be assigned to the Mark value (#2). This value can be left blank if desired.
- [Optional] Define the separator for the Mark value (#3). This value can be left blank if desired.
- Define the room parameter to reference (#4). The default is the room Number parameter.
- Specify either a numeric or alphanumeric naming sequence (#5).
- If a numeric naming sequence is chosen, define the precision (#6). A precision of ‘1’ will result in no padding, e.g. 1, 2, 3 etc. Whereas a precision of 2 will result in 01, 02, 03, etc.
- [Optional] Define the room parameter name to be used as a filter (#7). The default is ‘Name’ but can be blank if desired.
- [Optional] Define the room parameter value to be used as a filter (#8). For example, to exclude corridor rooms from the renumber logic, specify ‘CORRIDOR’ or whatever you’ve named the room. This value can be left blank if desired.
- Press Run.
Computational logic
The selected windows are filtered by the current view’s phase, and their to/from room properties are determined. The to/from rooms are then filtered based on the parameter specified (input #7) and its value (input #8). The value is not case-sensitive and enables the user to exclude, say, corridors from the renumbering process. Next, the windows are then grouped based on the ‘to’ or ‘from’ value. By default, windows are renumbered based on the ‘from’ room. If, however, there is no ‘from’ room, it will revert to the ‘to’ room. If there is neither a ‘to’ or ‘from’ room, that is, there are no rooms, the windows will be excluded from the renumbering process. Once this is known, all windows within the same room are sequentially numbered in a clockwise direction.
Conclusion
To find out more about our Dynamo Package Development service, drop us a line and discover how we can automate your Revit workflows.



