劉宇安寧
(中國礦業大學環境與測繪學院 江蘇 徐州 221008)
數據是實現世界中的信息載體,是信息的具體表達形式[1]。在GIS出現以前,我國的測繪部門的數據大多數是以CAD的DWG或者DXF格式進行保存;隨著GIS的出現并迅速發展從空間地理信息角度來看,CAD存在著缺乏對空間數據的描述和分析等問題。然而,GIS卻在空間分析方面發揮著強大的作用,能夠對已有的空間數據進行建模、管理,以特定的數據格式保存[2]。因此,為充分利用目前已有的CAD數據作為建立GIS空間信息數據庫的數據源,就需要采用切實可行的辦法將海量的CAD數據轉換成GIS格式的數據。
1.1 CAD數據特點
CAD以強大的圖形繪制和編輯功能聞名全球,DWG和DXF是AutoCAD常用的2種數據格式,主要用于描述地理實體的空間位置和幾何形狀,將點、線、面以及顏色、線性等屬性以二進制文件存儲[3];用戶可以根據自己的需要用使用特定的線型、字體和顏色等形式表達地理實體的信息。同時DXF格式也是CAD用于與其他軟件進行數據交換的公開的共享數據格式,是一種開放式矢量數據格式。DXF數據通常是以ASCII碼文件保存,用戶可以通過直接讀取這種數據文件,從而實現CAD數據與其他軟件之間的格式轉換。
1.2 ARCGIS數據特點
ARCGIS作為國內目前使用最為廣泛的GIS軟件之一,其數據存儲方式主要有[4]:Geodatabase、coverage和 shapefile三種。Geodatabase是DBMS中的一個空間數據庫,它包含了矢量數據、柵格數據、表以及其它GIS對象,是建立在簡單要素模型基礎之上的;coverage是一種矢量格式文件的要素類的集合,把幾何和空間拓撲關系存儲在二進制文件中,屬性數據則被存放在INFO表或RDBMS中;Shapefile也是一種矢量格式文件,一般是由主文件 (.shp),索引文件 (.shx)和DBASE(.dbf)文件組成,分別用于存儲空間、屬性和兩者的空間關系,由于shapefile文件不存儲拓撲信息,所以在顯示和訪問效率上相對于coverage要快許多,是ARCGIS數據一種比較通用的數據交換的格式。
從數據結構角度看,由于CAD中的數據結構與ARCGIS中的的數據結構存在著較大的差異;雖然ARCGIS軟件能夠接受CAD數據,但是在圖形的轉換中無論是圖形數據還是屬性數據,總是存在一些數據損失的問題:
2.1 地理要素的損失和變形。由于CAD主要側重于對地理實體的空間幾何信息的描述,而GIS主要側重于對地理實體的空間信息與屬性信息的的表達。因此,CAD圖形向GIS轉換時,會導致著要素的某些幾何屬性如線型、顏色以及符號的丟失,或者無法正常顯示的問題;同時也存在一些弧線要素的變形,通常就是采用內插點的方式將弧線轉成折線。
2.2 屬性信息的丟失。CAD中圖形屬性信息轉入到ARCGIS中,許多CAD的擴展屬性信息就會出現丟失的現象;同時,由于CAD的屬性信息有的本來就存在著不充分等問題,從而就導致轉換后的屬性信息不足,這就需要在屬性表中對地理要素的進行手工追加相關屬性信息。
2.3 數據存儲的冗余。在CAD圖形存在著有些線狀地物上的點太多或者分多段存儲、重復畫線等問題,在CAD中并不影響圖形的顯示以及輸出;但是,一旦進入到ARCGIS中這些分段存儲的線狀地物就會占用多條存儲記錄,無形之中就會加大數據的存儲量,從而造成數據的冗余[5]。
3.1 利用ArcGIS實現數據轉換
(1)利用 ArcToolBox 工具
ARCGIS中的ARCTOOLBOX模塊自帶了數據轉換工具,可以快速的實COVERAGE、CAD、Shapfile、GEODATABASE等數據格式的轉換。CAD向Shapfile轉換的實現,依次打開ToolboxConversion tools o ShapfileFeature Class To Shapefile(multiple),選擇需要轉換的CAD文件和輸出路徑,點擊OK就可以實現數據的轉換。在ARCGIS應用中通常是先將CAD格式的數據轉換為GEODATABASE數據,然后再按照數據模型的定義對要素類進行組織合并、定義域、子類型、關系、幾何網絡規則,再導出Shapfile文件[6]。
(2)利用 ArcMap
在ARCGIS中ARCMAP也是可以實現CAD數據的讀取和轉換。在資源列表窗口,選擇需要轉換的要素,右鍵選擇DataExport Data,在對話框中默認的是Shapfile格式,也可以選擇GEODATABASE和SDE格式,按下確定就是轉換成shp格式的文件了。
總之,ARCGIS的這兩種數據轉化方式可以較快的實現數據格式之間的轉換,但是這兩種數據轉換方式存在著效率低、不能實現數據的批量轉換,只適合數據量較小的情況下采用。
3.2 利用FME實現CAD到ARCGIS數據格式轉換
FME是加拿大Safe Software公司推出的空間轉換處理系統,可以用于讀寫存儲以及轉換各種空間按數據,是一種與GIS格式無關的空間ETL工具,該系統通過“語義轉換”實現在數據轉換過程中重新構造數據的功能,以實現數據格式之間的轉換。其轉換方式分為兩種:(1)采用FME Universal Translator自動轉換;(2)采用FME Workbench自定義數據轉換。采用第一種方法用戶可以采用FME自帶的映射文件產生模板,這種方法比較簡單、快捷,但不能夠滿足有特定需要的用戶根據工程的需要自行修改需要轉出的數據,主要用于對數據需求相對較少的情況;第二種方法在Workbench界面中用戶根據自己的工程的具體需要自行定義映射文件,這個過程就是用戶將文件的需要的圖層數據、要素、屬性與目標格式的圖層數據、要素、屬性之間的一一對應,從而實現圖形和屬性信息的轉換。
本文就某村莊宗地圖界址點圖層轉換為ARCGIS的shapefile格式為例,采用FME Workbench將宗地圖界址點圖層中的屬性根據需要轉出,本例選擇將宗地圖中的權利人、圖幅號、宗地號、宗地面積轉到文件的屬性表中。

