RCP-compatible interface for Scan-to-BIM workflows (point cloud → IFC JSON)
- Dominant language
- C++
- Stars
- 14k
- Forks
- 2.6k
- Avg merge
- 5d 18h
- Merged PRs (30d)
- 6
Description
### Checklist
- [x] I have searched for [similar issues](https://github.com/isl-org/Open3D/issues).
- [x] For Python issues, I have tested with the [latest development wheel](https://www.open3d.org/docs/latest/getting_started.html#development-version-pip).
- [x] I have checked the [release documentation](https://www.open3d.org/docs/release/) and the [latest documentation](https://www.open3d.org/docs/latest/) (for `main` branch).
### Proposed new feature or change
Feature Description
Hi,
I would like to propose an idea that could extend Open3D into the Scan-to-BIM ecosystem by enabling interoperability with BIM tools such as BonsaiBIM via an RCP (Remote Control Protocol) interface.
🚀 Proposal
Introduce a lightweight interface (or example module) that allows Open3D to act as an external processing agent:
* Input: point cloud data (E57 / RCP / generic point sets)
* Output: structured BIM data (IFC-like JSON)
🔧 Concept
Open3D would not need to implement full BIM logic, but rather:
1. Accept point cloud data via API / RCP-like interface
2. Perform geometry processing:
* Plane detection (RANSAC)
* Clustering
* Surface extraction
3. Classify basic building elements:
* Walls (vertical planes)
* Floors / slabs (horizontal planes)
* Terrain
4. Return structured output describing detected elements
JSON output
{
"elements": [
{
"type": "IfcWall",
"start": [0, 0, 0],
"end": [5, 0, 0],
"height": 3.0,
"thickness": 0.2
},
{
"type": "IfcSlab",
"outline": [[0,0,0],[5,0,0],[5,5,0],[0,5,0]],
"thickness": 0.3
}
]
}
🧠 Key Idea
Open3D acts as a geometry + detection engine, while BIM tools (e.g. BonsaiBIM) handle:
* IFC creation
* Parametric modeling
* Data management
🏗️ Benefits
* Expands Open3D use cases into AEC / BIM domain
* Enables Scan-to-BIM workflows without proprietary software
* Allows integration with AI/ML pipelines and agents
* Creates a bridge between point cloud processing and open BIM ecosystems
💡 Optional Scope
* Provide a reference implementation (Python example)
* Define a minimal schema for IFC-like JSON output
* Allow streaming or chunk-based processing for large point clouds
❓ Question
Would it be feasible for Open3D to expose or support such an interface (e.g. via Python API or example service), enabling integration with external BIM tools through a protocol like RCP?
🌍 Potential Impact
This capability could have a significant global impact, especially in the context of:
* Heritage preservation and restoration
* Reconstruction of historical buildings
* Digitization of cultural assets
Many heritage structures exist only as:
* damaged sites
* incomplete documentation
* irregular geometries difficult to model manually
By enabling a pipeline:
point cloud → structured BIM (IFC)
we unlock:
* Faster and more affordable reconstruction workflows
* Better documentation of cultural heritage
* Open and accessible tooling for smaller organizations and researchers
* Long-term digital preservation of historical assets
This is particularly important for:
* Post-disaster reconstruction
* Conservation of aging architecture
* Democratizing access to advanced reconstruction tools
Bonus : ifc has few easy classification ifcwall, ifcsite, ifcwindow, ifcduct, ifcpipe, ifcslab
### References
_No response_
### Additional information
_No response_
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.