Ideate BIMLink for Revit Assists in Determining Door Hand and Swing Direction

One of the requirements for specifying a door is to know which way it swings, both left or right and, if it has a keyed side, in or out. In Revit this information is not readily available, but the information is there. This piece will help you manage your door quantity takeoffs by first identifying how Revit represents this information and how to use that information to populate the doors with the correct information using Ideate BIMLink or to verify that information with Ideate Query in Ideate Explorer.


There are four types of swings: Left Hand (LH), Right Hand (RH), Left Hand Reverse (LHR), and Right Hand Reverse (RHR). There are many explanations online with diagrams of each.

Default Revit Family

For this example we will be using the default Revit door as a reference. It is modeled in the family as a Left Hand Reverse. This is important as it impacts the way the Revit properties should be interpreted. If you are using families modeled in a different hand than the default family, you will have to note those families and adjust the calculations as appropriate. This workflow also requires that the family have flip controls in place, one horizontal and one vertical.

Doors in Plan

Here is an image of a Revit file that I created for this piece. There is one of each swing, using the Revit placement tools and the flip controls. I then used the mirror command to make another set of doors (in blue) to show that the mirror command does get captured.


There are two properties in Revit that are not listed in the properties palette but are accessible through the API that will determine the swing of the door. These properties are exposed by both Ideate BIMLink and Ideate Query. The two properties are:


  • Is Facing Flipped – This indicates the side of the wall the door swings towards. Since the default Revit family swings out (up in the family) a value of ‘False’ indicates that the door is a ‘Reverse’ door, and a value of ‘True’ is not reversed. 
  • Is Hand Flipped – This indicates the hand of the door. Since the default Revit family is modeled as a Left Hand, a value of ‘False’ indicates that the door is a ‘Left Hand’, and ‘True’ indicates that the door is ‘Right Hand.’


Additionally, you can include ‘Host Wall: Function’ or your ‘Has Lock’ parameter to identify those doors that do or do not need to be marked as ‘Reverse.’ In this example we won’t be including those parameters.


There are two workflows to manage these parameters, allowing you to rely on one resulting text parameter. 

In Ideate BIMLink, a door instance link is created with the parameters listed above, along with the text parameter that will store the resulting value. If you are using families that are modeled differently, you will also want to include the ‘Family Name’ property. 

Properties in Ideate BIMLink

This information is then exported to Excel. To convert the information we can use one of the following Excel formulas, where C is the ‘Is Facing Flipped’ column, D is the ‘Is Hand Flipped’ column.


With Full Text


=CONCATENATE(


IF(D2,"Right Hand","Left Hand"),


IF(C2,""," Reverse"))


Abbreviated


=CONCATENATE(


IF(D2,"RH","LH"),



IF(C2,"","R"))


Once this formula has been put in place, it can be dragged down to the rest of the rows. The data can then be imported back into Revit, updating the parameter.

Properties After Import

In Ideate Query (a part of Ideate Explorer) you can verify that the swing parameter you have defined is accurate. Select the doors that you would like to examine (or all the doors). Open Ideate Query. Select the swing parameter and either one or both of the ‘Is Facing Flipped’ and ‘Is Hand Flipped’ properties from the list using ctrl+select. The query tool will group the elements by these values allowing you to spot discrepancies. You can then select the discrepancies to fix. 

Doors in Ideate Query

Here is an image showing some issues I made on purpose, one blank value from a new door, one that is using the wrong syntax for the parameter, and one that was mislabeled, creating a duplicate in the list.

Explore recent posts

15@15: Effortlessly Eliminate Imported Revit Clutter
April 21, 2025
TRAINING - VIDEO | Simplify Revit object style management with Ideate StyleManager. Easily analyze, rename, merge, and remove imported styles from CAD links and exploded files. Keep your projects clean and organized with Ideate StyleManager.
15@15 Training Series: Spruce Up Your Revit Material Management
April 7, 2025
TRAINING - VIDEO | Struggling with messy Revit materials? Clean up and optimize your material and appearance assets with Ideate StyleManager. Learn how to analyze, rename, merge, and remove unused elements to keep your projects running smoothly.
15@15 Training Series
March 31, 2025
TRAINING - NEWS | Leveling up your BIM game with Ideate Software doesn’t have to hard or time-consuming with our 15@15 Training Series. This series of 15-minute online sessions cuts right to the chase with essential information to enhance your skills, unlock new efficiencies and elevate your ability to automate tedious tasks —all while reducing errors in your Revit model.
15@15: Elevate Your Title Block With Style
March 26, 2025
TRAINING - VIDEO | Is your Revit title block a mess? Inconsistent styles can slow you down, but Ideate StyleManager can help. Discover how to clean up and streamline your title block for a more efficient workflow.
Show More