張 藝,李 苗,丁曉光
(1.陜西省地震局,陜西 西安 710068)
ArcGIS編繪25萬區(qū)域構(gòu)造圖常見拓撲錯誤修改方法

張 藝1,李 苗1,丁曉光1
(1.陜西省地震局,陜西 西安 710068)
構(gòu)建1∶25萬城市活斷層數(shù)據(jù)庫時,在數(shù)據(jù)數(shù)字化、編輯、處理過程中,大量的拓撲錯誤會影響數(shù)據(jù)質(zhì)量以及成果精度,造成數(shù)據(jù)無法入庫。針對面重疊、面有縫隙、線重復、線有懸掛等幾種常見拓撲錯誤,提出簡便高效的修改方法,確保該地層矢量數(shù)據(jù)符合活斷層入庫要求。
1∶25萬地震構(gòu)造圖;拓撲錯誤;數(shù)據(jù)質(zhì)量
作為城市活斷層探測成果圖件,一幅完整的25萬地震構(gòu)造圖涵蓋內(nèi)容主要有:①不同時代地層,分第四系、新近系、古近系、前新生界沉積巖、前新生界變質(zhì)巖,其中第四系進一步劃分為全新統(tǒng)、上更新統(tǒng)、中更新統(tǒng)、下更新統(tǒng);②不同時代巖漿巖,分武陵-揚子期、加里東期、華力西期、印支-燕山期、喜山期;③斷層,活動時代分晚更新世-全新世斷層、早-中更新世斷層、前第四紀斷層,斷層性質(zhì)分正斷層、逆斷層、走滑斷層;④第四紀盆地及第四系等厚線;⑤ M≥4.7級地震震中;⑥相關(guān)地理要素等。
為了方便圖件相關(guān)數(shù)據(jù)的編輯、修改、查詢、瀏覽與輸出,需借助ArcGIS平臺構(gòu)建基礎地理信息數(shù)據(jù)庫,而矢量化的地層數(shù)據(jù)作為最基礎、最首要的基礎地理信息數(shù)據(jù),其拓撲關(guān)系與處理方法在高級的空間分析處理和空間數(shù)據(jù)質(zhì)量保證方面具有相當重要的作用[1]。如何在矢量數(shù)據(jù)(Geodatabase數(shù)據(jù))中快速檢查同一要素類(同層)或不同要素類(異層)中公共邊不重合、懸掛點等錯誤,順利完成數(shù)據(jù)編輯等任務,是數(shù)據(jù)生產(chǎn)中的難點問題[2]。本文通過對1︰25萬紙質(zhì)地質(zhì)圖的掃描數(shù)字化和空間配準,獲得地層相關(guān)矢量數(shù)據(jù),對于拓撲規(guī)則檢查出現(xiàn)的錯誤,提出了簡便的批量修改方法,大大降低了工作量。
拓撲關(guān)系是指圖形在保持連續(xù)狀態(tài)下變形,但圖形關(guān)系不變的性質(zhì)[3]。因為基礎地理信息庫數(shù)據(jù)非常重視地物之間的相對位置關(guān)系,點線面之間的拓撲構(gòu)成等空間信息,所以構(gòu)建拓撲進行位置關(guān)系檢查是十分必要的[4]。
在ArcGIS中,建立拓撲(Topology)是基于Geodatabase(mdb,gdb,sde)進行的,是在同一個要素集(FeatureDataset)下的要素類(FeatureClass)之間的拓撲關(guān)系的集合。ArcGIS中參與一個拓撲的所有要素類,必須在同一個要素集內(nèi)(也就是具有同一的空間參考),這樣進行的拓撲檢查才是精確的[5]。 一個要素集可以有多個拓撲,但每個要素類只能參與一個拓撲,一個拓撲中可以定義多個規(guī)則[6,7]。構(gòu)建1︰25萬區(qū)域地震構(gòu)造圖數(shù)據(jù)庫時,矢量數(shù)據(jù)和屬性數(shù)據(jù)存儲在統(tǒng)一的系統(tǒng)中,所以本文采用基于對象數(shù)據(jù)模型的Geodatabase數(shù)據(jù)格式。
在已建好的個人數(shù)據(jù)庫(personl Geodatabase)基礎上,創(chuàng)建一個要素數(shù)據(jù)集(Feature Dataset),導入矢量化好的1︰25萬地層數(shù)據(jù),包括原始線文件和由線生成的地層面文件。在ArcCatalog中,右鍵點擊要素集,選擇New-Topology(如圖1),在打開的拓撲對話框中選擇需要進行檢查的矢量數(shù)據(jù)層,然后根據(jù)需要依次選擇相應的拓撲規(guī)則。線圖層選擇不能重疊,不能有懸掛點,面圖層選擇不能重疊和不能有縫隙。

圖1 建立拓撲
將建立好的拓撲數(shù)據(jù)加載到ArcMAP中(如圖2,紅色為拓撲錯誤),在編輯器中開始編輯,從Topology工具條中打開Error Inspector,搜索有問題圖斑。針對大批的拓撲錯誤逐一修改,會降低工作效率,本文對此類問題提出了處理方法。

