国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于規(guī)則和模板的CAD到GIS數(shù)據(jù)轉(zhuǎn)換

2012-09-22 10:01周義軍劉小飛舒濱劉宓
城市勘測 2012年1期
關(guān)鍵詞:對照表測繪編碼

周義軍,劉小飛,舒濱,劉宓

(天津市測繪院,天津 300381)

1 引言

隨著地理信息行業(yè)的蓬勃發(fā)展,市場對GIS數(shù)據(jù)的需求越來越大,而現(xiàn)有的測繪成果大多以CAD數(shù)據(jù)為主。為了充分利用現(xiàn)有的數(shù)字化成果,CAD數(shù)據(jù)到GIS數(shù)據(jù)的轉(zhuǎn)換成為行業(yè)內(nèi)必須面對和解決的問題?,F(xiàn)有的CAD到GIS數(shù)據(jù)轉(zhuǎn)換大體可分為兩種方式,一是利用現(xiàn)有的軟件所提供的轉(zhuǎn)換功能進行格式轉(zhuǎn)換,此種轉(zhuǎn)換大多只能達到數(shù)據(jù)顯示的需要,往往要對轉(zhuǎn)換后的結(jié)果進行一系列人工處理,才能達到實際應用的要求;另一種轉(zhuǎn)換方式是基于現(xiàn)有的軟件提供的二次開發(fā)組件,結(jié)合實際要求進行二次開發(fā),達到無損轉(zhuǎn)換的要求。本文采用第二種方式,提出了一種基于規(guī)則和模板的CAD到GIS數(shù)據(jù)轉(zhuǎn)換的解決方案,實現(xiàn)了GIS數(shù)據(jù)的自動、無損轉(zhuǎn)換,并具有一定的兼容性。

2 CAD數(shù)據(jù)到GIS數(shù)據(jù)轉(zhuǎn)換存在的問題

由于數(shù)據(jù)組織模型的不同,CAD數(shù)據(jù)和GIS數(shù)據(jù)在數(shù)據(jù)組織、表達和應用等方面都不盡相同,轉(zhuǎn)換過程中很難將數(shù)據(jù)承載的信息一一對應過去。目前,很多的轉(zhuǎn)換方法都或多或少的存在一些問題:

(1)由于CAD軟件和GIS軟件對圖形實體的數(shù)據(jù)結(jié)構(gòu)定義不一致,轉(zhuǎn)換過程中造成要素丟失和要素變形。

(2)由于CAD軟件很少考慮地理要素的拓撲關(guān)系,在轉(zhuǎn)換過程中,CAD數(shù)據(jù)的誤差和錯誤完全被傳遞到GIS數(shù)據(jù)上。

(3)CAD軟件對符號的表達不夠規(guī)范,在轉(zhuǎn)換過程中很難將符號信息剔除出去,造成大量數(shù)據(jù)冗余。

(4)針對數(shù)據(jù)轉(zhuǎn)換沒有一個詳盡適用的統(tǒng)一標準,這就導致轉(zhuǎn)換程序很難達到兼容性。

我們針對上述幾點問題,設(shè)計出一種基于規(guī)則的CAD數(shù)據(jù)到GIS數(shù)據(jù)的轉(zhuǎn)換程序。首先,針對兩種數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu),設(shè)計出一種合理的轉(zhuǎn)換規(guī)則——對照表,其次,對應于轉(zhuǎn)換規(guī)則,人為設(shè)定GIS數(shù)據(jù)模板。對照表和GIS數(shù)據(jù)模板可以人為的進行控制,同時修改它們可以動態(tài)調(diào)整和改變轉(zhuǎn)換結(jié)果?;贏rcGIS Engine組件和CAD二次開發(fā)組件實現(xiàn)了CAD數(shù)據(jù)到GIS數(shù)據(jù)的無損轉(zhuǎn)換,并詳細敘述了程序的設(shè)計原理和實施步驟。目前,此應用程序已經(jīng)應用到實際工作當中,通過了時間的檢查,達到了預期的目標。

3 轉(zhuǎn)換功能詳細設(shè)計

按照圖形的幾何特征,空間數(shù)據(jù)可分為點、線、面和注記4種地理要素。CAD數(shù)據(jù)到GIS數(shù)據(jù)轉(zhuǎn)換的實質(zhì)就是這4種地理要素間的轉(zhuǎn)換,轉(zhuǎn)換過程可細分為4種地理要素的幾何數(shù)據(jù)和屬性數(shù)據(jù)的讀取,組織和寫入過程。按照此種思路,本文采用模塊化的設(shè)計理念對轉(zhuǎn)換功能進行了詳細設(shè)計。如圖1所示,數(shù)據(jù)轉(zhuǎn)換功能大體可分為以下幾個部分:轉(zhuǎn)換規(guī)則和GIS數(shù)據(jù)模板設(shè)計,數(shù)據(jù)讀取,錯誤處理,數(shù)據(jù)寫入以及后續(xù)處理。

