孫俊英 劉 吉
(貴州省第二測繪院,貴州貴陽 550004)
淺談地理信息數(shù)據(jù)格式轉(zhuǎn)換方法
孫俊英劉吉
(貴州省第二測繪院,貴州貴陽 550004)
隨著地理信息產(chǎn)業(yè)的快速發(fā)展,其數(shù)據(jù)格式也越來越多樣化,數(shù)據(jù)格式之間的轉(zhuǎn)換越來越重要,本文選取市場上廣泛使用的MapGIS和ArcGIS軟件,討論了MapGIS和ArcGIS兩種GIS軟件的數(shù)據(jù)格式,探討了MapGIS數(shù)據(jù)向ArcGIS數(shù)據(jù)格式轉(zhuǎn)換的幾種方法,對比分析了各種轉(zhuǎn)換方法中點(diǎn)、線、面各類要素轉(zhuǎn)換前后的差異,討論利用軟件本身的轉(zhuǎn)換功能進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換要注意的問題和解決方案。
MapGIS ArcGIS 數(shù)據(jù)轉(zhuǎn)換 地理信息系統(tǒng)
隨著各領(lǐng)域數(shù)字化進(jìn)程的推進(jìn)和地理信息技術(shù)的發(fā)展,GIS已廣泛應(yīng)用于各行各業(yè),涉及到多學(xué)科多部門,但各部門在開發(fā)地理信息系統(tǒng)時,通常根據(jù)本部門的特定情況,采用不同的數(shù)據(jù)建模方法,選用不同廠商的軟件。由于不同軟件采用不同的空間數(shù)據(jù)格式,對地理數(shù)據(jù)的組織有很大的差異,使得各領(lǐng)域在共同協(xié)作中進(jìn)行空間信息共享和交流時存在障礙,導(dǎo)致空間數(shù)據(jù)利用率低,數(shù)據(jù)重復(fù)采集和不兼容現(xiàn)象時有發(fā)生。因此,不同數(shù)據(jù)格式之間的無損轉(zhuǎn)換和共享變得尤為重要。
目前,在國土資源管理中縣鄉(xiāng)級的數(shù)據(jù)一般采用MapGIS格式,而省市級或直管部門一般都采用大型關(guān)系數(shù)據(jù)庫來集中管理數(shù)據(jù),使用ArcGIS格式;二者在目前國內(nèi)市場上都擁有很多的用戶。MapGIS是中國地質(zhì)大學(xué)開發(fā)的地理信息系統(tǒng)軟件,是一款優(yōu)秀的國產(chǎn)GIS軟件,它的地圖編輯功能很強(qiáng)大而且易于操作,它的數(shù)據(jù)庫管理系統(tǒng)和國土業(yè)務(wù)貼合地非常緊密,因此獲得了國內(nèi)用戶的歡迎,但是它在空間數(shù)據(jù)庫的支持方面性能不太理想,空間分析功能不夠強(qiáng)大。ArcGIS是美國ESRI(Environmental Systems Research Institute Inc.)公司的旗艦產(chǎn)品,對空間數(shù)據(jù)庫的支持很強(qiáng),便于大型空間數(shù)據(jù)的管理和分析,但是其地圖編輯工具國內(nèi)用戶使用不方便,不易操作。很多用戶在MapGIS平臺下作圖,然后將數(shù)據(jù)轉(zhuǎn)換裝換到ArcGIS平臺下。如何把MapGIS 文件向ArcGIS文件進(jìn)行完整無損地轉(zhuǎn)換,以便實(shí)現(xiàn)數(shù)據(jù)的標(biāo)準(zhǔn)化和共享顯得尤為重要。本文旨在探討MapGIS向ArcGIS的數(shù)據(jù)轉(zhuǎn)換實(shí)現(xiàn)的方法。
表1 數(shù)據(jù)轉(zhuǎn)換方式結(jié)果比較
2.1MapGIS的數(shù)據(jù)格式
MapGIS數(shù)據(jù)管理的核心是工作區(qū),存放空間對象的空間數(shù)據(jù)、拓?fù)鋽?shù)據(jù)、圖形數(shù)據(jù)和屬性數(shù)據(jù),每個工作區(qū)都對應(yīng)于一個數(shù)據(jù)文件。工作區(qū)分為點(diǎn)、線、面、網(wǎng)、表5種類型。在一個工作區(qū)中,存放許多空間實(shí)體的個體,每個體都有唯一的實(shí)體號(點(diǎn)號、線號、區(qū)號、網(wǎng)號、記錄號等),對實(shí)體數(shù)據(jù)的存取的主要依據(jù)實(shí)體號。
MapGIS將現(xiàn)實(shí)中的地理對象抽象成點(diǎn)、線、區(qū)三種圖形特征,在計(jì)算機(jī)環(huán)境中分別對應(yīng)*. WT、*. WL、*. WP 三類文件,每個文件內(nèi)部最大可劃分為256個圖層,同類特征對象的個體抽象可表示在不同圖層內(nèi),對象的屬性信息也可直接附加在文件內(nèi)。這樣,理論上在不考慮同類特征對象間結(jié)構(gòu)差異的情況下,只需要點(diǎn)、線、區(qū)三個文件就可以制作一幅完整的數(shù)字地圖。
MapGIS的數(shù)據(jù)交換格式是ASCⅡ碼的明碼文件,其文件結(jié)構(gòu)由文件頭和數(shù)據(jù)區(qū)兩部分組成。文件頭記錄的是文件的版本和類型(點(diǎn)、線、面)信息;數(shù)據(jù)區(qū)記錄的是實(shí)體的幾何信息。明碼文件按要素類型分為點(diǎn)文件(*.wat)、線文件(*.wal)、區(qū)文件(*.wap)三種。明碼文件只有要素的幾何信息而沒有要素的屬性信息,只能用于地圖的顯示和出版,必須轉(zhuǎn)換為MapGIS的標(biāo)準(zhǔn)文件,才能進(jìn)行GIS分析與屬性信息查詢等操作。在MapGIS軟件的文件轉(zhuǎn)換模塊中,提供了對dxf、mif、E00、shape等文件的輸入輸出功能。
2.2ArcGIS的數(shù)據(jù)格式
ArcGIS通過空間數(shù)據(jù)引擎ArcSDE存貯Geodatabase對象,ArcSDE以層的方式來管理地理數(shù)據(jù),具有共同屬性項(xiàng)的一類要素可以放到一層中,每個數(shù)據(jù)庫記錄對應(yīng)一個實(shí)際要素。ArcSDE為數(shù)據(jù)庫中各層(layer)建立了空間索引??臻g索引是將層從邏輯上分成一個個小塊,稱為“cell”,層中的要素則分解到各cell中加以描述,并將此描述信息寫到索引表中。
ArcGIS的數(shù)據(jù)格式與表示的幾何特征的類型沒有關(guān)系。它的矢量數(shù)據(jù)格式主要有Shape、Coverage、Geodatabase和E00。Shape是一種矢量型數(shù)據(jù)文件,該文件不存儲拓?fù)湫畔?,通常一個Shape由一個主文件,索引文件和DBASE文件組成, ESRI已公開其數(shù)據(jù)格式;Coverage也是一種矢量型數(shù)據(jù)文件,但其幾何和空間拓?fù)潢P(guān)系存儲在二進(jìn)制文件中,與之相關(guān)的屬性數(shù)據(jù)則被存放在INFO表或RDBMS中,Coverage是要素類組織后的集合,每個要素類都是一些點(diǎn)、線、面或文本的集合,一個或多個Coverage要素被用于構(gòu)造地理要素; Geodatabase一種采用標(biāo)準(zhǔn)關(guān)系數(shù)據(jù)庫技術(shù)來表現(xiàn)地理信息的數(shù)據(jù)模型,它把地理數(shù)據(jù)組織成層次型的數(shù)據(jù)對象,包括對象類、要素類、要素?cái)?shù)據(jù)集,一個對象類在地理數(shù)據(jù)庫中是一個表,存儲非空間數(shù)據(jù),一個要素類是具有相同幾何類型和相同屬性的要素集合,一個要素?cái)?shù)據(jù)集是共享空間參考系統(tǒng)的要素類集合;E00是文本形式的數(shù)據(jù)交換格式,用于不同平臺之間的數(shù)據(jù)轉(zhuǎn)換。
2.3二者的差異
(1)屬性結(jié)構(gòu)。在MapGIS中字段類型有很多種,包括字符串、字節(jié)型、短整型、長整型、浮點(diǎn)型、雙精度型等17種類型,字段名稱最長能容納20個字節(jié);而ArcGIS中屬性結(jié)構(gòu)隨著格式的不同而不同,Shape格式的數(shù)據(jù)字段類型包括短整型、長整型、浮點(diǎn)型、雙精度型、文本、日期型等6種,而字段名稱也只有1 0個字節(jié),Pers onal Geodatabase就不同了,字段類型較Shape中增加Blob、Raster、Guid等3種類型,字段名也能容納64個字節(jié)。
(2)圖形整飾。MapGIS的點(diǎn)、線、面文件可以存儲圖形的渲染信息,但是在ArcGIS中圖形的整飾信息不依附于要素集,整飾信息可以通過工程來存儲。
(3)注釋。在MapGIS中,注釋是存儲在點(diǎn)文件中,在其它幾何類型文件中是不能存儲的。而ArcGIS中,文字可以以標(biāo)注的形式依附于要素類存在,注釋文件也有,但是在Shape文件中是不存在的,可以在其它格式中存在。
3.1數(shù)據(jù)轉(zhuǎn)換模式
目前, GIS軟件本身自帶的空間數(shù)據(jù)格式轉(zhuǎn)換功能主要存在3種模式。一是基于dxf的數(shù)據(jù)轉(zhuǎn)換模式。dxf (Drawing Exchange Format)是AutoCAD公司開發(fā)的用于AutoCAD與其它軟件之間進(jìn)行數(shù)據(jù)交換的數(shù)據(jù)文件格式,是AutoCAD程序使用的ASCII格式的繪圖交換文件。二是基于GIS外部文本文件的數(shù)據(jù)轉(zhuǎn)換模式,由于商業(yè)秘密或安全等原因,用戶難以讀懂GIS軟件本身的內(nèi)部數(shù)據(jù)格式文件,為促進(jìn)軟件的推廣應(yīng)用,部分GIS軟件向用戶提供了外部文本文件。三是基于直接數(shù)據(jù)訪問的數(shù)據(jù)轉(zhuǎn)換模式,直接數(shù)據(jù)訪問是指在一個GIS軟件中實(shí)現(xiàn)對其他軟件數(shù)據(jù)格式的直接訪問。
3.2MapGIS向ArcGIS的數(shù)據(jù)轉(zhuǎn)換方式
根據(jù)MapGIS和ArcGIS軟件本身的數(shù)據(jù)格式轉(zhuǎn)換功能,由于ArcGIS不能直接讀取MapGIS格式的數(shù)據(jù),結(jié)合文件轉(zhuǎn)換過程中MapGIS輸出文件類型和ArcGIS輸入文件類型的特點(diǎn),MapGIS向ArcGIS數(shù)據(jù)格式轉(zhuǎn)換主要可通過5種方式實(shí)現(xiàn):
(1)通過dxf文件進(jìn)行轉(zhuǎn)換;
(2)通過Arc/Info標(biāo)準(zhǔn)格式文件進(jìn)行轉(zhuǎn)換;
(3)通過Shape文件進(jìn)行轉(zhuǎn)換;
(4)通過Map Info的mif文件進(jìn)行轉(zhuǎn)換;
(5)通過E00文件進(jìn)行轉(zhuǎn)換。
對于上述5種轉(zhuǎn)換方式,具體操作時,先通過MapGIS的文件轉(zhuǎn)換模塊將拓?fù)涮幚砗玫母鼽c(diǎn)、線、面要素圖層分別轉(zhuǎn)換為dxf、Arc/ Info標(biāo)準(zhǔn)格式、shape、mif和E00文件,然后通過ArcGIS實(shí)現(xiàn)對這些中間格式數(shù)據(jù)的讀取或轉(zhuǎn)換輸入,對于Arc/Info標(biāo)準(zhǔn)格式和shape格式的數(shù)據(jù),ArcGIS可直接讀??;對于dxf、mif和E00格式的數(shù)據(jù),可利用ArcToolbox中的Data InteroperabilityTool模塊轉(zhuǎn)換成ArcGIS的Geodatabase數(shù)據(jù),再進(jìn)行后期處理。
3.3轉(zhuǎn)換結(jié)果對比
空間數(shù)據(jù)轉(zhuǎn)換的內(nèi)容主要包括空間定位信息、空間關(guān)系信息和屬性信息3個方面。由于MapGIS與ArcGIS的數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)模型不同,空間數(shù)據(jù)轉(zhuǎn)換后難免會存在一些差異,且空間數(shù)據(jù)經(jīng)由中間格式轉(zhuǎn)換后,線與面的拓?fù)潢P(guān)系基本丟失。因此,本文研究空間數(shù)據(jù)轉(zhuǎn)換結(jié)果的好壞,主要基于空間定位信息和屬性信息比較轉(zhuǎn)換前后圖形與屬性的一致性與完整性。通過大量的轉(zhuǎn)換實(shí)踐,各轉(zhuǎn)換方式空間數(shù)據(jù)轉(zhuǎn)換前后結(jié)果對比,如表1所示。
通過上述轉(zhuǎn)換結(jié)果分析,各方法轉(zhuǎn)換效果均不太理想。但實(shí)際轉(zhuǎn)換工作中,轉(zhuǎn)換者可根據(jù)圖形本身的特點(diǎn)和自身對圖形的要求選取其中一種或結(jié)合幾種方法進(jìn)行轉(zhuǎn)換。從操作上講,采用Shape文件和Arc/Info標(biāo)準(zhǔn)格式文件轉(zhuǎn)換的方法只需1次轉(zhuǎn)換,操作簡單方便,其它3種方法均需進(jìn)行二次轉(zhuǎn)換;從轉(zhuǎn)換效果上講,通過mif和E00轉(zhuǎn)換不僅能保證圖形完整性、準(zhǔn)確性,而且屬性數(shù)據(jù)也是完整的。
3.4轉(zhuǎn)換過程中要注意的問題
在MapGIS向ArcGIS數(shù)據(jù)轉(zhuǎn)換過程中要注意以下問題:
(1)屬性結(jié)構(gòu)和內(nèi)容檢查。對于屬性字段要注意兼容性,不能包含ArcGIS不支持的字段類型,屬性值中不能含有異常字符。如注記點(diǎn)文件應(yīng)有注記內(nèi)容屬性,不然轉(zhuǎn)入ArcGIS 后注記點(diǎn)文件會成為一個標(biāo)識點(diǎn)。
(2)參數(shù)信息丟失。對于點(diǎn)狀、線狀、面狀要素,MapGIS文件轉(zhuǎn)換后在ArcGIS中均以缺省方式顯示出來,且對應(yīng)的符號、線性、顏色、大小、寬度、填充等信息丟失。為減少轉(zhuǎn)換后數(shù)據(jù)的修改編輯工作量,轉(zhuǎn)換前應(yīng)將原始數(shù)據(jù)在MapGIS內(nèi)嚴(yán)密組織,數(shù)據(jù)主題分層清楚,使之轉(zhuǎn)換到ArcGIS后圖層分類仍保持不變,以便利用ArcGIS中進(jìn)行統(tǒng)一配置。
(3)拓?fù)溴e誤檢查。為保證數(shù)據(jù)的正確性,文件轉(zhuǎn)換過來之后,要對文件進(jìn)行拓?fù)溴e誤檢查。針對區(qū)數(shù)據(jù),主要檢查重疊弧段、區(qū)拓?fù)溴e誤檢查,然后進(jìn)行清弧重疊坐標(biāo)及自相交、清除微短弧線;針對線數(shù)據(jù),主要進(jìn)行重疊線檢查、線拓?fù)溴e誤檢查、清線重疊坐標(biāo)及自相交、清除微短線。
(4)投影參數(shù)配置和圖形修復(fù)。為了能保證轉(zhuǎn)換后的數(shù)據(jù)能正常地進(jìn)行分析和整合,各圖層必須具有正確的投影,所以需要投影參數(shù)配置,同時必須進(jìn)行數(shù)據(jù)修復(fù),修復(fù)的目的是為了保證MapGIS的數(shù)據(jù)轉(zhuǎn)換后能夠符合ArcGIS的制圖規(guī)定。
數(shù)據(jù)格式的轉(zhuǎn)換也可通過多種方式實(shí)現(xiàn),本文只是在充分利用軟件本身轉(zhuǎn)換功能的前提下探討MapGIS向ArcGIS數(shù)據(jù)轉(zhuǎn)換的方法。為盡量保持?jǐn)?shù)據(jù)轉(zhuǎn)換前后的一致性,用戶應(yīng)充分了解數(shù)據(jù)轉(zhuǎn)換過程中可能出現(xiàn)的各類問題,及時檢查和糾正數(shù)據(jù)轉(zhuǎn)換后所出現(xiàn)的錯誤,修復(fù)丟失的信息,減少數(shù)據(jù)轉(zhuǎn)換造成的錯誤。在信息高速發(fā)展的今天,如何使數(shù)據(jù)資源最大化地共享,如何充分利用軟件的優(yōu)勢互補(bǔ),優(yōu)化數(shù)字化生產(chǎn)的工藝流程,降低生產(chǎn)成本,提高勞動產(chǎn)產(chǎn)率,是推動GIS行業(yè)向前的一個重要問題,有待于今后進(jìn)一步的探討和總結(jié)。實(shí)現(xiàn)由MapGIS數(shù)據(jù)向ArcGIS數(shù)據(jù)的方便的格式轉(zhuǎn)換,將使用戶可以充分利用MapGIS方便的圖層數(shù)據(jù)編輯功能和ArcGIS強(qiáng)大的空間數(shù)據(jù)庫支持能力,極大地方便了地圖數(shù)據(jù)制作和空間數(shù)據(jù)的維護(hù)。
[1]胡良軍,邵明安.接受外部空間數(shù)據(jù)的初步探討—兼論ArcInfo的數(shù)據(jù)接受方式[J]遙感技術(shù)與應(yīng)用,2000,15(4):256—269.
[2]張建軍,張靜波.MapGIS6.1向ArcGIS8.1的數(shù)據(jù)轉(zhuǎn)換[J].微機(jī)發(fā)展,2003(11):14-16.
[3]王海琴,等.MapG1S到ArcSDE的數(shù)據(jù)轉(zhuǎn)換方法與實(shí)踐[J].國土資源遙感,2005(3):30-33.
[4]陳勇等.數(shù)字圖數(shù)據(jù)到MAPGIS數(shù)據(jù)的格式轉(zhuǎn)換[J].測繪學(xué)院學(xué)報(bào),2004(3):154-156.
[5]葉國華.空間數(shù)據(jù)格式轉(zhuǎn)換與信息共享[J].地礦測繪,2008,24(2):4-6.
[6]黃杏元,馬勁松,湯勤.地理信息系統(tǒng)概論[M].北京:高等教育出版社,2001:89.