圖2 拓撲錯誤示意圖

圖3 拓撲錯誤顯示列表

圖4 所選中的拓撲錯誤顯示為黑色
1)面不能相互重疊。在打開的拓撲錯誤顯示列表中,觀察Feature1和Feature2的編號。以圖3為例,選中Feature1編號皆為135,同時Feature2編號皆為356的圖斑,這樣相鄰兩個面的所有拓撲錯誤都被選中(如圖4),右鍵選擇Create feature,將重疊部分生成一個新的要素;打開面地層屬性表,按照圖形面積重新排列所有面要素,新生成的面要素area基本為0,選中;然后利用Editor下的merge把生成的面合并到相鄰的面里面,此時只需一步,選擇面135或者面356。按照這樣的處理方法,依次修改其余面重疊問題。
2)面不能有縫隙。打開拓撲錯誤顯示列表,會發(fā)現(xiàn)Feature1和Feature2的所有編號同時為0(如圖5 ),此時就不能用以上方法解決問題。本文提出兩種解決方法:

圖5 編號同時為0情況示意圖
① 勾選拓撲錯誤列表中的Visible Extent only,在圖中尋找Create feature后能合并到同一個面中的拓撲錯誤,將其放大到可視范圍內(nèi),在拓撲錯誤列表中重新搜索,所顯示出的拓撲錯誤都是當前視圖范圍內(nèi)的,然后生成新要素,加以合并。以圖6為例,所示的拓撲錯誤生成新要素之后,都可以合并到黃色面里,這樣可以一次解決多個面有縫隙的問題。

圖6 可視范圍內(nèi)的拓撲錯誤選擇
②選擇task里的auto-complete polygon工具,用草圖工具跨過縫隙繪制一條線,縫隙區(qū)域會自動生成兩個多邊形,然后運用merge合并到相鄰面里。
3)線不能重復。選中列表中的拓撲錯誤,點擊右鍵選擇Select Features,會將有問題的線要素選中,點擊Topology工具條上的Planarize Lines工具,直接將重疊線去除。
4)線不能有懸掛。根據(jù)實際情況對線進行修改,可以在拓撲錯誤列表中選中同一懸掛錯誤,右鍵選擇Extend(延伸) 或者Trim(裁剪)。延伸或裁剪時需輸入一個距離值,小于該值的懸掛線會被自動延伸或者裁剪。
隨著1)~4)的處理完成,可以得到?jīng)]有拓撲錯誤的矢量化地層,根據(jù)原始紙質(zhì)地圖的地層信息,依次完成屬性表的編輯、地層符號化與顏色整飾等,得到效果圖(圖7)。
數(shù)字化過程中,出現(xiàn)拓撲錯誤是不可避免的,圖幅較為復雜時,拓撲錯誤甚至成千上萬,面對大量的拓撲錯誤,傳統(tǒng)的、逐一修改的方法是不可取的,不僅降低工作效率,而且容易漏改。本文以構(gòu)建1∶25萬區(qū)域地震構(gòu)造圖數(shù)據(jù)庫時遇見的矢量化地層數(shù)據(jù)拓撲問題為例,提出了幾種常見拓撲錯誤的快速批量修改方法,包括面重疊、面之間有縫隙、線重復、線有懸掛等現(xiàn)象,節(jié)省了數(shù)據(jù)生產(chǎn)時間,同時提高了地層數(shù)據(jù)質(zhì)量,確保數(shù)據(jù)符合活斷層入庫要求,為數(shù)據(jù)分析、更新、查詢以及出圖奠定了基礎。

圖7 地層效果圖
[1]王寶利.Geodatabase中基于規(guī)則的拓撲關(guān)系[J].測繪與空間地理信息,2004,27(3):17-19
[2]王小蓉.基于Geodatabase拓撲規(guī)則矢量地形數(shù)據(jù)編輯方法的探討 [J].2010,12(2):41-42
[3]鄔倫.地理信息系統(tǒng)——原理、方法和應用[M].北京:科學出版社,2006
[4]胡炳輝.基于ArcEngine的CAD數(shù)據(jù)拓撲檢查研究[J].測繪技術(shù)裝備,2016,18(1):23-25
[5]張照杰.基于ArcGISEngine的多源數(shù)據(jù)拓撲檢查研究[J].北京測繪,2014(4):45-50
[6]周曉光,魏金占,岳國森,等. 基于Oracle Spatial的地籍地塊空間拓撲關(guān)系判斷[J].中南大學學報,2005,36(2):317-318
[7]周曉光,陳軍,蔣捷,等.地籍地塊間的空間拓撲關(guān)系[J].測繪學報,2003,32(4):356
P208
B
1672-4623(2017)12-0073-03
10.3969/j.issn.1672-4623.2017.12.023
2016-12-16。
陜西省地震局啟航與創(chuàng)新基金資助項目(201303);陜西省防震減災“十二五”重點資助項目(1521102700055)。
張藝,碩士,主要從事城市活斷層數(shù)據(jù)庫建設工作。