结合 ArcGIS 对 CAD 地图入库处理

为了避免手动输2w6平的地图,也不想自己写系统来处理,终于摸索出一条曲线救国大法。

环境

  • 数据库
    • PostgreSQL(需添加 PostGIS 插件)
  • 软件
    • ArcGIS
    • AutoCAD(可选)

步骤

结合 ArcGIS 对 CAD 地图入库处理



ArcGIS 常用工具

结合 ArcGIS 对 CAD 地图入库处理


一、导入 CAD

❗️ ArcGIS 支持 CAD 数据的查看、导入、导出,但不支持编辑

❗️ 本人使用的ArcGIS版本为10.2,最高只支持2010版的CAD文件,高版本需要将其降为2010以下版本(大坑!)

  1. 添加 CAD 数据

    也可从目录窗口中直接拖入CAD文件

    结合 ArcGIS 对 CAD 地图入库处理


二、绘制自己的 shp

  1. 新建 shp 图层

    目录 — 新建 — Shapefile — 命名 — 选择需要的要素类型 — 确定

    结合 ArcGIS 对 CAD 地图入库处理


  1. 打开属性表,添加字段

    结合 ArcGIS 对 CAD 地图入库处理


  1. 选中新图层,进入编辑模式

    结合 ArcGIS 对 CAD 地图入库处理


  1. 创建第一个要素,作为框架

    结合 ArcGIS 对 CAD 地图入库处理


  1. 选中外围要素

    结合 ArcGIS 对 CAD 地图入库处理


  1. 使用裁剪面对选中要素划分

    点要素按照步骤4方法直接添加

    结合 ArcGIS 对 CAD 地图入库处理


  1. 添加属性

    结合 ArcGIS 对 CAD 地图入库处理


三、导入 shp 到 postgreSQL

工具: PostGIS PostGIS Bundle 3 for PostgreSQL x64 12 Shapefile and DBF Loader Exporter


准备工作
在PostgreSQL数据库中加载PostGIS扩展

CREATE EXTENSION postgis; # 加载postgis空间扩展

SELECT postgis_full_version();  # 确认是否加载成功

结合 ArcGIS 对 CAD 地图入库处理


  1. 连接 postgreSQL

    结合 ArcGIS 对 CAD 地图入库处理


  1. 选择要导入的 shapefile 文件

    导入参数:

    • Table:要导入的目标表名称
    • Geo Column:geom属性字段名
    • SRID:空间参考标识符(超纲了,有点难懂,目前还用不到它,感兴趣的可以参考 PostGIS教程四:加载空间数据
    • Mode:操作模式
      • Create:新建表,表名为{ Table }的值
      • Append:附加到表名为 {Table} 的表后面
      • Delete:清空表名为 {Table} 的表内容
      • Prepare:我也不是很清楚

    结合 ArcGIS 对 CAD 地图入库处理


  1. 导入

    结合 ArcGIS 对 CAD 地图入库处理


  1. 数据库中查看

    结合 ArcGIS 对 CAD 地图入库处理


四、空间坐标系问题

CAD 提供两种坐标系

  • WCS(世界坐标系)
  • UCS(用户坐标系)



导入到 ArcGIS 时会提示警告
⚠️ 未知的空间参考

结合 ArcGIS 对 CAD 地图入库处理


导入结果

坐标系显示未定义,坐标值为 CAD 中 WCS 下的坐标值

结合 ArcGIS 对 CAD 地图入库处理

对要素第一次进行投影,添加了坐标系,但坐标值保持不变

对要素第二次进行投影,坐标系变换,同时坐标值也会换算过去

上一篇:Linux安装postgis


下一篇:PostgreSQL的学习心得和知识总结(二十八)|PostgreSQL数据库数据类型详解及新增数据类型的实现