圖1 轉(zhuǎn)化功能流程圖

3.1 轉(zhuǎn)換規(guī)則和數(shù)據(jù)模板設(shè)計

(1)轉(zhuǎn)換規(guī)則

轉(zhuǎn)換規(guī)則是所有編碼的地理要素都要遵循的轉(zhuǎn)換原則,具有兼容性和可擴展性,本文設(shè)定的轉(zhuǎn)換規(guī)則如下:

Rule={FeatureCode,F(xiàn)eatureName,Shape,GISLayer,YesOrNo,Attributes}

其中FeatureCode為此類要素的編碼,此編碼具有唯一性,亦適合于GIS數(shù)據(jù)。

FeatureName表示此類地理要素的中文名稱,無名稱的可置為空。

Shape表示此類要素的幾何類型,要素按照圖形的表達方式可分為,點,線,面和注記四種類型。

GISLayer表示在ArcGIS數(shù)據(jù)中此類要素所屬的要素層。

YesOrNo表示此類編碼的要素是否需要轉(zhuǎn)換,需要轉(zhuǎn)換為Yes,不需要轉(zhuǎn)換為NO。

Attributes表示此類編碼的要素應具有的屬性要素的名稱集合。

本文將具體的規(guī)則以行的形式存儲在Access數(shù)據(jù)庫的表中,以供程序讀取和使用。

(2)數(shù)據(jù)模板

數(shù)據(jù)模板的實質(zhì)是GIS數(shù)據(jù)格式的文件,其結(jié)構(gòu)是根據(jù)對照表中的具體信息進行設(shè)計的。本文設(shè)計的數(shù)據(jù)模板采用ArcGIS的個人數(shù)據(jù)庫格式(*.mdb),依照轉(zhuǎn)換規(guī)則中的具體的GISLayer的名稱和類別建立FeatureClass,每個FeatureClass的屬性結(jié)構(gòu)對應于對照表中所有具有相同GISLayer規(guī)則的Attributs的并集。

由此可見,對照表和GIS數(shù)據(jù)模板又是相互聯(lián)系的,其中一個修改,另一個也需要做相應的修改。這種聯(lián)系在CAD數(shù)據(jù)和GIS數(shù)據(jù)之間搭起了一座橋梁,為CAD到GIS數(shù)據(jù)轉(zhuǎn)換開辟了一條可行之路。

3.2 數(shù)據(jù)讀取與錯誤處理

(1)數(shù)據(jù)讀取

數(shù)據(jù)讀取是轉(zhuǎn)換的開始,依據(jù)轉(zhuǎn)換規(guī)則,讀取CAD數(shù)據(jù),作為數(shù)據(jù)寫入的基礎(chǔ)。此過程可分為圖形數(shù)據(jù)的讀取和屬性數(shù)據(jù)的讀取。AutoCAD按照圖層來組織數(shù)據(jù),按編碼分類地理要素,圖形數(shù)據(jù)讀取以圖層為單元,遍歷圖層中的所有圖元,得到每個圖元的編碼,并通過對照表確定各個圖元的有效性和正確性;屬性數(shù)據(jù)讀取以相應的圖元為基礎(chǔ),依據(jù)對照表中相應編碼的屬性集合(Attributes)讀取圖元的屬性信息,并確定屬性的正確性和邏輯一致性。最后,將圖形信息和屬性信息以ArcGIS數(shù)據(jù)結(jié)構(gòu)進行組織,為數(shù)據(jù)寫入做好準備。

(2)錯誤處理

錯誤處理具有發(fā)現(xiàn)、定位和輸出錯誤的功能,它依附于數(shù)據(jù)讀取,貫穿于數(shù)據(jù)讀取的全過程。在圖形和屬性數(shù)據(jù)讀取的過程中,程序?qū)Σ环限D(zhuǎn)換規(guī)則的圖形要素進行標記和定位,同時輸出錯誤報告。如:面的多段線不閉合、對照表中沒有此編碼、其擴展屬性與對照表中屬性不完全對應等等。

