張星星,宋旭東,丁 易,何小波,沈富強(qiáng)
(1.成都理工大學(xué) 地球科學(xué)學(xué)院,四川 成都610059;2.四川省核工業(yè)地質(zhì)調(diào)查院,四川 成都610052;3.西南交通大學(xué),四川 成都611756;4.四川測(cè)繪地理信息局測(cè)繪技術(shù)服務(wù)中心,四川 成都610081)
基于DotNetBar及ArcEngine的供水管網(wǎng)地理信息系統(tǒng)
張星星1,宋旭東2,丁 易2,何小波3,沈富強(qiáng)4
(1.成都理工大學(xué) 地球科學(xué)學(xué)院,四川 成都610059;2.四川省核工業(yè)地質(zhì)調(diào)查院,四川 成都610052;3.西南交通大學(xué),四川 成都611756;4.四川測(cè)繪地理信息局測(cè)繪技術(shù)服務(wù)中心,四川 成都610081)
以Microsoft Visual Studio 2010為開發(fā)工具,以DotNetBar和ArcEngine 10.1為開發(fā)組件,設(shè)計(jì)并實(shí)現(xiàn)了一套原型ArcGIS供水管網(wǎng)地理信息系統(tǒng)。該系統(tǒng)具有圖形基礎(chǔ)操作、空間選擇、空間編輯、空間分析等基本功能,用戶還可根據(jù)自身需求進(jìn)行相應(yīng)的功能裁剪,可為城鎮(zhèn)地區(qū)供水管網(wǎng)的智能化、網(wǎng)絡(luò)化設(shè)計(jì)與更新提供軟件支持。
DotNetBar;ArcEngine 10.1;數(shù)據(jù)庫(kù)設(shè)計(jì);供水管網(wǎng)地理信息系統(tǒng)
近幾年來,國(guó)內(nèi)城鎮(zhèn)化進(jìn)程加快,對(duì)電力、煤氣、供水等城市管道的建設(shè)管理提出了更高的要求。在多雨季節(jié),部分城市出現(xiàn)了內(nèi)澇現(xiàn)象,因此研制一套操作性強(qiáng),易于政府部門管理的供水管網(wǎng)信息系統(tǒng)十分必要。目前國(guó)外有許多優(yōu)秀的供水管網(wǎng)信息系統(tǒng)平臺(tái)和軟件,如美國(guó)Intergraph公司的AM /FM軟件實(shí)現(xiàn)了在管網(wǎng)信息系統(tǒng)中的應(yīng)用;德國(guó)Siemens公司的設(shè)施管理平臺(tái)SICAD-UT也廣泛應(yīng)用于電力、煤氣、自來水等方面[1]。ArcEngine具有強(qiáng)大的應(yīng)用程序接口,易學(xué)易用、開發(fā)效率高、能解決DLL災(zāi)難等優(yōu)勢(shì)。本文結(jié)合國(guó)內(nèi)外研究現(xiàn)狀,基于DotNetBar和ArcEngine 10.1開發(fā)了一套原型供水管網(wǎng)地理信息系統(tǒng)。
系統(tǒng)數(shù)據(jù)庫(kù)包括用戶管理系統(tǒng)和供水管網(wǎng)地理數(shù)據(jù)庫(kù)。用戶管理系統(tǒng)主要以用戶管理、權(quán)限分配為主,而供水管網(wǎng)地理數(shù)據(jù)庫(kù)則集成了城鎮(zhèn)的圖形數(shù)據(jù)、屬性數(shù)據(jù)和拓?fù)鋽?shù)據(jù)[2],主要功能表現(xiàn)為數(shù)據(jù)的存儲(chǔ)、更新、維護(hù)等。
空間數(shù)據(jù)是GIS的核心和靈魂。準(zhǔn)確、高效地獲取空間數(shù)據(jù)是GIS發(fā)展和應(yīng)用的基礎(chǔ)[3]。為了“凈化”數(shù)據(jù),滿足各地區(qū)供水管網(wǎng)空間分析與應(yīng)用的需要,數(shù)據(jù)采集完成后,需對(duì)數(shù)據(jù)進(jìn)行完整性和邏輯一致性的檢查,再構(gòu)建供水管網(wǎng)幾何網(wǎng)絡(luò)模型和存儲(chǔ)結(jié)構(gòu)模型。由于空間數(shù)據(jù)的保密性,本系統(tǒng)中采用的數(shù)據(jù)為某城鎮(zhèn)部分?jǐn)?shù)據(jù),并進(jìn)行坐標(biāo)弱化處理。
供水管網(wǎng)數(shù)據(jù)庫(kù)設(shè)計(jì)的主要內(nèi)容包括:坐標(biāo)弱化;ArcGIS 10.1圖形數(shù)據(jù)及屬性數(shù)據(jù)的關(guān)聯(lián);Access數(shù)據(jù)庫(kù)中的SQL查詢,去冗余數(shù)據(jù);完整性檢查;ArcCatalog10.1構(gòu)建幾何網(wǎng)絡(luò)模型和存儲(chǔ)結(jié)構(gòu)模型。其數(shù)據(jù)庫(kù)結(jié)構(gòu)和給水管線屬性表如圖1。
圖1 供水管網(wǎng)數(shù)據(jù)庫(kù)及給水管線屬性表
2.1 系統(tǒng)總體設(shè)計(jì)
綜合現(xiàn)有資料,對(duì)系統(tǒng)進(jìn)行了現(xiàn)狀調(diào)查和需求分析,提出了ArcGIS系統(tǒng)總體設(shè)計(jì)目標(biāo);并結(jié)合系統(tǒng)設(shè)計(jì)的八大原則,進(jìn)行了總體設(shè)計(jì)。該新型系統(tǒng)集成了空間數(shù)據(jù)庫(kù)、DotNetBar及C/S等多種技術(shù)[4],可擺脫對(duì)ArcGIS平臺(tái)的依賴。首先獲取管網(wǎng)的GIS圖形數(shù)據(jù)及屬性數(shù)據(jù);再將二者結(jié)合并記錄在CIS數(shù)據(jù)庫(kù)中;然后進(jìn)行預(yù)處理,形成一個(gè)完整的數(shù)據(jù)包[5]并導(dǎo)入該系統(tǒng);最后通過圖形處理界面及Windows操作終端,對(duì)該地區(qū)城鎮(zhèn)管網(wǎng)進(jìn)行數(shù)據(jù)分析。系統(tǒng)總體框架如圖2。
2.2 系統(tǒng)功能設(shè)計(jì)
系統(tǒng)結(jié)合組件式GIS特點(diǎn),采用了自下而上的方法進(jìn)行功能模塊設(shè)計(jì),共設(shè)計(jì)了12 種主要功能。各模塊之間彼此相對(duì)獨(dú)立,用戶后期可根據(jù)實(shí)際生產(chǎn)需求進(jìn)行功能裁剪[6];并在滿足供水管網(wǎng)基本要求的情況下,針對(duì)不同用戶,設(shè)計(jì)了不同的解決方案,如圖3。
圖2 系統(tǒng)總體框架設(shè)計(jì)
圖3 系統(tǒng)功能模塊設(shè)計(jì)
本系統(tǒng)采用C/S應(yīng)用模式,以Windows7為開發(fā)平臺(tái),結(jié)合Microsoft Visual Studio 2010、 DotNetBar及ArcEngine 10.1實(shí)現(xiàn)了原型供水管網(wǎng)地理信息系統(tǒng)的開發(fā)。
3.1 登錄與注冊(cè)
該模塊針對(duì)授權(quán)用戶設(shè)計(jì)了登錄界面,非授權(quán)用戶設(shè)計(jì)了注冊(cè)界面,以保證數(shù)據(jù)的安全性。二者在實(shí)現(xiàn)過程中,使用Timer控件來保證窗口的動(dòng)畫顯示效果(圖4)。用戶通過登錄訪問內(nèi)置個(gè)人用戶數(shù)據(jù)庫(kù),注冊(cè)或訪問系統(tǒng)主界面。
圖4 用戶登錄界面
系統(tǒng)界面即用戶體驗(yàn)界面,是整個(gè)系統(tǒng)的核心,是用戶與系統(tǒng)進(jìn)行人機(jī)交互的載體。該系統(tǒng)使用Photoshop及DotNetBar進(jìn)行系統(tǒng)主界面模塊設(shè)計(jì),如圖5。
圖5 系統(tǒng)主界面
3.2 主界面功能實(shí)現(xiàn)
基礎(chǔ)模塊實(shí)現(xiàn)了shp、CAD等各類矢量數(shù)據(jù)的圖形操作功能,包括文件、工具、地圖操作、鷹眼、右鍵菜單及閃爍等模塊。空間功能為原型系統(tǒng)的核心,主要實(shí)現(xiàn)空間選擇、空間量測(cè)、空間查詢、圖形編輯、可視化分析和空間分析6大功能。
1)空間選擇:矩形、圓域、多邊形、折線選擇。不同用戶根據(jù)不同的選擇方式,進(jìn)行管網(wǎng)、節(jié)點(diǎn)等要素的日常選擇,使用Tocc右鍵菜單屬性表進(jìn)行相應(yīng)的屬性維護(hù)和更新。
2)空間量測(cè):多邊形量測(cè)(如某點(diǎn)管網(wǎng)爆破,可借助緩沖區(qū)分析量取受災(zāi)范圍)、周長(zhǎng)量測(cè)(兩節(jié)點(diǎn)或兩排氣閥之間的距離)、坐標(biāo)量取。
3)空間查詢:對(duì)普通用戶(圖6a)和專業(yè)用戶(圖 6b)設(shè)置了不同的解決方案。用戶可根據(jù)圖形獲取屬性,也可根據(jù)屬性獲取圖形。
圖6 空間查詢界面
4)圖形編輯:普通編輯可通過IWorkspaceEdit接口啟動(dòng)或停止一個(gè)編輯流程,該接口提供了13種方法[7]進(jìn)行編輯事務(wù);而高級(jí)編輯使用ITopologicalOperator接口設(shè)置了高級(jí)編輯菜單。系統(tǒng)可對(duì)管線、水表、排氣閥、節(jié)點(diǎn)等要素進(jìn)行空間編輯,如圖7。
圖7 空間數(shù)據(jù)編輯
圖8 節(jié)點(diǎn)的可視化顯示
5)可視化分析:該模塊設(shè)計(jì)了基于ArcGIS自帶的符號(hào)化顯示和ArcEngine唯一值符號(hào)化顯示(圖8)兩種解決方案,可對(duì)管線、節(jié)點(diǎn)、消防栓等要素進(jìn)行地圖的符號(hào)化表達(dá)。該模塊主要結(jié)合Renderer、Color、Symbol三大組件來完成,符號(hào)化信息通過地圖顯示保存在要素圖層中[8]。
6)空間分析:系統(tǒng)根據(jù)用戶的需求,提供了兩種緩存區(qū)分析方案、一種疊置分析和路徑分析。
緩沖區(qū)分析中,普通用戶可根據(jù)系統(tǒng)界面左邊的矩形選擇工具進(jìn)行要素選擇,點(diǎn)擊“基于要素的緩沖區(qū)分析”,選擇源圖層、目標(biāo)圖層和緩沖區(qū)半徑,分析完成后可查看周邊范圍內(nèi)城市內(nèi)澇情況分布(圖9為某城鎮(zhèn)某管網(wǎng)爆破“8 m”范圍受災(zāi)情況);專業(yè)用戶可任意進(jìn)行參數(shù)變換(線緩沖方向、末端封閉類型、緩沖區(qū)融合類型等),然后輸出相應(yīng)的變化圖層,進(jìn)行數(shù)據(jù)統(tǒng)計(jì)。詳細(xì)實(shí)現(xiàn)過程如圖10所示。
圖9 管網(wǎng)爆破受災(zāi)范圍
圖10 緩沖區(qū)分析實(shí)現(xiàn)流程圖
疊置分析是指利用已有資料及爆破管網(wǎng)緩沖區(qū)數(shù)據(jù),對(duì)受災(zāi)區(qū)域地表要素進(jìn)行統(tǒng)計(jì)分析,用戶可準(zhǔn)確直觀地判讀受災(zāi)程度。網(wǎng)絡(luò)分析主要是依據(jù)幾何網(wǎng)絡(luò)模型,對(duì)點(diǎn)(節(jié)點(diǎn)、消防栓及閥門等)要素的位置選取,距離成本進(jìn)行綜合分析,為用戶創(chuàng)建最佳規(guī)劃設(shè)計(jì)方案提供一定的數(shù)據(jù)支持。其主要步驟包括:①獲取預(yù)定義在供水管網(wǎng)數(shù)據(jù)庫(kù)中的幾何網(wǎng)絡(luò)模型;②定義邊線旗數(shù)組,獲取最近網(wǎng)絡(luò)節(jié)點(diǎn);③計(jì)算路徑(權(quán)重),并進(jìn)行分析。詳細(xì)實(shí)現(xiàn)過程及效果如圖11、12。
圖11 最短路徑實(shí)現(xiàn)流程圖
圖12 兩節(jié)點(diǎn)之間最短路徑示例
本文以DotNetBar和ArcGIS Engine 10.1為開發(fā)組件,完成了基于ArcEngine的ArcGIS供水管網(wǎng)地理信息系統(tǒng)的開發(fā)。該系統(tǒng)具有開發(fā)周期短,成本低,操作簡(jiǎn)便,可同時(shí)滿足普通用戶和專業(yè)人員操作的要求;系統(tǒng)原型還可根據(jù)實(shí)際情況進(jìn)行功能模塊裁剪,為城鎮(zhèn)供水部門的供水管理,管道安全控制提供技術(shù)支撐。
[1] 劉波,李大軍,阮見,等.基于ArcEngine的供水管網(wǎng)三維模塊的設(shè)計(jì)與實(shí)現(xiàn)[J].測(cè)繪科學(xué),2010,35(6):236-237
[2] 宋旭東.基于3G手機(jī)的嵌入式GIS空間數(shù)據(jù)采集系統(tǒng)的研發(fā)[D].成都:西南交通大學(xué),2013
[3] 陳穎彪,謝鴻宇,張嘉輝.基于異構(gòu)跨平臺(tái)技術(shù)的GIS軟件原型設(shè)計(jì)與開發(fā)[J].測(cè)繪通報(bào),2007,53(6):23-27
[4] 朱振華,侯敏.基于ArcEngine的基礎(chǔ)地理信息系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].地理空間信息,2011,9(1):88-89
[5] 蔡國(guó)林,宋旭東,張奧麗,等.基于智能手機(jī)的嵌入式空間數(shù)據(jù)采集系統(tǒng)研制[J].國(guó)土資源遙感,2015,27(3):182-187
[6] 任福.基于PDA的個(gè)人移動(dòng)導(dǎo)航系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].武漢:武漢大學(xué),2002
[7] 邱洪鋼,張青蓮,陸紹強(qiáng).ArcGIS Engine開發(fā)從入門到精通[M].北京:人民郵電出版社,2010:169-170
[8] 蘭小機(jī),劉德兒,魏瑞娟.基于ArcObjects與C#.NET的GIS應(yīng)用開發(fā)[M].北京:冶金工業(yè)出版社,2011:166-214
[9] 王戰(zhàn)舉,范玉茹.基于ArcEngine的供水管網(wǎng)GIS符號(hào)庫(kù)的設(shè)計(jì)與實(shí)現(xiàn)[J].地理空間信息,2012,10(1):112-115,126
[10] 李花.基于ArcEngine的供水管網(wǎng)三維模塊的開發(fā)研究[J].城市勘測(cè),2007(4):19-22
[11] 王春曉,王斐.基于ArcEngine的公路巡檢系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].測(cè)繪科學(xué),2014,39(5):40-42
[12] 閆寧.基于ArcEngine的排水管網(wǎng)數(shù)據(jù)處理系統(tǒng)開發(fā)[J].北京測(cè)繪,2014(5):83-87
P208
:B
:1672-4623(2016)11-0036-03
10.3969/j.issn.1672-4623.2016.11.013
張星星,碩士研究生,主要從事GIS、礦山遙感等數(shù)據(jù)處理工作。
2015-07-07。
項(xiàng)目來源: 測(cè)繪地理信息公益性行業(yè)科研專項(xiàng)資助項(xiàng)目(201412019)。