基于ArcGIS的CAD数据向GIS数据转换方法

1 CAD数据与ArcGIS数据介绍
 地图数据来源多种多样,大多数使用的是计算机辅助设计软件(CAD)制作的数据,CAD软件制图自动化程度高,操作简单,容易编辑,出图美观,且易于进行二次开发,因此CAD格式地图数据转换为其他GIS软件能支持的格式是在工作中经常用到的操作。ArcGIS作为GIS领域内常用软件,具有强大的数据分析、数据管理等功能,且能建立功能强大的本地数据库。本文以CAD数据到GIS数据转换为出发点,介绍由CAD数据到ArcGIS软件支持读取和编辑的矢量数据格式的转换方式。

2数据转换前的准备工作

CAD与ArcGIS在数据结构上存在较大的差异,CAD数据类型较为丰富,支持简单点、线、面、多义线、椭圆、块、文字等多种数据类型,而转换到ArcGIS中,只转换为点、线、面、注记等类型,这使得CAD图形数据不能很好的满足ArcGIS的要求,如:CAD中的Text数据类型,直接转换后只转换为ArcGIS中的Point,因此在做数据转换前,需要对源数据进行预处理。

(1)重命名CAD文件,如果转换前后数据命名规则有差异,最好重命名数据,保证在做完数据格式转换后,仍能清晰区分图层内容。

(2)筛选转换内容。如果只需将CAD文件的部分图层或只对图层中的一部分内容感兴趣,只要选择需要转换格式的图层,将它们复制到一个新的CAD文件中,留作转换备用。

(3)删除多余要素。采用擦除工具将所有多余要素删除,如:标题、边界、图例等,只留下需要进行转换的几何要素即可。

(4)CAD图层内容提取。数据转换前,确保所有要素都只存在于一个属于它们的图层中,擦除所有不属于本层的要素,或者将其复制到一个新的图层中。

(5)检查CAD数据坐标系统。大多数CAD数据的坐标系都采用GIS系统中能够识别的坐标系统,确定CAD的坐标系统有利于GIS坐标系统的确定级转换后坐标系统的处理。

为减少数据格式转换后大量的后续数据处理工作,数据转换前的工作非常必要,能够使转换后的问题尽量减少,不会出现重大错误,又能保证数据转换的精度。

3 CAD 到GIS数据转换方法

ArcGIS软件的ArcToolbox工具箱中有2个数据格式转换工具,分别是Conversion Tools 和Data Interoperability tools,其中,Conversion Tools有直接转换为 Geodatabase格式的工具(Feature class to featureclass),采用该工具进行格式转换时,原始数据只能是要素类(Feature class),

也可以在要素类上直接单击右键,选择Export 转换,这种方法比较简单,能够直接调用工具箱中的Feature class to feature class 工具,只需要注意当转换出的数据为Geodatabase格式时,数据的输出目标位置为数据库;当转出的数据位shapefile格式时,数据输出的目标位置为文件夹。

以上方法在地图图形元素不多时,可以采用。但是当DWG文件内元素个数过多时,如果无法再ArcGIS中显示,不能直接做转换,建议采用Data interoperability tools中的Quick Import工具先将CAD数据转换成Geodatabase格式,再经过处理后转换为需要的shapefile格式。

4 转换后处理

(1)拓扑重建

CAD数据转换为GIS数据后,经常会出现要素变形或数据冗余问题,为确保数据正确性,必须保证地物点的正确性、线要素连接完整、面要素封闭等拓扑规则。

点图层经常会出现重复点、悬挂点或伪节点等,如果有重复点,可在开启编辑的状态下采用“删除”操作。并为点要素设置合适的符号化样式。

线图层出现比较多的是连通性问题,可对同一图层的同一条线采用select操作查询到,在开启编辑的状态下调用(merge)方法实现线的融合。

多边形要素主要检查公共边是否重复及多边形的封闭性,可对面图层构建拓扑,利用数据库的拓扑规则进行检查并修改。

在将多个图层(点、线、面)合并为一个图层时,可采用ArcToolbox工具箱中的Append工具进行操作。另外,可调用Data management tools——Features——Feature to polygon做线转面操作,利用Features工具集下的工具做其他几何类型间的转换。

(2)赋属性值

CAD数据没有属性信息,而ArcGIS数据的属性表是其数据的重要组成部分,为了完善数据,数据格式转换后,可手动为Geodatabase数据或shapefile数据添加新字段,赋予属性值,但数据量比较大时,输入属性值耗费大量的人力,可调用工具箱中的Spatial Join工具将一个要素类图层的属性按照空间位置关系自动关联到与其相关的另一个图层上,实现属性值的自动批量追加,极大的提高了工作效率。

来自:www.higis.cn/Tech/tech/tId/34

 

