王振宇,李宏偉,王海濤
(1.信息工程大學 地理空間信息學院,河南 鄭州 450001)
地下管線數據的點線聯動編輯方法
王振宇1,李宏偉1,王海濤1
(1.信息工程大學 地理空間信息學院,河南 鄭州 450001)

通過分析管線數據編輯的特點,結合管線數據本身的結構特征,給出了一種解決同一要素集內管線數據點線聯動的方法,并由此引申出了基于要素集的管線數據編輯方法。
地下管網;要素集;管線編輯;關聯關系;點線聯動
在常見的地下管線采集和編輯系統中,管線點要素和線要素的編輯都是基于自身分開的獨立要素層進行的[1]。這種編輯方式過于復雜、繁瑣。本文提出基于要素集的點線聯動,嘗試在要素集層次實現點線聯動的功能,簡化編輯過程,達到提高編輯效率的目的。
地下管線可抽象為管線點(管線特征點)和管線段。管線點分為明顯點、隱蔽點和管線特征點(交叉點、分支點、轉折點、起止點以及管線上的附屬設施中心點)。管線段又組成環,地下管網為環狀網和樹狀網組成的復雜網絡。管線點和管線段除具有圖形數據外,還具有屬性數據。管線點屬性項包括管線點編號、管線點類型、規格、材質、埋深、地面高程等;管線段屬性項包括管線段編號、管線段類型、規格、材質、修建年代、產權單位等[2]。地下管線數據具備以下特點:
1)點線拓撲關系。管線點必須在管線段上,孤立的管線點數據是無效的。管線線要素的端點必定被對應的點要素覆蓋,這是因為同一要素集的各個線要素之間是被管線點連接起來的,且管線線要素必須存在結束的設施點。
2)管線類型分層。不同管線之間不存在管線相交,因此管線間不存在拓撲關系。不同的管線類型之間可實現信息分層,綜合管線數據可根據管線類型的不同分成包含點要素和線要素的要素集,要素集內的點要素和線要素也是分層的。
3)反映管線空間特征,可繪制縱橫剖面圖[3]。橫剖面是指垂直于管線位置的一個截面,在該截面中可以直觀地了解相鄰的空間位置關系及道路中心線、地面和道路紅線的距離。縱剖面是指沿管線方向的一個截面,在該截面中,可以直觀地考察管線的走向和坡度。縱剖面對于高程差的污水管線和雨水管線尤其有用。
管線數據種類繁多、數量龐大,為了更好地處理和應用管線數據,可借鑒ArcGIS中要素數據集的概念,將管線數據分成一個個要素集,如將電力管線點和電力管線段歸到電力管線要素集中,既方便歸類又方便以后創建地下管網。
綜上所述,管線數據呈現“低耦合高內聚”的特性,即要素集內的管線點要素和線要素密切相關,要素集間的管線數據之間關聯性較弱。因此,本文提出基于要素集層次的管線數據點線聯動的編輯方法,通過給要素集內的管線數據添加一個關聯關系,在GIS軟件中實現管線點要素和線要素的同時移動。
通過建立管線要素集內的關聯關系,可幫助地下管網編輯系統在移動管線點要素時迅速找到對應要素集內的管線,進而在移動點要素時,可同時觸發并實現要素集內管線線要素的移動,實現管線數據的點線聯動。關聯關系的設計,要能實現在編輯過程中由要素集內的一種管線數據快速找到另外一種管線數據,方便對要素集進行聯動編輯。設計的關聯關系為:gsRelate-關系名稱;MainClass-主要素名稱;SubClass-副要素名稱;PointTouchLine-關聯類型。
為了驗證設計的關聯關系是否能在編輯過程幫助實現點線聯動,借由ArcGIS軟件平臺,開發了一些擴展工具進行實驗。
如圖1所示,本文應用某城市地下管線歷史測量數據中的部分給水管線和電力管線數據進行實驗,利用ArcMap中的編輯模塊開始和結束編輯,方便實驗過程中進行Undo/Redo的操作。點線聯動工具實現的是移動管線點的同時關聯線數據也跟著自動移動,因此在選擇當前編輯圖層時應當選擇管線點數據圖層。在開始移動之前判斷是否存在關聯關系,一方面是為同一要素集內的管線點數據和線數據建立關聯關系,另一方面便于對已經設置過關聯關系的管線數據集直接進行編輯操作。

