IFC - Industry Foundation Classes

From Wiki.OSArch
Revision as of 01:09, 18 March 2020 by Moult (talk | contribs) (Created page with "thumb|right|An IFC file being viewed in FreeCAD IFC (Industry Foundation Classes), is an open-data schema and se...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
An IFC file being viewed in FreeCAD

IFC (Industry Foundation Classes), is an open-data schema and set of formats used to store OpenBIM data. It is developed and maintained by buildingSMART. IFC data can digitally describe many concepts, including:

  • Physical objects in our built environment (walls, slabs, columns, pipes)
  • 2D and 3D geometry that represents objects or annotate objects
  • A diverse set of properties and attributes spanning many domains
  • Materials attributes and display colours
  • Construction planning, resource allocation, and scheduling
  • Quantification of elements
  • Roles and responsibilities of organisations and individuals
  • Design strategies and legal constraints
  • Analytical models for structural analysis, energy analysis, and light analysis

The majority of BIM programs can read and write IFC data. However, the quality of vendor support for IFC data varies significantly between software.

There are currently two commonly supported versions of IFC: IFC2X3 and IFC4. IFC4 contains many new features compared to IFC2X3, such as improved geometry representations, geolocation support, and more element categories. However, IFC4 support is less prominent than IFC2X3, though this is changing. IFC2X3 has been an ISO standard since 2005, and IFC4 has been an ISO standard since 2013.

IFC data is most commonly found in a plain text file format with the file extension .ifc. This is one of many possible ways to store IFC data. Other methods include:

  • .ifc IFC-SPF format, a commonly used plain text format based on STEP
  • .ifczip IfcZIP format, where a single .ifc file is compressed into a ZIP package
  • .ifcxml IfcXML format, a plain text format
  • .json JSON format, a plain text format
  • .hdf HDF5 format, a binary format
  • .sqlite SQLite format, a binary format