Introduction
IFC is the open standard for building information modelling (BIM), maintained by buildingSMART International and published as ISO 16739. Rather than lines and surfaces, an IFC model describes a building as objects: a site, a building, storeys, spaces, walls, slabs, doors, windows, pipes and ducts, each with its geometry, materials, properties and relationships.
Architects, engineers and contractors use IFC to exchange models between different BIM programs and to hand over a building’s data. The common versions are IFC2x3 and IFC4.
Structure
An .ifc file uses the same text encoding as STEP,
ISO 10303-21. The header’s FILE_SCHEMA names the IFC version, and the
DATA section lists numbered entities, each referring to others by
number. Every building element has a globally unique id and an owner history, and
objects are linked through relationship entities, such as the one that places
elements in a storey.
ISO-10303-21;
HEADER;
FILE_SCHEMA(('IFC4'));
ENDSEC;
DATA;
#1=IFCPROJECT('2O2Fr$t4X7Zf8NOew3FLOH',$,'House',$,$,$,$,$,$);
#20=IFCBUILDINGSTOREY('0eBbL5mQf0vBhWl2VZbVDn',$,'Ground floor',$,$,$,$,$,.ELEMENT.,0.);
#30=IFCWALL('1kTvXnbbzCWw8lcMd1dR4o',$,'Wall 1',$,$,$,$,$,$);
ENDSEC;
END-ISO-10303-21;
The same model can also be written as XML (.ifcxml), or zipped
(.ifczip).
Links
Software
- Autodesk Revit – Autodesk’s BIM program, which imports and exports IFC (Windows)
- Archicad – Graphisoft’s BIM program, which imports and exports IFC (Windows, macOS)
- Bonsai – free open source BIM add-on for Blender that works natively in IFC (Windows, macOS, Linux)
- FreeCAD – free open source parametric CAD program with a BIM workbench (Windows, macOS, Linux)
Developers
- IfcOpenShell – reads, writes and edits IFC (C++, Python)
Reference
- buildingSMART International – the standards body that publishes the IFC schemas and documentation