Getting started with IFC import
Last modified by Luis Sanchez on 2026/08/20 09:09
Previous (Annex) | Start | Next (Recommended process to import BIM into IDA ICE)
Checklist for IFC import into IDA ICE
IDA ICE attempts to generate a meaningful geometrical simulation model from an IFC file. This requires specific conditions in the IFC structure, geometry, and relationships. The checklist below follows the logic of the import process and highlights both requirements and consequences if they are not met.
Basic File Requirements
| Requirement | Explanation / IDA ICE Behavior |
|---|---|
| IFC version | IDA ICE supports IFC of versions 2x, 2x2 and 2x3 IFC 1.51 and 2.0 are not supported from IDA ICE 4. |
| There must be at least one IFC Project. | The project is needed for establishing the units used in the data. If there is more than one project, IDA ICE takes the first one. |
| There must be at least one IFC Building. | The building is used to establish the ground level. The user can select which building to import if more than a single building is found. |
| There must be at least one IFC BuildingStorey in the building. | IDA ICE imports each storey and its building elements separately and tries to make a Building body from a storey. |
| There must be an IFC Space for every room. | If IFC Spaces are used, IDA ICE can connect different components (walls, windows, doors,...) with this space. That makes it easier to model the IDA ICE Zones afterwards. |
Building Structure
| Requirement | Explanation / IDA ICE Behavior |
|---|---|
| All walls, windows and doors should be contained by a single building storey. | IDA ICE does not support objects that are contained by multiple storeys. |
| Building storeys should not intersect. | IDA ICE supports only nonintersecting storeys. If intersecting, IDA ICE cuts storeys into smaller nonintersecting pieces. |
| The building roof should cover every building storey that is not covered by another building storey. | Missing coverage may lead to incorrect building envelope interpretation. |
| A building storey footprint should not contain holes | IDA ICE can calculate only the outer contour for storeys. Any hole in the storey footprint is ignored. |
Element Relationships (Openings, Windows, Doors)
| Requirement | Explanation / IDA ICE Behavior |
|---|---|
| Any window or door should be contained by a wall via an opening. | If not, IDA ICE can’t place a door or a window at the proper place. The window or door is not imported. |
| The local coordinate system of an opening should refer to the local coordinate system of the walls containing it | If not, IDA ICE can’t place a door or a window at the proper place. The window or door is not imported. |
| Any window or door should lie completely within wall borders. | IDA ICE does not support windows and doors that are completely or partly outside a wall. The window or door is ignored partly or entirely. |
Geometry Definition
| Requirement | Explanation / IDA ICE Behavior |
|---|---|
| A space should have an explicitly given footprint without holes. | IDA ICE uses only prismatic zones with a cutted top. Any hole in the space shape is ignored. A space without a footprint is ignored. |
| A wall should have an explicitly given center-line axis. | If not, IDA ICE tries to derive an axis by using wall-shape. |
| Walls should be vertical, have constant thickness and be linear or circle arcs. | If not, IDA ICE tries to simplify a more complex shape to a shape of a given type. |
Geometry, Complexity & Limits
| Requirement | Explanation / IDA ICE Behavior |
|---|---|
| There is a limit to the complexity of objects. | For very complex geometries a single object may be described by a single line of a size (number of symbols) exceeding 32K. If so, IDA ICE tries to understand a long line anyway but without warranty. |
| There is a limit to the complexity of cut geometry (a geometric shape is cut by several cutting planes) | Such a shape description is indirect and the actual geometry needs to be calculated. The result can be unpredictable. Cuttings are applied until the calculation fails. If calculation fails, the last result before failure is used. |
| A building storey should not have more than 1500 walls. | Calculation for a storey needs too much memory if the number of walls is big. The calculation of the external walls and the outline of the storey is skipped, the outline is replaced with a rectangle |
| There is a limit to the complexity of brep geometry: a polyhedron should not have more than 2000 sides by default | Calculation for a polyhedron needs too much memory if the number of sides is big. If so, the object is ignored. |