如何将 CAD (DWG) 文件转换为 GeoJSON?

问题描述 投票:0回答:4

我正在使用 OpenLayers,我需要将 DWG 文件转换为 GeoJSON 格式。 我该怎么做?

javascript openlayers arcgis
4个回答
17
投票

确实,GDAL 拥有完成此任务所需的工具。 ogr2ogr 是 GDAL 附带的一个程序,可以转换多种格式,包括 DWG。如果您尚未安装 GDAL,这里有针对 windowsmac/linux 的优秀教程。 以下指南建议首先转换为 DXF,因为 GDAL 默认包含用于从 DXF 转换的库。您将需要安装一些额外的依赖项才能直接从 DWG 进行转换。如果先转换为 DXF,则可以使用命令行转换为 GeoJson:

ogr2ogr -f GeoJSON ./mynewfile.geojson ./mycadfile.dxf

如果您使用的是 ArcGIS Desktop,则可以使用 CAD 到地理数据库工具


5
投票

即使 GDALDXF 文件(也是 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 镜像。

Windows 用户

对于 Windows 用户,您可以从 GitHub 下载最新版本(win32.zip 或 win64.zip),其中包含

dwgread.exe
文件。

然后您可以在下载的文件夹位置打开终端并运行命令

dwgread.exe "D:\path\to\file.dwg" -O GeoJSON -o "D:\path\to\output.json"


1
投票

GDAL可以用来做到这一点,我也想说ogr2ogr,但不是100%。


0
投票

您可能还需要将 AutoCAD 中的坐标(如果以米为单位)与 geojson(GPS 坐标)相匹配。

  • 首先:lambert 93 选择您瞄准的世界区域的一部分。
  • 第二:关注仿射变换以适应 AutoCAD 几何图形(旋转、平移、缩放)的 3 点。

您可以看看这个文档: https://github.com/open-indoor/openindoor6/blob/main/AUTOCAD.md

还有一个 DWG 转 DXF 的解决方案(无人值守 Docker 中的 ODAFileConverter): https://github.com/open-indoor/dwg-to-dxf

© www.soinside.com 2019 - 2024. All rights reserved.