A simple web application for converting GML (Geography Markup Language) files to IFC4X3 format.
- 🎯 Simple Interface: Single-page app with drag-and-drop file upload
- 📁 Batch Processing: Convert multiple GML files at once
- 📥 Easy Download: Download individual files or all as a ZIP archive
- ⚙️ Configurable: Adjust EPSG codes and MapConversion settings
- 📊 Visual Feedback: See coordinate bounds and processing status
- Clone the repository:
git clone https://github.com/YOUR_USERNAME/gml-to-ifc-converter.git
cd gml-to-ifc-converter- Install dependencies:
pip install -r requirements.txt- Run the app:
streamlit run app.pyThe app will open in your browser at http://localhost:8501
- Push your code to GitHub
- Go to share.streamlit.io
- Connect your GitHub repository
- Deploy!
docker build -t gml-to-ifc-converter .
docker run -p 8501:8501 gml-to-ifc-converter- Upload GML Files: Click "Browse files" or drag and drop your GML files
- Configure Settings (optional): Expand the settings panel to adjust:
- Default EPSG code
- MapConversion toggle
- Download Results:
- Single file: Direct download button
- Multiple files: Download as ZIP or individual files
- Input Format: GML files with polygon geometry
- Output Format: IFC4X3 with IfcBuildingElementProxy objects
- Coordinate Systems: Automatic EPSG detection or configurable default
- Geometry: Creates proper 3D surface models with face-based geometry
Edit the following constants in app.py:
DEFAULT_EPSG_CODE = 25832 # Default EPSG code if not found in GML
USE_MAP_CONVERSION = False # Enable/disable MapConversion- Python 3.8+
- streamlit
- ifcopenshell
MIT License
Victor Budinic