一種空間數(shù)據(jù)轉(zhuǎn)換的方法及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,具體涉及一種空間數(shù)據(jù)轉(zhuǎn)換的方法及系統(tǒng)。
【背景技術(shù)】
[0002]現(xiàn)有的CAD城市基礎(chǔ)數(shù)據(jù)到GIS轉(zhuǎn)換的有關(guān)問題探討,主要論述了城市基礎(chǔ)CAD數(shù)據(jù)到GIS數(shù)據(jù)轉(zhuǎn)換的一些問題,并介紹了基于Geoway進(jìn)行CAD數(shù)據(jù)到GIS數(shù)據(jù)轉(zhuǎn)換的方法,以及該方法還存在的一些缺陷。采用Geoway進(jìn)行CAD數(shù)據(jù)到GIS數(shù)據(jù)轉(zhuǎn)換具有很多優(yōu)點(diǎn),主要表現(xiàn)在:1)轉(zhuǎn)換后的數(shù)據(jù)變形少,基本上保持了原有圖形的幾何形狀和形態(tài);2)轉(zhuǎn)換過程可以批量處理,效率高;3)轉(zhuǎn)換后的數(shù)據(jù)可以利用Geoway形成拓?fù)浣Y(jié)構(gòu)并產(chǎn)生屬性表文件,得到的最后數(shù)據(jù)可以直接為G IS軟件所使用。
[0003]在AutoCAD地形圖數(shù)據(jù)轉(zhuǎn)換為GIS空間數(shù)據(jù)的技術(shù)研究與應(yīng)用中,為了高效地建立地理信息數(shù)據(jù)庫,經(jīng)常要將各類數(shù)字地形圖數(shù)據(jù)轉(zhuǎn)換為符合GIS要求的數(shù)據(jù)。以AutoCAD數(shù)據(jù)為例,介紹批量修改GIS基礎(chǔ)圖形數(shù)據(jù)的方法,分析CAD與GIS之間數(shù)據(jù)轉(zhuǎn)換的各種模式,提出應(yīng)用GIS數(shù)據(jù)中間件來實(shí)現(xiàn)CAD與GIS數(shù)據(jù)的無縫轉(zhuǎn)換。并提出數(shù)據(jù)轉(zhuǎn)換過程中的質(zhì)量控制的辦法。
[0004]在AutoCAD環(huán)境中組織GIS數(shù)據(jù)的方法中,先分析在AutoCAD環(huán)境中組織GIS數(shù)據(jù)的方法,包括圖形鏈接屬性數(shù)據(jù)的方法和CAD/GIS間數(shù)據(jù)轉(zhuǎn)換的方法,然后指出傳統(tǒng)的轉(zhuǎn)換方法的不足之處,并給出一種數(shù)據(jù)解譯器組成結(jié)構(gòu),從而可以有效地實(shí)現(xiàn)CAD/GIS數(shù)據(jù)的無縫轉(zhuǎn)換。最后,以地籍信息系統(tǒng)為例,驗(yàn)證在AutoCAD環(huán)境中組織GIS數(shù)據(jù)能極大地提高專題GIS的整體性能。
[0005]現(xiàn)有文獻(xiàn)中所涉及的CAD數(shù)據(jù)和GIS間接轉(zhuǎn)換方法,這種通過中間數(shù)據(jù)格式進(jìn)行的轉(zhuǎn)換,由于不同數(shù)據(jù)格式描述空間對象時(shí)采用的數(shù)據(jù)模型不同,因而轉(zhuǎn)換后不能完全準(zhǔn)確地表達(dá)原數(shù)據(jù)的信息,經(jīng)常性地造成一些信息丟失,而且用戶必須詳細(xì)地掌握交換格式的細(xì)節(jié)及應(yīng)用系統(tǒng)數(shù)據(jù)格式的細(xì)節(jié)時(shí),才能進(jìn)行轉(zhuǎn)換程序的設(shè)計(jì)工作,對用戶的編程能力及工作量要求都很高,不利于無縫GIS快速獲取多源數(shù)據(jù)。
[0006]現(xiàn)有文獻(xiàn)中還涉及了一種CAD數(shù)據(jù)和GIS格式數(shù)據(jù)之間的轉(zhuǎn)換方法。在CAD城市基礎(chǔ)數(shù)據(jù)到GIS轉(zhuǎn)換本方案的不足,主要是處理工作量比較大,處理時(shí)間長。主要有以下幾方面的原因:1)AutoCAD數(shù)據(jù)不規(guī)范,重視圖面的檢查,有的地物厚度值沒有編碼,或者原來編碼就不規(guī)范,按編碼對照表轉(zhuǎn)到Geoway中,就有很多數(shù)據(jù)沒有分好類,從而產(chǎn)生額外的工作量。2)構(gòu)面的工作量也非常大。由于一些線型不規(guī)則,需要重新編輯,一般需要幾次重復(fù)構(gòu)面后才能成功。
【發(fā)明內(nèi)容】
[0007]針對現(xiàn)有CAD數(shù)據(jù)與GIS間數(shù)據(jù)轉(zhuǎn)換的不足,提供了一種空間數(shù)據(jù)轉(zhuǎn)換的方法及系統(tǒng),充分利用已有的數(shù)據(jù)資源,并實(shí)現(xiàn)GIS的批量編輯,在總結(jié)和改進(jìn)前人工作的基礎(chǔ)上,提出了一套完善的CAD規(guī)劃成果數(shù)據(jù)規(guī)整入庫的解決方案,研究如何將AutoCAD地形圖數(shù)據(jù)轉(zhuǎn)換為GIS空間數(shù)據(jù),以及利用非GIS軟件賦值GIS數(shù)據(jù)的批量編輯,實(shí)現(xiàn)AutoCAD與GIS空間數(shù)據(jù)的異構(gòu)聚合。
[0008]本發(fā)明提供了一種空間數(shù)據(jù)轉(zhuǎn)換的方法,包括如下步驟:
[0009]進(jìn)行地物編碼,對CAD數(shù)據(jù)采用存儲地形要素的GIS編碼進(jìn)行標(biāo)識;
[0010]對標(biāo)識后的CAD數(shù)據(jù)采用圖形對應(yīng)的特征重新繪制圖形數(shù)據(jù),使CAD數(shù)據(jù)得到規(guī)范化處理;
[0011]對規(guī)范化處理后的CAD數(shù)據(jù)向GIS數(shù)據(jù)進(jìn)行轉(zhuǎn)換,其中:所述對規(guī)范化處理后的CAD數(shù)據(jù)向GIS數(shù)據(jù)進(jìn)行轉(zhuǎn)換包括:
[0012]創(chuàng)建一個(gè)用于存儲轉(zhuǎn)換后數(shù)據(jù)的個(gè)人地理數(shù)據(jù)庫,創(chuàng)建相應(yīng)的要素集及其包含的所有點(diǎn)、線、面和注記圖層,建立圖層間的映射關(guān)系,并依據(jù)入庫標(biāo)準(zhǔn)添加相應(yīng)的圖層屬性字段;
[0013]實(shí)現(xiàn)CAD數(shù)據(jù)到GIS數(shù)據(jù)間的圖形轉(zhuǎn)換;
[0014]進(jìn)行圖形相應(yīng)的屬性轉(zhuǎn)換和賦值,存儲到對應(yīng)圖層的相應(yīng)屬性字段中;
[0015]遍歷CAD數(shù)據(jù)的所有圖形實(shí)體,根據(jù)規(guī)整時(shí)賦予的編碼值判斷出實(shí)體需轉(zhuǎn)換成的幾何類型及所屬的GIS圖層,得到幾何信息和屬性信息創(chuàng)建GIS要素,并插入到所屬GIS圖層中。
[0016]所述對CAD數(shù)據(jù)采用存儲地形要素的GIS編碼進(jìn)行標(biāo)識包括:
[0017]對含CASS編碼的圖形,讀取CASS編碼,通過地形圖要素信息及編碼對照表查找到對應(yīng)的GIS編碼,完成編碼轉(zhuǎn)換與存儲;
[0018]對含厚度值的圖形,讀取厚度值,通過地形圖要素信息及編碼對照表查找到對應(yīng)的GIS編碼,完成編碼轉(zhuǎn)換與存儲;
[0019]對無編碼的圖形通過目視判讀及圖形篩選賦值的方式完成地物編碼賦值;
[0020]所述對標(biāo)識后的CAD數(shù)據(jù)采用圖形對應(yīng)的特征重新繪制圖形數(shù)據(jù)之前還包括:
[0021]在完成地物編碼后,對編碼進(jìn)彳丁檢查;
[0022]在完成編碼檢查之后,進(jìn)行拓?fù)錂z查;
[0023]對拓?fù)溥M(jìn)行修正;
[0024]對屬性進(jìn)行編輯和存儲。
[0025]所述對標(biāo)識后的CAD數(shù)據(jù)采用圖形對應(yīng)的特征重新繪制圖形數(shù)據(jù),使CAD數(shù)據(jù)得到規(guī)范化處理包括:
[0026]對圖層進(jìn)行重命名,并進(jìn)行分層設(shè)色;
[0027]更改為符號規(guī)范的線型;
[0028]對調(diào)用設(shè)定好的符號塊。
[0029]所述實(shí)現(xiàn)CAD數(shù)據(jù)到GIS數(shù)據(jù)間的圖形轉(zhuǎn)換包括:
[0030]對于點(diǎn)和塊參照實(shí)體,提取其位置的X和Y坐標(biāo),使用AE接口 IPoint記錄坐標(biāo)信息;
[0031]對于直線實(shí)體,提取其起點(diǎn)和終點(diǎn)的位置,使用AE接口 IPolyline記錄兩對坐標(biāo);
[0032]對于圓形實(shí)體,在獲取其圓心位置和半徑長度后,使用AE接口 ICircularArc構(gòu)建幾何圓,并最終封裝成IPolyline或IPolygon類型;
[0033]對于樣條曲線實(shí)體,由幾何知識可知,獲取其起點(diǎn)、終點(diǎn)以及控制點(diǎn)數(shù)量,運(yùn)用樣條曲線的生成公式得到擬合的坐標(biāo)串,最后使用AE接口 IPolyline封裝坐標(biāo)串;
[0034]對于多段線實(shí)體,根據(jù)其分段類型逐段獲取坐標(biāo)信息,封裝成IPolyline或IPolygon 類型;
[0035]對于二維多段線實(shí)體,根據(jù)線段類型,坐標(biāo)提取時(shí)只讀取相應(yīng)節(jié)點(diǎn)類型的坐標(biāo)值,封裝成IPolyline或IPolygon類型;
[0036]對于文字實(shí)體,將文字實(shí)體轉(zhuǎn)換成注記類型。
[0037]所述將文字實(shí)體轉(zhuǎn)換成注記類型還包括:
[0038]獲得文字實(shí)體的旋轉(zhuǎn)角度和字體高度,使用ITextElement和IFDOAttributeConvers1n等接口完成注記的生成。
[0039]相應(yīng)的,本發(fā)明還提供了一種空間數(shù)據(jù)轉(zhuǎn)換的系統(tǒng),包括:
[0040]地物編碼模塊,用于進(jìn)行地物編碼,對CAD數(shù)據(jù)采用存儲地形要素的GIS編碼進(jìn)行標(biāo)識;
[0041]數(shù)據(jù)標(biāo)準(zhǔn)化模塊,用于對標(biāo)識后的CAD數(shù)據(jù)采用圖形對應(yīng)的特征重新繪制圖形數(shù)據(jù),使CAD數(shù)據(jù)得到規(guī)范化處理;
[0042]數(shù)據(jù)轉(zhuǎn)換模塊,用于對規(guī)范化處理后的CAD數(shù)據(jù)向GIS數(shù)據(jù)進(jìn)行轉(zhuǎn)換,其中數(shù)據(jù)轉(zhuǎn)換豐吳塊包括:
[0043]映射單元,用于創(chuàng)建一個(gè)用于存儲轉(zhuǎn)換后數(shù)據(jù)的個(gè)人地理數(shù)據(jù)庫,創(chuàng)建相應(yīng)的要素集及其包含的所有點(diǎn)、線、面和注記圖層,建立圖層間的映射關(guān)系,并依據(jù)入庫標(biāo)準(zhǔn)添加相應(yīng)的圖層屬性字段;
[0044]圖形轉(zhuǎn)換單元,用于實(shí)現(xiàn)CAD數(shù)據(jù)到GIS數(shù)據(jù)間的圖形轉(zhuǎn)換;
[0045]屬性字段單元,用于進(jìn)行圖形相應(yīng)的屬性轉(zhuǎn)換和賦值,存儲到對應(yīng)圖層的相應(yīng)屬性字段中;
[0046]遍歷單元,用于遍歷CAD數(shù)據(jù)的所有圖形實(shí)體,根據(jù)規(guī)整時(shí)賦予的編碼值判斷出實(shí)體需轉(zhuǎn)換成的幾何類型及所屬的GIS圖層,得到幾何信息和屬性信息創(chuàng)建GIS要素,并插入到所屬GIS圖層中。
[0047]所述系統(tǒng)還包括:
[0048]編碼檢查模塊,用于在完成地物編碼后,對編碼進(jìn)行檢查;
[0049]拓?fù)錂z查模塊,用于在完成編碼檢查之后,進(jìn)行拓?fù)錂z查;
[0050]拓?fù)湫拚K,用于對拓?fù)溥M(jìn)行修正;
[0051]屬性編輯模塊,用于對屬性進(jìn)行編輯和存儲。
[0052]在本發(fā)明在數(shù)據(jù)規(guī)整方面,提供了一整套處理流程,包括地物批量編碼,拓?fù)錂z查及篩選特定的圖層或全部導(dǎo)出為GIS等功能。由于批量編碼功能是通過配置表完成,只要預(yù)先設(shè)定好轉(zhuǎn)換規(guī)則,即可自動(dòng)實(shí)現(xiàn)轉(zhuǎn)換,這里可以達(dá)到通用的效果,比現(xiàn)勢的CASS或其他的軟件只轉(zhuǎn)換特定編碼類型的數(shù)據(jù)具有較好的普及性。本系統(tǒng)提供了拓?fù)錂z查及圖層要素篩選功能,CAD雖然具有很強(qiáng)的編輯修改功能,但是在空間分析處理方面還是很弱的,這里采用GIS提供的開發(fā)接口進(jìn)行拓?fù)?、疊置分析,可以提高篩選效率,并增加了可用性。本發(fā)明實(shí)現(xiàn)了 CAD和GIS數(shù)據(jù)之間的無損轉(zhuǎn)換