This program is a collaboration with Fengyan Zhang(zmocheng@gmail.com), I am mainly responsible for the Convex Hull algorithm, Fengyan is responsible for the algorithm of splitting into individual OBJs and transforming into Polyhedra. Thanks Fengyan!
This program is to implement a automatic BIM(IFC model) to Geo(CityJSON model) conversion for one building. It is implemented in C++ with CGAL library, and Niels Lohmann’s JSON for Modern C++ library.
The workflow of the program is illstrated below:
the original Ifc file looks like:
We use IfcConvert to convert IFC model to OBJ model:
IfcConvert --include+=entities IfcSlab IfcDoor IfcWindow IfcWall --weld-vertices --orient-shells --validate KIT.ifc KIT.obj |
(KIT.ifc is the self-defined filename)
The outer shell and the inner shell looks like:
tips: this program is more suitable for buildings with only one floor.