Industry Foundation Classes (IFC) Reader

The IFC data model provides access to data used in the building and construction industry, and so some of the concepts like Assembly, B-rep and PMI are not exactly the same concepts as they are with our other formats. A file does not need to have a particular extension to be read correctly by HOOPS Exchange; however, the file extensions of IFC files that you can expect to be loaded by HOOPS Exchange are:

  • .IFC

  • .IFCZIP

Our readers are updated to the latest released version within 90 days of the release of the authoring software. You can see the exact version supported in the current release here.

Assembly

The full assembly tree definition is supported. This includes maintaining any hidden attributes which may be set. Incremental load is not supported by our IFC reader.

B-Rep

The B-rep definition within IFC is based upon STEP. HOOPS Exchange supports specific IFC B-rep definitions by creating a tessellated solid.

IFC-Specific B-Rep

HOOPS Exchange can create primitives by performing simple geometric operations on 2D entities.

The list of geometric objects available in IFC is:

  • IFCBOOLEANCLIPPINGRESULT

  • IFCEXTRUDEDAREASOLID

  • IFCOPENINGELEMENT

  • IFCSURFACECURVESWEPTAREASOLID

  • IFCSWEPTDISKSOLID

The list of surface types available in IFC is:

  • IFCSURFACEOFLINEAREXTRUSION

  • IFCSURFACEOFREVOLUTION

The list of curve types available in IFC is:

  • IFCBEZIERCURVE

  • IFCBSPLINECURVE

  • IFCCIRCLE

  • IFCCOMPOSITECURVE

  • IFCELLIPSE

  • IFCPOLYLINE

Please note that for performance reasons, the level of detail of the generated tessellation is limited to a low setting.

Support for IFC 4 Types

By the version 2019, IFC reader supports the following B-Rep and Tessellation types:

  • IFCADVANCEDBREPWITHVOIDS

  • IFCADVANCEDBREP

  • IFCINDEXEDPOLYCURVE (from IFC 4 Addendum 2)

  • IFCPOLYGONALFACE (from IFC 4 Addendum 2)

  • IFCTESSELLATEDFACESET

PMI

IFC has a concept which is close to PMI called Notes and these are supported by HOOPS Exchange. The names of the Notes in IFC are:

  • IFCCANNOTATIONTEXTOCCURENCE

  • IFCTEXTLITERALWITHEXTENT

  • IFCTEXTLITERAL

IFC Relationship

IFC relationship can be read from an input file. Our support of this feature is currently limited to reading the related and relating elements for the following relations:

  • IFCRELAGGREGATES

  • IFCRELCONNECTSPATHELEMENTS

  • IFCRELCONTAINEDINSPATIALSTRUCTURE

  • IFCRELFILLSELEMENT

  • IFCRELSPACEBOUNDARY

  • IFCRELVOIDSELEMENT

  • IFCRELASSIGNSTOGROUP

See the Building Information Modeling in the programming guide for more information.

IFCXML

BIM Data can be exported to IFCXML using A3DAsmModelFileExportToIfcXMLFile() from the A3DSDKBim.h header.

Visualization

This visualization data for this format is generated by the HOOPS Exchange tessellation engine.

Views

Views are not a concept supported by IFC.

Limitations

Our IFC reader doesn’t support double precision. However it is still possible to improve it by declaring a “TF_IFC_REPOSITION” environment variable for relocating models near the origin.