SuperAPI AI 工具集

crosstech-impl-qgis-bim-georef

通用与其它

查看项目

更新于 10-15 22:17

技能介绍

用途:面向 BIM 到 GIS 的集成任务,主要解决在 QGIS 中放置 IFC 模型、把 IFC 轮廓导入地图,以及在 BIM 局部坐标与 GIS 全局坐标之间做坐标转换。

主要能力与推荐路线:资料推荐的集成方式是 IfcOpenShell + PyQGIS,可处理完整 3D 且灵活性高;GDAL/OGR 在 GDAL 3.9 没有原生 IFC 驱动,不能直接读取 IFC;Speckle QGIS 连接器被描述为遗留连接器,几何支持有限。

必要用法与模式:先检查 IFC 是否同时含 IfcMapConversion 与 IfcProjectedCRS,缺失则先添加地理配准。用 IfcOpenShell 提取几何时设置 settings.set(settings.USE_WORLD_COORDS, True),批量处理用 ifcopenshell.geom.iterator() 并配合多进程。本地坐标到投影坐标用 ifcopenshell.util.geolocation 的 auto_xyz2enh()、xyz2enh()、enh2xyz(),再通过 pyproj 转换到目标 CRS,调用 Transformer.from_crs() 时使用 always_xy=True。导出 BIM 到 GIS 使用 GeoPackage,不用 Shapefile,因为 Shapefile 会丢失 Z 值且字段名限 10 字符。2D 投影前按楼层过滤,避免多层元素重叠。使用 PyQGIS 时坐标顺序为 (easting, northing) / (x, y)。

适用场景:IFC 轮廓叠加地图、BIM 构件转点或面图层、投影到 OpenStreetMap 等底图、以及不同 CRS 之间的坐标转换。

限制与注意事项:IFC 项目单位不一定是米,需从 IfcProject 的 IfcUnitAssignment 读取;不要在工程工作中使用 EPSG:3857;不要混用垂直基准;导出到 QGIS 会丢失材质关联、参数化定义、布尔运算原始 CSG 树、精确曲线和 IfcRelAggregates 层级。资料未提供收费、价格或平台授权信息。