圖 1 點線聯動實驗模型設計框架
在ArcMap加載數據和編輯模塊開啟編輯之前,工具條的使用是無意義的,因此只有在StartEditting時激活工具條,實現工具條初始化,加載工具條所需的相關數據,進而開始編輯操作。在關聯設置之前于工具條內選好當前編輯層和所要關聯的要素,然后進行關聯設置。
管線關聯關系設置完畢后,就可開始進行點線聯動的編輯操作。點線聯動原理是:在圖上點擊要移動的管線點,在設置好的緩沖區半徑內搜索管線點,選中一個管線點要素;根據之前設置好的關聯關系,過濾出與所選管線點在一個要素集內相關的管線線要素,然后根據管線數據存在點線拓撲關系的特點,考慮到測量數據往往存在一定的誤差,因此設置一個閾值,在選好的管線點附近搜索關聯線要素;最后移動點位,同時移動相關線要素與所選管線點“重疊”的線要素端點,實現管線數據的點線聯動編輯。點線聯動算法如下:
鼠標點擊圖上點位P,要移動的管線點P*,與P*連接的管線段集合L*,a、b為設置的緩沖區半徑。
1) 搜索 P 點附近的管線點 Pi,當距離 d(P, Pi)< a,找到 P*=Pi;
2)由管線點P*(MainClass)找到所屬的feature dataset,進而找到要素集內的管線段(SubClass)集合L(L1,L2,… ,Li);
3)遍歷集合L(L1,L2,…,Li),當管線段起始點 Start-PLi到P*的距離 D(P*,Start-PLi)< b或終點End-PLi到 P*的距離 D(P*,End-PLi)< b,找到與要移動的管線點相連接的管線段集合L* (Li…Lj);
4)移動管線點P*的同時移動管線段集合L*相應的端點,實現點線聯動。

圖2 點線聯動前示意圖

圖3 點線聯動后效果圖
如圖2、圖3所示,在移動給水管線點1JS48后,與之相關聯的3條給水管線段同時發生了移動,且保持原始方向不變。觀察圖上管線數據的標注,管線點和管線段的標注也都隨之移動到了新的位置,并做好了旋轉操作。
[1] 鮑其勝,林海,何立恒. 城市地下管線圖點線聯動編輯探討[C].江蘇省測繪學會2007學術年會, 2008
[2] 蔡岷. GIS技術在地下綜合管線系統中的應用[D]. 大連:大連理工大學,2006
[3] 劉守軍,黃慧,張燕江.無拓撲關系下GIS圖形編輯聯動的解決辦法[J].武漢大學學報:信息科學版,2003,28(1):111-114
[4] 楊伯鋼. 城市地下管線數據建庫與共享應用[M]. 北京:測繪出版社,2011
[5] 農宇,杜清運. 基于Geodatabase的城市地下綜合管線數據庫設計[J]. 測繪信息與工程, 2010, 35(6): 36-38
[6] Yang J, Liu Y, Peng Z, et al. Research on Developing an Underground Pipeline Information System with ArcGIS Engine[C]. MIPPR 2005 Geospatial Information, Data Mining,and Applications, International Society for Optics and Photonics,2005
[7] Liu Weimu, Liu Houquan. The Implementation of Map Editing Based ArcGIS Engine[J]. Microcomputer Information, 2009(4): 80
[8] Gao Tiejun. Research on Pipeline Model Construction and Pipeline Rules Application in ArcGIS[J]. Science of Surveying and Mapping, 2009(6): 103
Method of Pipeline Linkage Editing in Underground Pipeline Data
byWANG Zhenyu
Through analyzing the characteristics of the editing in pipeline data, with the structure of the pipeline data, this paper gave a solution moving point with polyline in feature dataset. And a method of editing based on feature dataset was put forward which contributed to solving the editing problem of point with polyline in urban underground pipeline system at the same time.
underground pipeline network,feature dataset,pipeline editing,relationship,pipeline linkage
P208
B
1672-4623(2014)02-0130-02
10.11709/j.issn.1672-4623.2014.02.046
2013-07-16。
項目來源:國家自然科學基金資助項目(41140012、41271392)。
王振宇,碩士,研究方向為空間數據挖掘、GIS開發與應用。