New features in v2.8


New Features in v2.8

1. IFC Object Attributes

Not all standard IFC Object attributes have their mapping to internal Revit data and therefore not all of them are supported. There are several common attributes, i.e.
* Name, Description, ObjectType, Tag for IFC Object instances
* LongName for Spatial Elements
* Name, Description, ApplicableOccurence, Tag, ElementType for IFC Type objects.

Additionally there are a few other attributes specific to certain objects such as:
* ElevationWithFlooring for IfcSpace
* LandTitleNumber for IfcSite,
* CapacityByWeight and CapacityByNumber for IfcTransportElement

A few of them are assigned with default values by IFC export and currently a few of them can be overridden, i.e.:

  1. NameOverride to override default assigned Name attribute
  2. LongNameOverride for override default assigned LongName attribute
  3. ObjectTypeOverride to override default assigned ObjectType attribute
  4. IfcDescription to override/define Description attribute

With the work for FMHandOver, the support for various attributes are now standardized and expanded to include all the above listed attributes. The parameter names are made uniform now using the following format: Ifc<attribute_name>. You can use:

  1. IfcName to define/override Name attribute for object instances and type objects
  2. IfcObjectType to define/override ObjectType attribute for object instances
  3. IfcTag to define Tag attribute for object instances and type objects
  4. IfcLongName to define/override LongName attribute for spatial object instances
  5. IfcApplicableOccurence to define ApplicableOccurence attribute for type objects
  6. IfcElementType to define ElementType for type objects
  7. IfcElevationWithFlooring to define ElevationWithFlooring attribute for IfcSpace
  8. IfcLandTitleNumber to define LandTitleNumber attribute for IfcSite,
  9. Ifc CapacityByWeight to define CapacityByWeight attribute for IfcTransportElement
  10. IfcCapacityByNumber to define CapacityByNumber attribute for IfcTransportElement

You may use the supplied share parameter files that contains the above parameters for use in Revit.

2. Exporting Revit Families as Specific IFC Entities

Exiting Revit IFC export allows assignment of specific IFC entity or type to be assigned to a particular family using two parameters IfcExportAs for the specific IFC Entity or type to be assigned to and IfcExportType to define the PredefinedType of the specific IFC type. These parameters must be assigned manually.

This works brings improvement by allowing the use of Schedule Key to be defined for IfcExportAs parameter so that the valid values can be listed as a drop down list eliminating the need of manual insertion that is prone to error. To support both IFC types and their PredefinedType enumerations, IfcExportAs is enhanced to support the assignment following the following format:

For example:
• IfcTransportElementType.ELEVATOR
• IfcTransportElementType.ESCALATOR
• IfcTransportElementType.MOVINGWALKWAY

3. IFC Base Quantity

The current IFC export supports several Base Quantity property automatically during export. This work introduces additional parameters with IfcQty as prefix to support other not supported quantities for IfcSpace and IfcBuildingStorey objects. At this time, the parameters require manual insertion of values that will be recognized for export.


This simple extension is to ensure Pset_DistributionElementCommon property set is exported when an MEP object has Reference parameter assigned with value.

5. New UI for Additional IFC Information

The work in FMHandOver adds a new UI for IFC specific assignments via the Assignment button. It will display a new UI that consist of three different tabs at this time for three distinct purposes, i.e. File Header, IFC Postal Address, and Classification Name. The detailed of all these three functionalities are described separately below.

Information that is entered in the Assignment UI will be remembered and saved into the Revit file. The values will be automatically set in the UI the next time it is used again for the same model provided that the Revit file is saved.

6. Classification Reference

This tab is for user-defined classification name to be defined. Currently it only supports one Classification Name. In future this can be extended to support any number of Classification. This limitation does not actually limit the number of Classification system that can be supported when assigning the Classification code to objects in Revit.

An object can be assigned classification using ClassificationCode parameter. There are currently 10 predefined parameters, i.e. ClassificationCode, ClassificationCode(2), …, ClassificationCode(10), that are supported. They can be used together or as separate parameters needed to setup Schedule Key parameter, one for each category.

The classification code follows the following format:
[<Classification_name>] <classification_code> : <description of the code>

It also supports the full format or partial format as followed:
<classification_code> : <description of the code>
[<Classification_name>] <classification_code>

When Classification_name does not match any Classification name defined in the UI, a new classification will be defined with “blank” Source and Edition information.

When Classification_name is not found in the ClassificationCode (as shown above for partial format) and there is no Classification defined in the UI, a default “Default Classification” will be used, otherwise the Classification in the UI is assumed to be the default classification to be used.
User may use Schedule Key to defined fixed list of valid classification codes. Using such method, user will be able to use drop down values in Revit, which eliminates risk of user entering invalid values

7. Project Address in IFC

IFC Postal address assigned to IfcBuilding can be created using the Address Tab in the Assignment UI. Most of the fields are input fields that follow IfcPostalAddress definition. Purpose field is the only one listbox showing relevant IFC enumeration.

When User Defined Purpose field has value set, the listbox will be automatically set to USERDEFINED. Likewise when any other enumeration is selected the User Defined Purpose will be erased.

This UI allows updating of project information. There are two information updated:

  1. Project Information
  2. Site location

8. IFC File Header Custom Content

The File Header tab allows users to add information about the author of the BIM model exported into IFC file header. The fields greyed out are those fields that will be automatically assigned and formatted by the export as required for IFC standard.


Wiki: Home
Wiki: IFC Exporter UI Help


  • wsolihin

    wsolihin - 2013-03-01

    Additional shared parameters can also be found in the attached zip file. Inside you will find one file containing parameters for the object instances (IFC Shared Parameters.txt), and the other file containing parameters for use with the types (IFC Shared Parameters - Types.txt)

  • Håvard Dagsvik

    Håvard Dagsvik - 2013-03-10


    It would be nice if we could use IfcName and IfcLongName on Levels.
    The Level name is usually something like "Plan 1. Floor"
    According to our standard BuildingStorey.Name should be just a number.
    And BuildingStorey.LongName the descriptive text.

    How do we setup BuildingID to make it export ? (i assume its a Text parameter)

    Any way to get the IfcBuilding.LongName exported ?

  • Angel Velez

    Angel Velez - 2013-03-10

    For IfcBuildingStorey: I will add name, longname, and description overrides. That will allow you to set exactly what you want for these values.

    For IfcBuiling: Right now, the building name is used for the name and the long name. I will allow for overrides here, also.


Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

JavaScript is required for this form.

No, thanks