利用組件式GIS軟件開發(fā)排水管網(wǎng)GIS系統(tǒng)
論文類型 | 其他 | 發(fā)表日期 | 2002-02-01 |
來源 | 《工業(yè)用水與廢水》2002年第1期 | ||
作者 | 張力,王榮和,王聲東 | ||
關(guān)鍵詞 | 地理信息系統(tǒng) 排水管網(wǎng) 水力模型 計(jì)算軟件 | ||
摘要 | 隨著GIS技術(shù)的不斷發(fā)展,GIS在城市管理的許多領(lǐng)域得到了廣泛的應(yīng)用。組件式GIS是GIS發(fā)展的一個(gè)新趨勢(shì),利用組件式GIS與可視化編程語言Visual Basic相結(jié)合可以方便的實(shí)現(xiàn)排水管網(wǎng)GIS系統(tǒng)中圖文互查和屬性信息的編輯等重要GIS功能。 |
張力,王榮和,王聲東
(同濟(jì)大學(xué)環(huán)境科學(xué)與工程學(xué)院,上海200092)
摘 要:隨著GIS技術(shù)的不斷發(fā)展,GIS在城市管理的許多領(lǐng)域得到了廣泛的應(yīng)用。組件式GIS是GIS發(fā)展的一個(gè)新趨勢(shì),利用組件式GIS與可視化編程語言Visual Basic相結(jié)合可以方便的實(shí)現(xiàn)排水管網(wǎng)GIS系統(tǒng)中圖文互查和屬性信息的編輯等重要GIS功能。
關(guān)鍵詞:地理信息系統(tǒng),排水管網(wǎng),水力模型,計(jì)算軟件
中圖分類號(hào):TP31;TU992.2
文獻(xiàn)標(biāo)識(shí)碼:B
文章編號(hào):1009-2455(2002)01-0055-03
概述
城市排水管網(wǎng)GIS系統(tǒng)是融計(jì)算機(jī)圖形和數(shù)據(jù)庫于一體,儲(chǔ)存和處理空間信息的高新技術(shù),它把地理位置和相關(guān)屬性有機(jī)結(jié)合起來,根據(jù)實(shí)際需要準(zhǔn)確真實(shí)、圖文并茂地輸出給用戶。滿足市政部門對(duì)排水系統(tǒng)的運(yùn)行管理、設(shè)計(jì)和信息查詢的需要,借助其獨(dú)有的空間分析功能和可視化表達(dá),進(jìn)行各種輔助決策[1]。
1 排水管網(wǎng)GIS系統(tǒng)的功能分析
排水管網(wǎng)及其附屬設(shè)施與城市的地形、地貌、河流、湖泊以及市政道路、工商業(yè)、居民生活區(qū)的規(guī)劃密切相關(guān),GIS系統(tǒng)的建立需要詳細(xì)、準(zhǔn)確的相關(guān)數(shù)據(jù);系統(tǒng)存儲(chǔ)和處理的信息主要是排水管網(wǎng)及其輔助設(shè)施,處理的信息比較純粹,地形、地貌等信息只作為背景來存儲(chǔ)。管網(wǎng)GIS系統(tǒng)還需要與管網(wǎng)設(shè)計(jì)。水力模型、水質(zhì)水量監(jiān)測系統(tǒng)等模塊緊密結(jié)合,實(shí)現(xiàn)數(shù)據(jù)的交換與共享[2]。
根據(jù)排水管網(wǎng)的特點(diǎn)將GIS系統(tǒng)劃分為以下幾個(gè)主要功能模塊,如圖1所示。
2 組件式GIS軟件在排水管網(wǎng)GIS系統(tǒng)中的應(yīng)用
組件式0S(COMGIS)軟件是適應(yīng)軟件組件化潮流的新一代地理信息系統(tǒng)。它的基本思想是把GIS的各大功能模塊劃分為幾個(gè)控件,每個(gè)控件完成不同的功能。各個(gè)GIS控件之間,以及GIS控件與其它非GIS控件之間,可以方便地通過可視化的軟件開發(fā)工具集成起來,形成最終的GIS應(yīng)用??丶缤欢迅魇礁鳂拥姆e木,他們分別實(shí)現(xiàn)不同的功能(包括GIS和非GIS功能),根據(jù)需要把實(shí)現(xiàn)各種功能的“積木”搭建起來,就構(gòu)成應(yīng)用系統(tǒng)。目前流行的GIS軟件較多,各軟件各有特色,但主要的GIS功能都是相似的。本文選用國產(chǎn)的組件式GIS軟件Su—perMap(北京超圖公司),對(duì)排水管網(wǎng)GIS系統(tǒng)的主要功能的實(shí)現(xiàn)進(jìn)行探討。
在排水管網(wǎng)中,各組成部件之間通過特定的屬性信息相互聯(lián)系,如節(jié)點(diǎn)、管道等。因此在排水管網(wǎng)GIS中,對(duì)節(jié)點(diǎn)和管道等排水設(shè)施實(shí)現(xiàn)圖形和屬性的交互查詢是應(yīng)用系統(tǒng)的一個(gè)非常重要的功能。在應(yīng)用AutoCAD等CAD軟件開發(fā)的排水管網(wǎng)GIS系統(tǒng)中,一般的處理方法是,把相應(yīng)的非圖形屬性信息(對(duì)于管道來說,主要有上、下游節(jié)點(diǎn)編號(hào)、管徑、管長、管材、流量、坡度、流速等屬性信息)存貯于其它類型的數(shù)據(jù)庫中,每當(dāng)處理時(shí),通過圖形的ID號(hào)來查找相應(yīng)的數(shù)據(jù)庫,并按照對(duì)圖形信息操作的過程,再相應(yīng)操作數(shù)據(jù)庫,這種處理方法在速度和靈活度上都存在著缺點(diǎn)。而GIS軟件軟件則是利用特殊的數(shù)據(jù)庫管理系統(tǒng)(DBMS)對(duì)圖形信息所在的空間數(shù)據(jù)庫和屬性信息所在的屬性數(shù)據(jù)庫進(jìn)行管理。利用GIS的這種屬性特殊性可非常方便的實(shí)現(xiàn)圖形和屬性的交互操作。
下面是利用SuperMap的GIS控件和VB編寫的一段排水管網(wǎng)GIS系統(tǒng)的圖、文的交互查詢程序。
‘圖查屬性
Private Sub ShowObjInfo()′顯示對(duì)象的性性列表
Dim objR ecordset As soRecordset
‘soRecordsetJ UPERmAP中的記錄集對(duì)象
Dim FieldInfo As soFieldINnfo
‘soRecordset是SuperMap中的字段信息對(duì)象
Dim objGeometry As soGeometry
‘soGeometry是SuperMap中的字段信息對(duì)象
Dim Dt As soDataset
‘soDataset是SuperMap中的數(shù)據(jù)集對(duì)象
Dim FieldValue As Variant
Dim i As Long, j As long
Dim nFieldcount As long
‘FrmInfo為顯示屬性的窗體,lvInfo為窗體中的ListView控件
frmInfo.lvIfo.ListItems.Clear
‘判斷地圖控件SuperMap 1 中的選擇集為空或是否設(shè)為選擇狀態(tài),
Me為當(dāng)前窗體
If Me. SuperMap1. Selection. Count>0 And Me. SuperMap1.Acction=scaSelect Then
‘將選中的元素轉(zhuǎn)換為記錄,添加屬性信息列表,SuperMap1為Su-perMaP地圖控件
Set objRecordset
Me. SuperMap1. Selection. TOrecordset(False)
If objRecordset Is Nothing Then
MsgBox“所選對(duì)象的記錄集出錯(cuò),無法繼續(xù)‘vbIformation
Exit Sub
EndIf
′添加屬性信息列表,先添加字段值,后添加字段名
j=0
For i=1 To objRecordset. FieldCount
Set FieldInfo=objRecordset.GetFieldInfo(i)
If FieldInfo Is Nothing Then
MsgBox“記錄集的字段信息出錯(cuò)”,
vbInformation
Exit sub
Else
′\添加字段值
FieldValue=objRecordset. GetFieldValue(i)
If (VarType(FieldValue)=vbEmpty) Or
(VarType(FieldValue)=vbNull)Then
FieldValue=“”
End If
frmInfo.1 vInfo.ListItems.Add,, FieldValue
End If
′\添加字段名
FrmInfo.lvInfo.ListItems(j). SubItems(1)
FieldInfo.Name
End If
Next i
End If
End Sub
ShowObjInfo()過程,用于顯示地圖控件SuperMap1中所選中的地圖對(duì)象的屬性,地圖控件是SuperMap軟件中的核心控件之一,用于打開、顯示地圖等基本操作。通過設(shè)置SuperMap1的Aciton屬性為scaSelect,可以在地圖上進(jìn)行選擇圖形對(duì)象的操作,并將所選擇的對(duì)象存入SuperMap1的Selection屬性。通過Selection的ToRecordset(False)函數(shù)將選擇的對(duì)象轉(zhuǎn)為記錄集。
下面一段程序是顯示屬性窗體中ListView控件的AfterLabe1 Edit事件,它可以完成對(duì)屬性信息的輸入入和修改的功能。
‘屬性編輯
Private Sub 1 vInfo-AfterLabe1 Edit(Cancel As Integer, NewString As String)
Dim objRecordset As soRecordset
‘frmMain為主窗口
Set objRecordset
frmMain. ActiveForm. SuperMap1. Selection. Tor ecordset
(False)
If objRecordset Is Nothing Then
MsgBox“記錄集出錯(cuò),無法繼續(xù)”,
vbInformation
Exit Sub
End If
objRecordset. MoveFirst
objRecordset.Edit
‘將在ListView探件中輸入新數(shù)據(jù)放入記錄集
objRecordset.SetFieldValue
1 vInfo. SelectedItem. SubItems(1),NewString
objRecordset.Update
Set objRecordset=Nothing
End Sub
用相似的方法,可以實(shí)現(xiàn)通過SQL語句來查詢圖形信息。因此利用組件式GIS軟件可以方便靈活的實(shí)現(xiàn)排水管網(wǎng)GIS系統(tǒng)中的GIS功能,具有很多AutoCAD等輔助設(shè)計(jì)軟件無法實(shí)現(xiàn)和比擬的功能。
3 結(jié)束語
排水管網(wǎng)GIS系統(tǒng)的建立是將GIS功能和水力分析有機(jī)的結(jié)合起來,實(shí)現(xiàn)排水系統(tǒng)的管理和規(guī)劃設(shè)計(jì)。它作為城市市政建設(shè)的一個(gè)組成部分必須與道路、給水等其它公用設(shè)施的規(guī)劃設(shè)計(jì)和管理系統(tǒng)緊密聯(lián)系。
利用新一代的組件式GIS軟件開發(fā)排水管網(wǎng)GIS應(yīng)用系統(tǒng)具有很強(qiáng)的擴(kuò)展性,易與其它系統(tǒng)集成,大部分組件式軟件可以支持多種開發(fā)語言,包括Visual C++,Visual Basic,Visual FoxPro,Delphi,C++ Builder 以及 Power Builder等。在國內(nèi)GIS軟件中,SuPerMaP(北京超圖)和MapGIS(武漢華地)等組件式軟件在國內(nèi)已逐步應(yīng)用到工程中,開發(fā)了一些給水、排水等專業(yè)GIS應(yīng)用系統(tǒng),如蘇州市給水管網(wǎng)動(dòng)態(tài)數(shù)據(jù)管網(wǎng)系統(tǒng)(采用MapGIS)、香港綜合地理信息系統(tǒng)、澳門地理信息系統(tǒng)、杭州/柳州/寧波/中山等城市的土地管理信息系統(tǒng)(采用SuperMap)。
參考文獻(xiàn):
[1]修文群,等.城市地理信息系統(tǒng)(GIS)[M].北京:希望電腦公 司,1999.
[2]王榮和,等.應(yīng)用 ObjectARX開發(fā)給水管網(wǎng) GIS系統(tǒng)[J].工業(yè) 用水與廢水,2000,(3):48-50.
作者簡介:張力(1974-),男,同濟(jì)大學(xué)環(huán)境科學(xué)與工程學(xué)院99級(jí)碩士研究生。
論文搜索
發(fā)表時(shí)間 至
月熱點(diǎn)論文
論文投稿
很多時(shí)候您的文章總是無緣變成鉛字。研究做到關(guān)鍵時(shí),試驗(yàn)有了起色時(shí),是不是想和同行探討一下,工作中有了心得,您是不是很想與人分享,那么不要只是默默工作了,寫下來吧!投稿時(shí),請(qǐng)以附件形式發(fā)至 paper@h2o-china.com ,請(qǐng)注明論文投稿。一旦采用,我們會(huì)為您增加100枚金幣。