謝 瀚,黃澤純,湯家法
(1. 西南交通大學(xué) 地球科學(xué)與環(huán)境工程學(xué)院,四川 成都 611756)
利用ArcEngine和C#實(shí)現(xiàn)地下管線斷面分析
謝 瀚1,黃澤純1,湯家法1
(1. 西南交通大學(xué) 地球科學(xué)與環(huán)境工程學(xué)院,四川 成都 611756)
結(jié)合城市地下管線網(wǎng)絡(luò)分布情況和探測(cè)采集到的管線數(shù)據(jù),設(shè)計(jì)了斷面分析相關(guān)的數(shù)據(jù)組織結(jié)構(gòu),利用ArcEngine控件和Visual Studio 2005軟件開(kāi)發(fā)平臺(tái),實(shí)現(xiàn)城市地下管線橫斷面和縱斷面分析功能,為城市地下管線的科學(xué)管理提供準(zhǔn)確的決策信息。
GIS;地下管線;橫斷面;縱斷面;剖面
城市地下管線種類(lèi)繁多,是城市賴(lài)以生存和發(fā)展的“生命線”[1],與人們的生活息息相關(guān)。隨著城市的發(fā)展,城市地下管線的管理和維護(hù)也越來(lái)越繁雜[2]。隨著信息化工作的快速推進(jìn),GIS技術(shù)已被應(yīng)用到城市地下管線信息系統(tǒng)中,其中的斷面圖可以直觀、清楚地反映地下各條管線的埋深情況和管線之間的空間位置關(guān)系,這對(duì)于各類(lèi)管線的埋設(shè)、管理和維修具有重要意義。
研究使用的數(shù)據(jù)是某城市的部分地下管線探測(cè)數(shù)據(jù),主要分為燃?xì)夂凸┧芫€,顧及到管線的現(xiàn)狀和歷史信息。管線斷面數(shù)據(jù)組織設(shè)計(jì)基于ArcGIS的Geodatabase數(shù)據(jù)模型,將每類(lèi)管線又分為4個(gè)圖層,即既有管線段、既有管線點(diǎn)(閥門(mén))、新增管線段(對(duì)管線維修和更新時(shí)新鋪設(shè)的管線)、新增管線點(diǎn)(對(duì)管線維修和更新時(shí)新增設(shè)的閥門(mén))。每類(lèi)管線的管線段和管線點(diǎn)的屬性表都包含了圖上點(diǎn)號(hào)、管線材質(zhì)、管線埋深、管徑、埋設(shè)方式和地面高程、管線長(zhǎng)度等字段,管線段地面高程和埋深字段存儲(chǔ)的是各條管線段起止端點(diǎn)的地面高程和埋深,管線數(shù)據(jù)的數(shù)據(jù)庫(kù)表結(jié)構(gòu)如表1所示。
表1 管線的數(shù)據(jù)庫(kù)結(jié)構(gòu)
2.1 管線斷面分析流程
橫斷面分析指用戶(hù)在任意方向畫(huà)橫斷面線確定橫斷面,橫斷面與多條管線相交,通過(guò)該斷面圖能夠分析該斷面上的地下管線分布情況,標(biāo)示出管線的斷面尺寸、高程、管線的間距等屬性數(shù)據(jù),正確地反映管線與地面間、管線與管線間的空間關(guān)系[3]。圖1為本文實(shí)現(xiàn)的管線斷面分析功能的流程圖,包括橫斷面和縱斷面分析。在斷面圖的繪制過(guò)程中,用戶(hù)選擇斷面分析工具,在管線視圖中繪制一條斷面線或者框選多條相連管線,系統(tǒng)自動(dòng)判斷與斷面線相交的管線是否滿足條件。如滿足條件,系統(tǒng)自動(dòng)計(jì)算繪制斷面圖所需數(shù)據(jù),然后自動(dòng)繪制、顯示斷面圖和斷面分析屬性表。
圖1 斷面分析
2.2 橫斷面圖的生成方法
橫斷面圖是以橫坐標(biāo)軸表示管線斷點(diǎn)之間的間距、縱坐標(biāo)軸表示管線斷點(diǎn)的地面高程,單位為m。其生成步驟如下:
1)繪制斷面線。
2)選擇要進(jìn)行斷面分析的圖層。
3)獲取相應(yīng)的斷面數(shù)據(jù),包括斷面和管線交點(diǎn)的坐標(biāo)、管線材質(zhì)、管徑、管線類(lèi)型和地面高程等信息。大部分?jǐn)?shù)據(jù)可以直接從數(shù)據(jù)庫(kù)中獲取,部分?jǐn)?shù)據(jù)必須通過(guò)間接計(jì)算得到。
4)利用上述斷點(diǎn)坐標(biāo),計(jì)算斷點(diǎn)之間的距離,再根據(jù)地面高程和管線埋深計(jì)算管線高程,這是繪制橫斷面圖的重要依據(jù)。
5)繪制和坐標(biāo)軸標(biāo)注。由于管線斷點(diǎn)間距、管線埋深、管線之間的高程差值的差距很大,如果在繪制橫斷面圖時(shí)縱坐標(biāo)和橫坐標(biāo)的單位或比例尺一致,管線之間的高程差異就很難分辨,對(duì)管線的橫斷面分析達(dá)不到預(yù)期的效果。因此,斷面圖的縱坐標(biāo)和橫坐標(biāo)的單位應(yīng)根據(jù)高程值和斷點(diǎn)之間的距離進(jìn)行動(dòng)態(tài)標(biāo)注。
6)繪制管線的橫截面。采用圓形符號(hào)表示管線的截面形狀,然后根據(jù)管線斷點(diǎn)之間的距離和管線斷點(diǎn)高程確定管線斷點(diǎn)在斷面圖中的位置,并根據(jù)管線的管徑確定管線截面尺寸。
7)管線屬性信息自動(dòng)檢索。由于管線斷點(diǎn)屬性與斷點(diǎn)空間位置是關(guān)聯(lián)的,所以可根據(jù)管線的斷點(diǎn)坐標(biāo)和管線屬性繪制屬性表。管線屬性表的建立有利于用戶(hù)和管理員直觀而方便地查詢(xún)管線的相關(guān)信息,并根據(jù)管線屬性表中的內(nèi)容檢查斷面分析中數(shù)據(jù)的準(zhǔn)確度。
2.3 管線縱斷面圖的生成方法
縱斷面分析流程和橫斷面大致相同,只不過(guò)縱斷面分析只分析管線的地下埋設(shè)情況、地面情況并標(biāo)示管線的種類(lèi)、管徑、管頂高等屬性,表示管線沿地面的走勢(shì)[3]??v斷面圖的表示方法:橫坐標(biāo)軸表示管線的水平長(zhǎng)度,橫坐標(biāo)表示地面高程,單位為m??v斷面圖生成方法和橫斷面圖類(lèi)似,只不過(guò)在橫坐標(biāo)軸和圖上繪制的折線定義不同。
3.1 斷面數(shù)據(jù)的獲取
斷面數(shù)據(jù)的獲取其實(shí)就是對(duì)管線圖層和圖層要素的遍歷分析過(guò)程。以橫斷面數(shù)據(jù)獲取為例,步驟如下:
第一步,以所繪橫斷面線為基準(zhǔn),對(duì)所選圖層進(jìn)行遍歷搜索,獲取斷面線與管線相交的所有管線段,并存儲(chǔ)在內(nèi)存變量中;
第二步,將獲取的橫斷面線與管線的所有交點(diǎn)坐標(biāo)(x,y)組成交點(diǎn)坐標(biāo)序列,并對(duì)所有交點(diǎn)按順序進(jìn)行編號(hào)以便提取;
第三步,根據(jù)已獲取的管線段,從數(shù)據(jù)庫(kù)中搜索各條管線段所對(duì)應(yīng)的地面高程、管線埋深、管線材質(zhì)、管線長(zhǎng)度、管徑和管線編號(hào)等屬性信息;
第四步,將所獲斷面數(shù)據(jù)存放在自定義的數(shù)據(jù)結(jié)構(gòu)中[4]:
Class clsProfileStruct{ // 橫斷面數(shù)據(jù)結(jié)構(gòu)
Private string F_ID // 管線編號(hào)
Private string DH // 管線材質(zhì)
Private double DMGC // 地面高程
Private double MS // 管線埋深
Private double GJ // 管線管徑
Private double GXCD // 管線長(zhǎng)度
}
縱斷面數(shù)據(jù)獲取和橫斷面大致相同,惟一區(qū)別是縱斷面數(shù)據(jù)的選擇是多條相連的管線,而橫斷面是用橫斷面線去切割多條相鄰管線。
3.2 坐標(biāo)軸的動(dòng)態(tài)標(biāo)注
橫斷面圖中坐標(biāo)軸動(dòng)態(tài)標(biāo)注方法如下:橫坐標(biāo)軸根據(jù)計(jì)算出的管線斷點(diǎn)間距分段,其中設(shè)置間距最小值20 m、最大值100 m。當(dāng)管線斷點(diǎn)間距處于20 m和100 m之間時(shí),按其間距按1︰1的比例分段,小于20 m按20 m分段,大于100 m按100 m分段。縱坐標(biāo)軸中,根據(jù)從數(shù)據(jù)庫(kù)獲取的管線埋深信息的最值來(lái)確定等分刻度,如表2。
表2 橫坐標(biāo)刻度設(shè)置表
本文利用ArcEngine控件和Visual Studio 2005軟件開(kāi)發(fā)平臺(tái),實(shí)現(xiàn)了城市地下管線的橫斷面和縱斷面分析功能,主要包括:
1)定位:利用Visual Studio平臺(tái)中的ComboBox工具實(shí)現(xiàn)管線圖層的下拉列表選擇功能;利用ArcEngine控件中IPolyLine接口實(shí)現(xiàn)在管線視圖上繪制斷面線,并利用相關(guān)接口獲取斷面線與管線的交點(diǎn),再利用CSharp語(yǔ)言計(jì)算管線數(shù)據(jù)。
2)繪制剖面圖:利用GDI繪圖工具繪制管線的斷面圖和相關(guān)屬性表。具體操作為:用戶(hù)選擇需要進(jìn)行斷面分析的圖層,使用設(shè)計(jì)好的橫斷面分析工具,在地下管線視圖上繪制橫斷面線,雙擊后自動(dòng)生成管線的橫斷面圖(如圖2),并保存在指定的文件目錄下。
圖2 管線橫斷面圖
與管線橫斷面圖生成方法相似,選擇需要進(jìn)行斷面分析的圖層,使用設(shè)計(jì)好的縱斷面分析工具,在視圖上框選多條地下管線,然后自動(dòng)生成管線縱斷面圖(如圖3)。
圖3 管線縱斷面圖
本文給出的管線橫、縱斷面分析方法能直觀地反映地下管線與道路的埋深情況和管線間的空間關(guān)系,能為市鎮(zhèn)建設(shè)決策提供決策信息[5]。但相對(duì)于專(zhuān)業(yè)的GIS管線系統(tǒng),筆者開(kāi)發(fā)的程序在繪圖效果上有所欠缺。
[1] 連軍.基于GIS的城市地下管線綜合管理信息化研究[D].重慶:重慶大學(xué),2005
[2] 蔡寬余,楊曉慧.城市地下管線信息管理系統(tǒng)的設(shè)計(jì)[J].上海地質(zhì),2005(2):37-45
[3] 楊曉麗,李萬(wàn)輝. 基于GIS的城市地下管線橫縱斷面分析[J].測(cè)繪與空間地理信息,2010(3):58-62
[4] 于海龍,謝剛生,李大軍.基于GIS的城市地下管網(wǎng)縱橫斷面分析的設(shè)計(jì)與實(shí)現(xiàn)[J].工程勘察,2001(1): 52-55
[5] 林華,楊萍.城市綜合官網(wǎng)剖面分析模塊的設(shè)計(jì)與實(shí)現(xiàn)[J].城市勘測(cè),2004(1):30-32
[6] 高鐵軍.地下管線地理信息系統(tǒng)中任意剖面圖的實(shí)現(xiàn)[J]. 測(cè)繪工程,2000(3):37-40
[7] 張書(shū)亮,姜永發(fā),蘭小機(jī),等.基于GIS的城市地下管網(wǎng)斷面可視化分析[J].南京林業(yè)大學(xué)學(xué)報(bào):自然科學(xué)版,2004(5):86-88
P208
B
1672-4623(2014)04-0098-02
10.11709/j.issn.1672-4623.2014.04.033
謝瀚,碩士,研究方向?yàn)闇y(cè)繪工程。
2013-07-05。
項(xiàng)目來(lái)源:教育部人文社會(huì)科學(xué)研究規(guī)劃基金資助項(xiàng)目(12YJAZH124);中央高?;究蒲袠I(yè)務(wù)費(fèi)專(zhuān)項(xiàng)資金資助項(xiàng)目(A0920502051308-12)。