基于ArcGIS的CAD数据向GIS数据转换方法(转)的更多相关文章

  1. (转) 基于Arcgis for Js的web GIS数据在线采集简介

    http://blog.csdn.net/gisshixisheng/article/details/44310765 在前一篇博文“Arcgis for js之WKT和geometry转换”中实现了 ...

  2. ArcGIS中的坐标系统定义与投影转换方法

    坐标系统是GIS数据重要的数学基础,用于表示地理要素.图像和观测结果的参照系统,坐标系统的定义能够保证地理数据在软件中正确的显示其位置.方向和距离,缺少坐标系统的GIS数据是不完善的,因此在ArcGI ...

  3. ArcGIS 10——地理数据库管理GIS数据

    写本文的最初意向是当前正在进行的项目中有实现ESRI版本化数据管理的功能模块,碰到一些棘手的问题,几经周折还是决定系统学习ArcGIS10的帮助文档.(文章摘抄的比较多) 地理数据库是用于保存数据集集 ...

  4. 采集的GPS数据如何正确显示在arcgis和cad中

    利用GPS定位卫星,在全球范围内实时进行定位.导航的系统,称为全球卫星定位系统,简称GPS.GPS是由美国国防部研制建立的一种具有全方位.全天候.全时段.高精度的卫星导航系统,能为全球用户提供低成本. ...

  5. ArcGIS 网络分析[2] 利用自定义基础数据创建网络数据集

    前言 似乎除了官方介绍的例子,我还没有在网上见过一篇介绍如何"使用自己的数据"创建"网络数据集"的文章. 有介绍几何网络的,有介绍如何用官方SanFrancis ...

  6. 聊聊GIS数据的四个分层与GIS服务

    本篇不讨论矢量栅格数据的结构,也不讨论矢量与栅格的区别(即设定读者有这方面的基础). 版权声明:原创.博客园/B站/小专栏/知乎/CSDN @秋意正寒 转载请标注原地址并声明转载: https://w ...

  7. 通过SQL直接插入、修改ArcGIS SDE空间表中的数据

    基于Arcgis Server 10.1 +Oracle 11g环境测试 ArcGIS SDE ? 1 2 INSERT INTO CAMERA_INFO(OBJECTID,ID,SHAPE)     ...

  8. 基于 WebSocket 实现 WebGL 3D 拓扑图实时数据通讯同步(二)

    我们上一篇<基于 WebSocket 实现 WebGL 3D 拓扑图实时数据通讯同步(一)>主要讲解了如何搭建一个实时数据通讯服务器,客户端与服务端是如何通讯的,相信通过上一篇的讲解,再配 ...

  9. Mybatis框架基于注解的方式,实对数据现增删改查

    编写Mybatis代码,与spring不一样,不需要导入插件,只需导入架包即可: 在lib下 导入mybatis架包:mybatis-3.1.1.jarmysql驱动架包:mysql-connecto ...

随机推荐

  1. [WebShow系列] 现场控制台操作方法

    正在制作......,敬请期待. 现场控制台操作方法 现场控制台是现场管理员的管理后台.现场管理员首先登录指定的网址.使用现场管理员指定的登录名及密码就可以登录到后台.在后台点击[WebShow现场控 ...

  2. ProgressBar(进度条)、SeekBar(拖动条)与星级评分条(RatingBar)

    1.ProgressBar(进度条) (1)介绍 (2)常用属性 (3)xml代码 <ProgressBar android:id="@+id/progressBar2" s ...

  3. HDU - 1520 树形DP入门题

    写了两种DP,第一种是按照自己习惯来xjb敲的,第二种参考别人 熟悉一下树形DP的套路 dp[i][]是维护i及以下的关系最优值的,所以我觉得两次DP记忆搜索之间不清-1应该是正确的(也就做了一次加法 ...

  4. es6 封装一个基础的表单验证

    1, 需求分析 设计一个通用的表单验证,如果后期表单中添加了更多的需求,不需要更改之前的代码逻辑,最好不要改之前的代码,需要加什么直接加就好了. 2,代码分析 此表单验证最好返回一个函数,在api设计 ...

  5. 计算hashCode通用计算公式

    1.java计算公式 @Override public int hashCode() { //设置初始值 ; //假设有效域为: name,age,idCardNo,incomeAnnual,sex, ...

  6. Unix或Linux中&、jobs、fg、bg等命令的使用方法

    [From] http://blog.sina.com.cn/nenutechnology fg.bg.jobs.&.ctrl + z都是跟系统任务有关的,虽然现在基本上不怎么需要用到这些命令 ...

  7. 一种简单快速的模板解析方法,活用with javascript版

    //一种简单快速的模板解析方法,活用with var parseTpl = function( str, data ) { var tmpl = 'var __p=[];' + 'with(obj|| ...

  8. mysql数据库知识

    学而时习之,不亦说乎!                              --<论语> 数据库所有操作的总结.   1.mysql的数据库服务为mysqld.exe   windo ...

  9. JS判断包括IE11在内的IE浏览器

    function isIE() { //ie? if (!!window.ActiveXObject || "ActiveXObject" in window) return tr ...

  10. PIE SDK最小噪声变换

    1.算法功能简介 最小噪声分离变换是用于判定图像数据内在的维数(即波段数),分离数据中的噪声,减少随后处理中的计算需求量. MNF 本质上是两次层叠的主成分变换.第一次变换(基于估计的噪声协方差矩阵) ...