Difference between revisions of "IFC - Industry Foundation Classes"
Line 51: | Line 51: | ||
* [https://view.ifcopenshell.org/ IFC Pipeline] is an open source self-hosted IFC processing and visualization pipeline powered by [[IfcOpenShell]] | * [https://view.ifcopenshell.org/ IFC Pipeline] is an open source self-hosted IFC processing and visualization pipeline powered by [[IfcOpenShell]] | ||
* [[XbimXplorer]] is a Windows-only viewer capable of loading IFC2x3 and IFC4 models based on the [https://docs.xbim.net/index.html xbim toolkit] project | * [[XbimXplorer]] is a Windows-only viewer capable of loading IFC2x3 and IFC4 models based on the [https://docs.xbim.net/index.html xbim toolkit] project | ||
+ | * [https://3dviewer.net/index.html Online3DViewer] is a free and open source (MIT license) web solution to visualize and explore 3D models right in your browser. | ||
= External Resources = | = External Resources = |
Revision as of 22:34, 13 January 2022
![]() |
This page is relevant to understanding Industry Foundation Classes (IFC). The Industry Foundation Classes (IFC) Category includes all pages related to Industry Foundation Classes (IFC). |
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 International. 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.
IFC versions
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 formats
IFC data is most commonly found in a plain text file format with the file extension .ifc
. A common misconception is that IFC is only a intermediate file format. Instead, IFC is a schema, with a full file being only one of many possible ways to store or transfer OpenBIM data. It is possible to transfer portions of OpenBIM data, or full models, using a variety of serialisations. Other serialisations 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
In reality, currently only .ifc
and .ifczip
sees common usage.
IFC classes
In IFC, a single concept is known as an IFC class. There are hundreds of IFC classes. Examples of IFC classes are IfcWall
, IfcBuilding
, and IfcTask
. Classes can have attributes, for instance, the IfcWall
can have a Name
attribute. Classes can also have relationships to other classes, for example an IfcWall
can be related to an IfcBuilding
by being spatially contained within the IfcBuilding
.
Classes can inherit from other classes, building up a hierarchy of classes. If a class inherits from another class, it inherits all of its attributes and relationships. For example, the IfcProduct
class has a Representation
attribute, which can store 3D geometry that represents that class. Because the IfcWall
class inherits from the IfcProduct
class, it also has a Representation
attribute to store 3D geometry. However, the IfcPerson
class does not inherit from the IfcProduct
class, and so it does not have a Representation
attribute.
See also the article specific to IFC_classes
See also
- The Category:Autodesk Revit links to pages on using IFC in Autodesk Revit
- The Category:Graphisoft_Archicad links to pages on using IFC in ArchiCAD
- IFC.js is a javascript library for handling IFC data
- Xeokit is a Web Programming Toolkit for AEC Graphics, including IFC
- IFC Pipeline is an open source self-hosted IFC processing and visualization pipeline powered by IfcOpenShell
- XbimXplorer is a Windows-only viewer capable of loading IFC2x3 and IFC4 models based on the xbim toolkit project
- Online3DViewer is a free and open source (MIT license) web solution to visualize and explore 3D models right in your browser.
External Resources
- BuildingSMART_International Denmark have written an IFC Export Guide for Revit and ArchiCAD
- BuildingSMART_International International Modeling Support Group have written an IFC 2x Edition 3 Model Implementation Guide (PDF file)