When an Architect refers to The Building Code, they typically mean the International Building Code (IBC) and it’s companion codes written by the International Code Council (ICC). These large, cumbersome volumes contain rules, regulations, and standards for buildings. They are the baseline; a list of bare minimums for protecting the health, safety and welfare of the public. And because it’s rare for two buildings to be exactly alike (except in residential suburbs, but that’s a whole other rant), there are a lot of conditional statements: if this is true, then do that, or of not, then do this other thing.
When I was first introduced to computational design, my immediate reaction was, “Awesome! Now I have another tool to force Revit to do what I want.” Dynamo is a computational design plugin for Revit; Revit is the current dominant software used by the AEC industry to design and document buildings. Both are made by Autodesk. Autodesk has taken on the difficult task of building tools for designers: aka. the type of people who are never happy with the status quo. There is always room for improvement.
One of the pet peeves I want to fix about my workflow in Revit is the creation and editing of the Life Safety Plan. This is where the Architect checks to:
- make sure the building is within allowable size range,
- determine the type and rating of any fire walls or barriers,
- ensure the emergency exit plan is sufficient for the maximum number of people who are likely to be in the building at any given time, and
- many other general life safety considerations.
I will refer to this process generally as the code review. This is one or maybe a couple of sheets in a construction drawing set, usually toward the front of the set. It is used primarily to communicate with the building official:
- here is how we are complying with The Building Code, and
- please give us a building permit (posthaste).
When I was first introduced to computational design, my immediate reaction was, “Awesome! Now I have another tool to force Revit to do what I want.”
The problem I see with the process for creating the Life Safety Plan in Revit is basically that it hasn’t gotten much attention. There seems to be this spooky attitude about The Building Code, as if making tools to ease and streamline that communication process might somehow be a huge liability issue.
So, the Architects are left to generate these plans largely with lines and text blocks drawn over the top of the floor plans. They’re fine and it gets the job done, but its not an improvement over the workflow we had in AutoCAD. Ironically, the older, more established Architects in firms were sold on switching to Revit by hearing how it was more streamlined, easier and faster to use. Yay! But the one or two sheets per set that they still routinely keep to do themselves is… basically unchanged from AutoCAD. Except that the default background color is white now instead of black.
Clearly, I see room for improvement. But, let me be perfectly clear here: I am NOT proposing a tool that can do the code review for you. I am of the opinion that such a tool would be a waste of effort. The Architects that I know would be loathe to use it if it existed; and it would never get off of the lawyers’ desks if it someone did start building one. What I want to make is more like an in-Revit version of the cheat sheet or checklist that most firms have and use internally to make sure they’re not missing anything in the code review. The one that says, first check X, then Y, then Z. Your helper; your… Accomplice.
I am NOT proposing a tool that can do the code review for you. I am of the opinion that such a tool would be a waste of effort.
Early in the process, I was using Dynamo to test out the major workflows. I was lucky to land a summer internship at Proving Ground midway through my Master of Architecture (MArch) degree matriculation. I spent a large portion of that summer wrangling with Revit through these Dynamo proof-of-concept workflows. These have been released along with the work of my two fellow interns that summer as the summer 2016 SDK.
The tools created in that release are fully open source and available to the public. Tasks that can be done include:
- Occupancy Calculation Prototype: a tool to pull the area information from Revit, ask the user to assign an occupancy calculation factor, calculate the result, and save the result to the Area object so it can be displayed in a tag and/or schedule.
- Exit Capacity Prototype: a tool similar to the Occupancy Calculation, but made for calculating the capacity of egress elements like stairs and doors.
- Fire Rated Assemblies Prototype: a tool to apply line types and tags to walls to indicate their fire rated assembly type and rating.
- Travel Path Analysis Prototype: a tool to calculate the shortest path of egress travel between two points as indicated by the user.
We named these tools prototypes. I like to call them proof of concept workflows because they are not very user-friendly (yet). However, they do prove that the ideas are tenable within the constraints of the Revit API. As I dug in to developing these Dynamo scripts, it became clear I needed to learn how to ‘code’ in the software development sense of the word.
More to come, in part 2…