Editing Revit setup for OpenBIM

From Wiki.OSArch

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.

Latest revision Your text
Line 1: Line 1:
{{Autodesk_Revit}}{{warning|this page has not been audited for accuracy for Revit versions above 2018}}
+
{{warning|this page has not been audited for accuracy for current version of Revit}}
 
 
==Subpages==
 
{{Subpages}}
 
  
 
[[Autodesk Revit]] does not come with strong official support for [[Industry Foundation Classes (IFC)]]. This guidebook relies on [[Revit]] users using the [https://github.com/Autodesk/revit-ifc revit-ifc] open-source Revit IFC plug-in. Although the plug-in comes bundled with Revit, the bundled version is usually outdated and contains bugs that prevent basic functionality from working (such as the ability to assign IFC type parameters using the official shared parameters file, [https://github.com/Autodesk/revit-ifc/issues/217 bug report]). It is therefore a requirement for productive output to update to the latest version using the download links below.
 
[[Autodesk Revit]] does not come with strong official support for [[Industry Foundation Classes (IFC)]]. This guidebook relies on [[Revit]] users using the [https://github.com/Autodesk/revit-ifc revit-ifc] open-source Revit IFC plug-in. Although the plug-in comes bundled with Revit, the bundled version is usually outdated and contains bugs that prevent basic functionality from working (such as the ability to assign IFC type parameters using the official shared parameters file, [https://github.com/Autodesk/revit-ifc/issues/217 bug report]). It is therefore a requirement for productive output to update to the latest version using the download links below.
Line 54: Line 51:
 
[[File:Revit-setup-psets.png|Setting up psets in Revit]]
 
[[File:Revit-setup-psets.png|Setting up psets in Revit]]
  
A starting template for Revit user defined psets can be found here: [[File:Revit-psets.txt]].
+
A starting template for Revit user defined psets can be found here: [[File:Revit-psets.txt]]
 
 
The syntax of defining custom property sets is also explained in this video: https://www.youtube.com/watch?v=SswHKtcM3mI
 
 
 
== Parameter expression ==
 
 
 
Revit allow you to use parameter expression to replace a parameter value on export. See [https://sourceforge.net/p/ifcexporter/wiki/Notes%20on%20parameter%20expression/ revit-ifc source forge wiki].
 
 
 
For example, to map Revit native <code>Description</code> to <code>IfcRoot.Description</code> you can add an <code>IfcDescription[Type]</code> type parameter and enter value <code>{$this("Description")}</code>.
 
  
 
== Revit and IFC <code>GlobalId</code> attributes ==
 
== Revit and IFC <code>GlobalId</code> attributes ==
  
IFC <code>GlobalId</code> values do not exist in a default Revit project file. To create and see the GlobalId select the checkbox shown below select the <code>Store the IFC GUID in an element parameter after export</code> option in <code>File > Export > IFC > Modify Setup > Advanced</code> window, as shown below. It is highly recommended that this option is always enabled.
+
IFC <code>GlobalId</code> values are not visible in Revit by default. This becomes problematic if users are trying to reference an object by its ID. The only way to see the GlobalId is to export your Revit model to an IFC file with the <code>Store the IFC GUID in an element parameter after export</code> option enabled in <code>File > Export > IFC > Modify Setup > Advanced</code> window, as shown below. It is highly recommended that this option is always enabled.
  
 
[[File:Revit-settings-ifcglobalid.PNG]]
 
[[File:Revit-settings-ifcglobalid.PNG]]
  
After your export is complete, you can now see a new parameter called <code>IfcGUID</code> for your objects as shown below. Despite the inconsistent naming, this is actually the IFC <code>GlobalId</code>. This property can now be overridden, copied, or searched for. If the text is deleted, it will be rewritten on your next export. Revit will always rewrite the original <code>GlobalId</code>, with whatever id is written inside Revit. There is no way to automatically regenerate a fresh ID for an existing Revit object, so if it is overwritten is can only be retrieved by finding it manually in the IFC file.
+
After your export is complete, you can now see a new parameter called <code>IfcGUID</code> for your objects as shown below. Despite the inconsistent naming, this is actually the IFC <code>GlobalId</code>. This property can now be overridden, copied, or searched for. If the text is deleted, it will be rewritten on your next export. However, it will always rewrite the original <code>GlobalId</code>, as it is predetermined inside Revit. There is no way to regenerate a fresh ID for an existing Revit object.
  
 
[[File:Revit-params-ifcglobalid.png]]
 
[[File:Revit-params-ifcglobalid.png]]
Line 97: Line 86:
 
* [[OpenBIM]]
 
* [[OpenBIM]]
 
* [[Autodesk Revit]]
 
* [[Autodesk Revit]]
* [[IFC_-_Industry_Foundation_Classes/Software_Comparison|Software Comparison & IFC]]
 
  
 
==External References==
 
==External References==

Please note that all contributions to Wiki.OSArch are considered to be released under the Creative Commons Attribution-ShareAlike (see Wiki.OSArch:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!

To edit this page, please answer the question that appears below (more info):

Cancel Editing help (opens in new window)