SkillAgentSearch skills...

Ifcplusplus

IfcPlusPlus is an open source C++ class model, as well as a reader and writer for IFC files in STEP format. Features: Easy and efficient memory management using smart pointers. Parallel reader for very fast parsing on multi-core CPU's. Additionally, there's a simple IFC viewer application, using Qt and OpenSceneGraph. It can be used as starting point for all kinds of applications around the open building model standard IFC.

Install / Use

/learn @ifcquery/Ifcplusplus
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

ABOUT IFC++

This repository is more or less archived.<br> If you need support or customization for existing projects, it is still available (please contact info at ifcquery.com)<br> For new projects, I recommend Web-ifc (https://github.com/ThatOpen/engine_web-ifc), since it fulfills the same purpose, CSG operations are more stable, and it can run also in WASM.<br>

Follow-up and alternative to IFC++

IfcSplitAndMerge is a light weight but high performance application based on web-ifc (not IFC++): https://github.com/ifcquery/IfcSplitAndMerge <img width="2907" height="1955" alt="IfcSplitAndMerge1" src="https://github.com/user-attachments/assets/6025fbee-fbd1-4177-80cd-f55c3121aa8d" />

The IFC library used in IfcSplitAndMerge is called web-ifc https://github.com/ThatOpen/engine_web-ifc. It does not have an object oriented approach for all IFC entities like IFC++. Instead it has a tape reader, so the STEP file content is kept as-is, just with tokens inserted before each attribute, which allows positioning the read cursor to read all entities and attributes with a very low memory footprint and high performance.<br>

Web-ifc is so light weight, it can be directly compiled into a C++ console or GUI application, or linked as a library on Windows or Linux. It even compiles and runs efficiently as WebAssembly.

Minimal IFC file loading example using web-ifc

https://github.com/ifcquery/IfcFileLoader is an example C++ project that demonstrates how to load an IFC file, read elements, create meshes etc. using web-ifc. It does not convert the meshes into OSG geometry and has no Qt based UI like IfcSplitAndMerge.

Related Skills

View on GitHub
GitHub Stars648
CategoryDevelopment
Updated2d ago
Forks225

Languages

C++

Security Score

95/100

Audited on Mar 18, 2026

No findings