數(shù)據(jù)讀取是數(shù)據(jù)轉(zhuǎn)換的開始,也是基礎(chǔ),錯誤處理保證了數(shù)據(jù)的正確性、完整性和邏輯一致性。另外,對于CAD數(shù)據(jù)中圓和圓弧的處理,本文采用了一種與眾不同的做法。和一般的轉(zhuǎn)換程序采取弧段加密的方式不同,本文利用ArcGIS的圓和復雜曲線的數(shù)據(jù)結(jié)構(gòu),將CAD數(shù)據(jù)中的圓和圓弧一一對應到GIS數(shù)據(jù)中的圓和復雜曲線,實現(xiàn)了轉(zhuǎn)換過程中數(shù)據(jù)無損失,圖形要素無變形。

3.3 數(shù)據(jù)寫入與后續(xù)處理

(1)數(shù)據(jù)寫入

數(shù)據(jù)寫入實質(zhì)就是GIS數(shù)據(jù)的生成過程,將數(shù)據(jù)讀取后的信息按照一定的規(guī)則寫入到事先復制好的GIS數(shù)據(jù)模板(*.mdb)中。數(shù)據(jù)寫入以層為單元,逐條寫入。另外,考慮到大數(shù)據(jù)量的問題,本文利用C#語言的事件觸發(fā)機制將數(shù)據(jù)進行分段讀取和寫入,避免了程序占用內(nèi)存較大導致系統(tǒng)內(nèi)存不足的錯誤。

(2)后續(xù)處理

后續(xù)處理主要是進行島嶼處理以達到GIS數(shù)據(jù)的最終要求。島嶼處理可分為同層島嶼處理和異層面相減處理。同層島嶼處理過程中,本文參考ArcGIS數(shù)據(jù)結(jié)構(gòu)中的復雜面的設(shè)定,為同面島嶼處理設(shè)定出“奇刪偶不刪”的原則,即刪除被包含奇數(shù)次的多邊形,保留被包含偶數(shù)次的多邊形,如圖2所示,其中“被包含”定義為圖形被包含著并且屬性相同,異層面相減處理,可以按層進行操作,確保地物無壓蓋,如植被層與道路層應無壓蓋等。

圖2 同面島嶼處理規(guī)則圖

4 總結(jié)

本文采用C#.net+ArcGIS Engine 9.2技術(shù)開發(fā)轉(zhuǎn)換程序,對照表在Access數(shù)據(jù)庫中以表的形式存在,轉(zhuǎn)換生成ArcGIS的個人數(shù)據(jù)庫(GeoDatabase)成果。本文所編寫的數(shù)據(jù)轉(zhuǎn)換程序已經(jīng)應用于天津市測繪院的1∶2 000比例尺地形圖的GIS數(shù)據(jù)的生產(chǎn)實踐中,取得了良好的效果,確保了數(shù)據(jù)的質(zhì)量,大大提高了GIS數(shù)據(jù)生產(chǎn)的效率。另外,值得一提的是,此種設(shè)計具有一定的兼容性,操作員可以通過修改對照表和GIS數(shù)據(jù)模板控制轉(zhuǎn)換過程,適用于大多數(shù)CAD數(shù)據(jù)。

[1]李嬌嬌.基于ArcGIS的CAD到GIS數(shù)據(jù)轉(zhuǎn)換[J].交通科技與經(jīng)濟,2009(3):110~113

[2]周小成,焦道振.基于GeodataBase的CAD數(shù)據(jù)到GIS的解決方案[J].測繪與空間地理信息,2005(2):128~133

[3]韓勇,陳戈.基于CAD數(shù)據(jù)建立GIS文本數(shù)據(jù)庫方法的探討[J].測繪通報,2004(1):1~3

[4]張葉,孫毅中,陳年松.CAD城市基礎(chǔ)數(shù)據(jù)到GIS轉(zhuǎn)換的有關(guān)問題探討[J].測繪與空間地理信息,2007(2):50~52

[5]文學東,鐘文軍,祝方雄等.基于Geodatabase的CAD到ARCGIS數(shù)據(jù)入庫研究[J].測繪科學,2006(6):64~66

[6]李東軍.CAD到ArcGIS的數(shù)據(jù)自定義轉(zhuǎn)換探討[J].江西測繪,2007(1):23~25

猜你喜歡
對照表測繪編碼
基于SAR-SIFT和快速稀疏編碼的合成孔徑雷達圖像配準
《全元詩》未編碼疑難字考辨十五則
子帶編碼在圖像壓縮編碼中的應用
浙江省第一測繪院
2019年成考院校招生簡章審核對照表
工程測繪中GNSS測繪技術(shù)的應用
Genome and healthcare
04 無人機測繪應用創(chuàng)新受青睞
無人機在地形測繪中的應用
ISO?9001:2015與ISO?9001:2008之間的對照表