Logo

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: Applying Dependents with Ideate ViewCreator
11 Nov, 2024
TRAINING - VIDEO | Streamline view management in Revit with Ideate ViewCreator’s Apply Dependents method! Effortlessly transfer naming, scope, crop box, and grid settings from dependent views to new parent views for consistent, precise workflows. Start simplifying your projects today.
Webinar: Enhance Your Revit Workflows with IdeateApps
31 Oct, 2024
VIDEO - TRAINING | Boost your Revit productivity with IdeaEnteApps! Join us to explore Ideate ReNumber, SmartDelete, XRay, and QuickSelect—powerful tools for seamless renumbering, visibility diagnostics, and project navigation.
15@15: Using Ideate ViewCreator to Create Room Views
28 Oct, 2024
VIDEO - TRAINING | Easily create Room Views with Ideate ViewCreator! Speed up batch creation of room-based Revit views and optional sheets through automated elevations and enlarged plans. Boost your Revit productivity with seamless, efficient view creation today.
CA FR: Améliorez vos flux de travail Revit avec IdeateApps
24 Oct, 2024
TRAINING - VIDEO: Maximisez votre productivité dans Revit grâce à IdeateApps et optimisez vos tâches en un rien de temps ! Dans ce webinaire, découvrez comment Ideate ReNumber facilite la renumérotation rapide, comment, Ideate SmartDelete vous aide à mieux comprendre les relations entre les éléments avant suppression, et comment, Ideate XRay vous permet de diagnostiquer instantanément les éléments invisibles dans Revit. Et plus encore !
Show More
Share by: