A Python tool for converting IFC (Industry Foundation Classes) files to IDA (Indoor Database ASCII) compatible formats
Project description
IFC2IDA
A Python package for converting IFC (Industry Foundation Classes) files to IDA (Indoor Database ASCII) compatible formats, designed for BIM (Building Information Modeling) data analysis workflows.
Features
-
IFC Parsing: Extract geometric and semantic data from IFC files using
ifcopenshell. -
Data Transformation: Convert IFC entities into structured formats (e.g., CSV, JSON, Parquet) for analysis.
-
Customizable Pipelines: Define rules to map IFC properties to IDA-compatible schemas.
-
CLI Support: Command-line interface for batch processing.
Installation
pip install ifc2ida
For development dependencies:
pip install ifc2ida[dev]
Usage
Basic Conversion
from ifc2ida import convert
# Convert IFC to CSV
convert.ifc_to_csv("input.ifc", "output.csv")
# Convert IFC to Parquet
convert.ifc_to_parquet("input.ifc", "output.parquet")
Command Line Interface
ifc2ida --input model.ifc --output data.csv --format csv
Custom Schema Mapping
Create a JSON configuration file (schema_config.json):
{
"Walls": {
"attributes": ["Name", "Volume", "Material"],
"filters": {"ClassName": "IfcWall"}
}
}
Then run:
from ifc2ida import CustomConverter
converter = CustomConverter("schema_config.json")
converter.convert("input.ifc", "output.parquet")
Documentation
Full documentation available at GitHub Wiki.
Contributing
-
Fork the repository.
-
Create a feature branch (
git checkout -b feature/your-feature). -
Commit changes (
git commit -am 'Add some feature'). -
Push to the branch (
git push origin feature/your-feature). -
Open a Pull Request.
License
MIT License. See LICENSE for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file ifc2ida-0.1.0.tar.gz.
File metadata
- Download URL: ifc2ida-0.1.0.tar.gz
- Upload date:
- Size: 2.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
af4492ee922f4310efcc95e4b11c5c656b5e42dec57e2a5059b09adb013d65ee
|
|
| MD5 |
88711c04ba9001f866a60314c602496d
|
|
| BLAKE2b-256 |
6b141cbef4e9b9d1f220719cebb2e0ae9ea3004229049143b12028f434d6daf4
|