圖1 轉換前CAD數據Fig.1 unconverted CAD data

圖2 轉換后的shp數據格式Fig.2 converted shp data

圖3 轉換后的shp屬性表格Fig.3 attribute table of converted shp
本文通過分析CAD數據與ARCGIS數據特點分析,充分理解這兩種數據格式的特點,以及數據公開的交換格式;總結目前CAD數據轉為ARCGIS數據存在的問題,研究目前CAD數據轉為ARCGIS數據常用的的三種方法,并分析三種方法的優缺點。最后采用FME實現某村的宗地圖轉換為ARCGIS格式,這種方法與原圖相比能夠較好的將屬性數據轉換到ARCGIS屬性表中,符合工作的具體需要。
[1]胡鵬,黃杏元,華一新.地理信息系統教程[M].武漢:武漢大學出版社,2002.
[2]龔健雅.地理信息系統基礎[M].北京:科學出版社,2001.
[3]劉永強.AUTOCAD與ARCGIS數據轉換方法研 [J].測繪科學,2009,34:168:170.
[4]陳樂書,等.CAD到GIS數據格式轉換的討論.安徽農業科學[J].2009(18):8799-8803.
[5]鄂潔,等.AUTOCAD和ARCGIS間的數據轉換研究.軟件導刊[J].2007,9:18-19.
[6]李剛,朱慶杰,張秀彥,等.基于FME的城市GIS基礎空間數據格式轉換[J].測繪通報,2006(6):17-20.