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

How can i convert my CAD(DWG) file to GeoJSON?

本文关键字:文件 转换 GeoJSON DWG 我的 CAD      更新时间:2023-09-26

我正在开发openlayers,需要用ArcGIS将dwg格式更改为GeoJSON。我该怎么做呢?

确实,GDAL有必要的工具来完成这项工作。ogr2ogr是GDAL附带的一个程序,它可以转换各种格式,包括DWG。如果你还没有安装GDAL,这里有一些很好的windows和mac/linux教程。下面的指南建议首先转换为DXF,因为从DXF转换的库在默认情况下包含在GDAL中。您将需要安装一些额外的依赖项来直接从DWG转换。如果您先转换为DXF,那么您可以使用命令行转换为GeoJson:

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

如果您使用的是ArcGIS Desktop,那么您可以使用CAD到Geodatabase的工具

即使GDAL是DXF文件(也是CAD文件)的良好工作解决方案

由于OOP询问DWG文件,我建议使用LibreDWG库,它支持从DWG到GeoJSON文件的转换,并且具有非常好的性能。

你可以这样使用:

dwgread <input_file_path> -O GeoJSON -o <output_file_path>

这个奇妙的库还提供了许多其他命令。我目前也在一个开源项目gefiles - converter 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"

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

可能您还需要将您的坐标从AutoCAD (if米单位)与geojson (GPS坐标)进行匹配。

  • 第一个:lambert 93选择你瞄准的世界区域的一部分。
  • 第二:3点专注于仿射变换以适应AutoCAD几何(旋转,平移,缩放)。

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

另外,DWG到DXF的解决方案(ODAFileConverter在无人值守的Docker):https://github.com/open-indoor/dwg-to-dxf