【发布时间】:2017-01-05 23:08:00
【问题描述】:
我正在开发 openlayers,需要使用 ArcGIS 将 dwg 的格式更改为 GeoJSON。 我该怎么做?
【问题讨论】:
标签: javascript openlayers arcgis
我正在开发 openlayers,需要使用 ArcGIS 将 dwg 的格式更改为 GeoJSON。 我该怎么做?
【问题讨论】:
标签: javascript openlayers arcgis
【讨论】:
确实,GDAL 拥有完成此任务的必要工具。 ogr2ogr 是一个包含在 GDAL 中的程序,它可以转换一个variety of formats,包括 DWG。如果您还没有安装 GDAL,这里有 windows 和 mac/linux 的好教程。 following guide 建议首先转换为 DXF,因为用于从 DXF 转换的库默认包含在 GDAL 中。您需要安装一些额外的依赖项才能直接从 DWG 转换。如果先转成DXF,再用命令行转成GeoJson:
ogr2ogr -f GeoJSON ./mynewfile.geojson ./mycadfile.dxf
如果您使用的是 ArcGIS Desktop,则可以使用 CAD to Geodatabase tool。
【讨论】:
即使GDAL 是DXF 文件(也是 CAD 文件)的良好且有效的解决方案
由于OOP询问DWG文件,我建议使用LibreDWG库,支持DWG到GeoJSON文件的转换,性能非常好。
你可以这样使用它:
dwgread <input_file_path> -O GeoJSON -o <output_file_path>
这个奇妙的库还提供了许多其他命令。 我目前也在从事一个开源项目Geofiles-convertor Rest API,这是一个旨在使流行的地理文件格式转换更容易的 REST API。 它还基于 GDAL 和 LibreDWG,并且有一个可以运行的 Docker 映像。
【讨论】:
您可能还需要将您的坐标从 AutoCAD(如果以米为单位)匹配到 geojson(GPS 坐标)。
你可以看看这个文档: https://github.com/open-indoor/openindoor6/blob/main/AUTOCAD.md
另外,DWG 到 DXF 的解决方案(无人值守 Docker 中的 ODAFileConverter): https://github.com/open-indoor/dwg-to-dxf
【讨论】: