AutoCAD与ArcGIS的5种集成方式

AutoCAD是一款优秀的制图软件,在测绘上面也有广泛的应用,现在越来越多的测绘/测量的空间数据都采用GIS来管理,那么也往的AutoCAD格式数据如何与GIS集成哪?本节讨论一下AutoCAD与ArcGIS集成的几种方式。

对于使用和共享AutoCAD数据ESRI提供了不同的策略:

1、将AutoCAD数据作为GIS数据集的方式。即直接从本地文件读取CAD线画并作为一个有效的GIS数据源。ArcView GIS 3.X就有CAD Reader Extension)工具可以读取CAD文件作为有效的GIS数据源,当显示数据时,一个CAD文件被看作ArcView3环境的shapefile GIS数据源。并能支持CAD图形特征和扩展属性:颜色,线型,级别/图层,块名/cell名,文本值,文件位置/handle,MSLINK,cell或块属性,线宽,高程和实体类型等。一个独立的线画在ArcView被作为一个或多个主题,因为ArcView GIS只能工作在相同的几何类型主题,它需要从CAD文件提取四个有效几何类型(点,线,多边行,注记)来在ArcView作为一个主题显示,每个CAD线画可以象其它主题一样在ArcView被多次打开,这样就可以对CAD文件的不同对象进行显示控制(如对一个线画文件的道路,水管,水阀等根据需要进行符号化显示),类似的方法可以对AutoCAD或Microstation图层的可见性进行控制。 
     AutoCAD的块和Microstation的cell可被作为点,线或多边形几何的一个组成,当被作为点几何或它们的组成几何显示时,块属性和cell标记值将自动地包含在一个虚拟表。

2、将AutoCAD数据作为做为CAD要素类和CAD线画层读取
     ArcMap也可以直接浏览CAD文件。ArcGIS有两种方法来对待此信息,第一种途径是CAD要素数据对象,这和ArcView 3.x的CAD Reader Extension很相似。另外一种是作为一个单独的层显示CAD线画,用ArcGIS线画层你可以控制图层显示和查询对象。AutoCAD块和Microstation cell可被作为点或者点,线,多边形几何的组成来显示,块属性和cell标记值将自动包含在一个虚拟表(当你在ArcMap查找一个CAD对象时可以观察到)。在ArcGIS将CAD线画作为一个CAD线画层打开时,实体CAD线画被作为一个映射层,因此它的符号是静态的不能被修改,只能用于ArcGIS分析或查找。 
     当CAD线画被作为要素数据对象时,ArcMap创建了一个CAD要素类,可以对该要素类进行查询和分析,使用ArcGIS标准的符号编辑器来编辑要素符号。在ArcMap,地理属性被作为一个图层来表达,当从CAD线画创建图层时,可以选择要表达的线画层。例如,你可能只想在地图上看到街道,街道名称。
在ArcGIS可以直接访问多种CAD格式,包括Auto CAD的dwg(到2000版本),所有ASCII、二进制形式的DXF,dgn文件(到版本7)。此外,包含三维坐标信息的话也可以象在ArcMap一样在ArcScene环境显示。

3、使用ArcSDE CAD Client 
     ArcSDE CAD客户端是ArcSDE的空间数据客户端,允许用户依靠ArcSDE在AutoCAD或Microstation环境存放或取出数据并进行编辑。CAD客户端能够通过多个ArcSDE服务同时访问不同DBMS的数据,例如在同一时间访问一个ArcSDE for coverage管理的ArcInfo coverage数据,一个ArcSDE for Oracle管理的空间数据库,一个ArcSDE for SQLServer数据库,也能从ArcGIS Geodatabase的简单要素层访问数据。 相反地,当CAD数据被存储进一个DBMS时,GIS用户可以使用ArcSDE客户端(如MO,ArcGIS等)访问CAD数据的几何而不需要任何转换,每个CAD对象有一个翻译后的几何并作为一个有效的ArcSDE几何要素被存储。一些复杂的CAD几何,如椭圆,圆,块/cell等被翻译成一些ArcSDE客户端应用程序可以访问的几何。 
     CAD客户端存储CAD对象的一个二进制副本,它包括CAD对象的一切,象图形特征、块定义、块属性、标记、cell、x-data和其它自定义数据。一个CAD客户端用户可以访问所有ArcSDE管理的数据源,不管它在什么地方存放;同样,GIS用户也可以直接访问CAD客户端用户存储的CAD数据的几何,包括ArcIMS?软件。
ArcSDE CAD客户端访问ArcSDE for Coverages和Geodatabase只提供了读许可。
 
4、进行数据转换 
     Auto CAD数据经常需要经过组织和处理后才能在GIS应用程序可用,ESRI提供了不同的转换工具来帮助用户在GIS和CAD间更好地使用数据。

    (1)ArcView GIS 3.X(CAD Reader Extension)有一个内嵌的集成工具,根据属性/空间选择标准从一个CAD文件选择一组空间要素,选的对象集可以导出为shapefile。使用这个功能,ArcView 3.x能够转换CAD文件的CAD对象到ArcView GIS shapefile格式。

    (2)ArcGIS ArcCatalog-Simple Data Loader 
    在ArcCatalog选一个要素类并右击鼠标选择<Load Data>选项时就打开了Simple Data Loader向导工具,该工具提供了增加数据到已有要素类的方法。按照向导提示,你可以选择一个要导入的CAD数据源,然后向导将允许你映射CAD图形属性值到已有的数据库字段。另外该工具还提供了查询功能用来对导入源实体进行过滤,然后选的信息导被增加到要素类。在运用该工具前,地理数据库的要素类必须事先存在。
    (3)使用ArcGIS:ArcMap-Export Data
    从ArcMap使用Export Data工具,一个选的CAD要素集可以被导出为shapefile或导出进一个空的geodatabase要素类。在ArcMap选择要导出的CAD要素层,点击鼠标右键选择Export菜单,缺省的保存方式为shapefile类型。在ArcMapCAD文本的转换在操作上有些不同,因为ArcMap的CAD线画文本被作为一个混合的coverage annotation类型显示,因此必须使用转换coverage annotation功能来取得CAD文本,导入作为geodatabase annotation。这个工具没有在ArcMap标准工具条显示,需要你在从Label菜单选择加入到你定义的界面上。
    (4)ArcGIS:ArcMap-裁剪和粘贴
    加载数据到geodatabase要素类的另外一条途径是在ArcMap编辑会话期间使用裁剪和粘贴功能,然后就可以将选的数据一个具有同样几何类型的geodatabase要素类。该方法和ArcCatalog-Simple Data Loader都允许你往一个已有的要素类增加数据。 
    (5)ArcGIS:ArcToolbox-CAD到Geodatabase转换工具
    ArcGIS提供了一个CAD到Geodatabase转换工具来转换CAD数据到新的geodatabase要素类,该工具在ArcToolbox和ArcCatalog都是可用的。ArcToolbox转换工具允许你定义一个查询来选择CAD对象,然后转换并保存查询结果集到一个新的geodatabase要素类。不象ArcMap使用的方法保存数据是到一个已有的geodatabase要素类,ArcToolbox的转换工具将创建一个新的要素类作为转换过程的一部分,这样一个包含多种图形特征的CAD文件全部导出时会创建多个要素类。如果需要将多个线画转出到一个geodatabase的要素类,你需要在ArcMap使用Geoprocessing Wizard来对要素类进行合并。
    (6)使用CAD to Geodatabase Translator功能,CAD文本将被转换到一个点要素类。在CAD要素上的变化曲线信息在转换进geodatabase被保留,CAD几何特征和块/cell属性也在转换过程被保留。

    (7)使用ArcSDE CAD Client 进行格式转换
    ArcSDE CAD Client客户端也可以用于数据转换,在CAD数据到ArcSDE管理的DBMS存储过程,CAD客户端工具将翻译没个CAD对象的几何并产生相应的ArcSDE要素,而其它ArcSDE客户端可以直接浏览这些ArcSDE要素不需要转换。
 
5、移植CAD到ArcGIS
    关于从CAD移植到ArcGIS,通常包括两方面的内容:一是CAD到ArcGIS数据的转换,二是CAD到ArcGIS应用的转换。从CAD数据到ArcGI的转换,前面已经做了介绍。因为ArcGIS Geodatabase模型是建立在简单要素层基础之上的,所以CAD到Geodatabase数据的转换通常是先转为简单要素层,之后在按照Geodatabase模型的定义进行要素类组织合并,定义域,子类型,关系,几何网络等规则。从CAD到ArcGIS应用的转换目前主要集在数据的原始表现上,因为要用到ArcGIS强大的功能必然要对CAD数据进行转换,但也因此以前在CAD环境下的看到数据在ArcGIS环境下“变了样子",这主要由于各自系统对数据表现方式和相关符号库的不同,数据本身并没有丢失。此问题的解决目前主要集在两个方法,一种是程序实现不同系统符号库的自动转换,在数据转换时完成相应符号库的转入。另一种是对数据进行前期处理,个人觉得这种方法更具有现实性和易操作性一些。这就是先对CAD数据进行编码处理工作,使CAD符号能够根据编码进行区分,然后利用ArcGIS强大的符号编辑器重新制作CAD相关的符号,之后在ArcGIS应用书写程序根据编码规则匹配相关的ArcGIS符号文件进行显示和编辑等。

posted @ 2010-07-31 22:47  St.Dlng  阅读(2583)  评论(0编辑  收藏  举报