Generation of simulation geometries for CFD and BEPS.
Partially developed within the BIM2SIM project.
Generates watertight and valid space geometries from IFC4 building geometry.
Full attribution according to IFC4 standard.
Resolves issues like clashes and gaps.
CFD-mode: Exports an STL with solids representing spaces (closed air volumes).
BEPS-mode: Exports an IFC4 with generated IfcSpace, IfcRelSpaceBoundary1stLevel and IfcRelSpaceBoundary2ndLevel entities.
Prerequisites: IFC4 file with 3D building geometries (especially IfcBuildingElements).
See PhD thesis
Building Elements (left) | Generated air volumes/spaces (right):
An instruction (Dockerfile) can be found here
Miscellaneous
sudo apt-get install git cmake gcc g++
# this will install most of the third-party libraries needed by OpenCascade
sudo apt-get install tcllib tklib tcl-dev tk-dev libfreetype-dev libxt-dev libxmu-dev libxi-dev libgl1-mesa-dev libglu1-mesa-dev libfreeimage-dev libtbb-dev qt5-default libomp-dev
sudo apt-get install libboost-all-dev libxml2-dev
Clipper 6.4.2 - an open source freeware library for clipping and offsetting lines and polygons
sudo apt-get install libpolyclipping-dev
R-Trees: A Dynamic Index Structure for Spatial Searching
Already included as header-only
Triangle: A Two-Dimensional Quality Mesh Generator and Delaunay Triangulator
Already included as header-only
ConvexDecomposition: Decomposing and slicing concave polygons into convex polygons
Already included as header-only
STL Reader: Read STL geometry files into user provided containers
Already included as header-only
mkdir build
cd build
cmake ../cmake # or ccmake for GUI, argument _-DSTATIC_OCC_IFCOS=OFF_ or _ON_ for dynamic or static build (includes OCC and IfcOpenShell), -DCLIPPER_INCLUDE_PATH="/usr/include/polyclipping"
make -j16 # number of CPU
IFC result file:
./IFC2SB -j16 --graph /home/fluid/Downloads/IFCfiles/AC20-FZK-Haus.ifc
STL result file:
./IFC2SB -j16 --graph --stl /home/fluid/Downloads/IFCfiles/AC20-FZK-Haus.ifc
SB Viewer:
./SBV /home/fluid/Downloads/IFCfiles/AC20-FZK-Haus_with_SB.ifc s
s = 1 for 1stLvlSB, s = 2 for 2ndLvlSB
Space Boundaries for BEPS as .ifc
First level space boundaries, attributed according to IFC4
Second level space boundaries, attributed according to IFC4 (e.g. opening SBs, right image)
@phdthesis{Fichter2022,
title = {Automatisierte Erzeugung geometrischer Modelle für die Gebäudesimulation im Kontext des Building Information Modeling},
author = {Fichter, Eric},
year = 2022,
school = {RWTH Aachen University}
}
@inproceedings{Fichter2021,
title = {Automatic generation of second level space boundary geometry from {IFC} models},
author = {Fichter, Eric and Richter, Veronika and Frisch, Jerome and {van Treeck}, Christoph},
year = 2021,
booktitle = {Proceedings of Building Simulation 2021: 17th Conference of IBPSA}
}
@software{IFC2SB,
title = {IFC2SB},
author = {{Fichter, Eric}},
url = {https://git.rwth-aachen.de/fichter/ifc2sb},
version = {1.0},
date = {2022-01-01}
}
Eric Fichter
[email protected]
E3D - Institute of Energy Efficiency and Sustainable Building
RWTH Aachen University