牟乃夏ArcEngine教程-第9章管網幾何網絡分析_第1頁
牟乃夏ArcEngine教程-第9章管網幾何網絡分析_第2頁
牟乃夏ArcEngine教程-第9章管網幾何網絡分析_第3頁
牟乃夏ArcEngine教程-第9章管網幾何網絡分析_第4頁
牟乃夏ArcEngine教程-第9章管網幾何網絡分析_第5頁
已閱讀5頁,還剩15頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、牟乃夏牟乃夏 ArcGIS Engine ArcGIS Engine 地理信地理信息系統開發教程息系統開發教程配套配套PPT-PPT-第9章 管網幾何網絡分析目錄 1. 幾何網絡 2. 顯示網絡流向 3. 網絡追蹤分析 4. 爆管分析1. 幾何網絡 在ArcGIS中,使用Geometric Network模型來表示幾何網絡,并使用Geodatabase里某個數據集中的多個要素類來創建幾何網絡。幾何網絡的概念主要有幾何網絡中的要素、邏輯網絡和網絡元素,以及幾何網絡的屬性(如源頭和匯)等。幾何網絡的實例圖,該圖表示了一個簡單示例的供水幾何網絡的網絡連接關系。1. 幾何網絡 幾何網絡要素 幾何網絡包

2、括兩種網絡要素邊(Edge)和結點(Junction)。 邊是由數據集中的線狀要素類創建的。 結點是由數據集中的點狀要素類創建的。 在幾何網絡創建時,要素類之間的幾何連接關系決定了幾何網絡的連通性(connectivity)。在幾何網絡中邊和邊之間必須通過結點連接在一起,網絡資源在邊之間的流動必須經過結點。1. 幾何網絡 幾何網絡中存在兩種類型的邊幾何網絡中存在兩種類型的邊簡單邊(簡單邊(Simple Edge)和復雜邊)和復雜邊(Complex Edge)。)。 簡單邊在邊的兩端分別連接1個結點,它一直保持這種特性,如果簡單邊的中段加入了新的結點,則原有的簡單邊會被分割為2個新的簡單邊。復雜

3、邊除了在兩端連接2個結點外,還可以在邊上連接其他的結點。如果復雜邊的中段添加了一個新的結點,復雜邊不會被分割,仍只是一個網絡對象。 幾何網絡中同樣存在兩種類型的結點幾何網絡中同樣存在兩種類型的結點用戶定義的結點(用戶定義的結點(User-defined Junction)和孤立結點()和孤立結點(Orphan Junction)。)。 用戶定義的結點是在幾何網絡創建時根據用戶數據(如點狀要素類)所生成的。孤立結點是在創建幾何網絡時,當第一個網絡邊的要素類被加入后,由ArcGIS自動添加的要素類。1. 幾何網絡 邏輯網絡 當幾何網絡被創建時,ArcGIS也同時自動創建了與此幾何網絡相對應的邏輯網

4、絡(Logical Network),它用來表達網絡對象間的連接關系,各種網絡追蹤任務的執行均依賴于邏輯網絡所維護的網絡連通性。 幾何網絡是網絡的圖形表示,邏輯網絡是幾何網絡對應的表格結構,是用來記錄和維護網絡結構和進行網絡分析的基礎。通俗的理解,幾何網絡是用來展示給用戶看的,邏輯網絡是計算機進行計算使用的。右圖是左圖中幾何網絡所對應的邏輯網絡。1. 幾何網絡 幾何網絡屬性 幾何網絡數據類型包含其特有的一些屬性,如: 源頭和匯 幾何網絡中資源的流向在ArcGIS中由源頭和匯來確定,如上述例子中電力和水的傳輸由源頭和匯來驅動,資源由源頭(如發電廠和泵站)傳輸到匯(如住戶家中)。 網絡權重 權重用

5、來表示資源在網絡中進行傳輸時所造成的耗費。例如在供水管網中由于管網摩擦力的存在,隨著在管線傳輸距離的增加水流的壓力會有一定的損失。 可用及不可用要素 幾何網絡中的任意邊和結點都可能在邏輯網絡中表現為可用或不可用的狀態。如果邊或結點要素被設置為不可用,則在邏輯網絡中它被認為是一個障礙(Barrier)元素。當執行網絡追蹤任務時,追蹤操作將在其遭遇的障礙元素處停止。 網絡要素的可用或不可用狀態是由名稱為Enabled的屬性字段值來決定的,該字段的值可以為ture或者false。在幾何網絡創建時,該字段可以自動創建到網絡要素的要素類中。當在網絡中添加新的網絡要素時,其可用狀態默認設置為可用,即Ena

6、bled字段的值為true。2. 顯示網絡流向 相關類與接口 本節實例所使用的與幾何網絡相關的類主要有:GeometricNetwork、Network、UtilityNetwork,相關的接口主要有:IGeometricNetwork、INetwork、IUtilityNetworkGEN、INetElements、INetworkCollection2、IDataset等。這些類和接口都位于ESRI.ArcGIS.Geodatabase命名空間中。2. 顯示網絡流向 相關類與接口 1)GeometricNetwork類 該類是ArcGIS的幾何網絡類,提供與幾何網絡相關的信息和操作,為Ar

7、cGIS Class類型,不能直接創建。 要獲取當前使用的幾何網絡可以通過FeatureDataSet類的INetworkCollection2接口中的get_GeometricNetwork()方法,從數據源的FeatureDataSet中獲取。同時通過GeometricNetwork類的IDataset接口的Name屬性獲取幾何網絡的名稱。GeometricNetwork類的另一個重要接口是IGeometricNetwork接口,該接口用于管理幾何網絡的各類屬性,以及管理幾何網絡中的網絡要素等,其Network屬性返回當前幾何網絡的邏輯網絡,為INetwork接口類型。2. 顯示網絡流向

8、相關類與接口 2)Network類 Network類為抽象類,提供與邏輯網絡相關的屬性和操作,它創建的子類為UtilityNetwork類和StreetNetwork類。如前所述,通常使用UtilityNetwork類來模擬現實世界中的各類公共設施網絡。它實現了INetwork接口和INetElements接口。1 1)INetworkINetwork接口接口該接口的成員提供邏輯網絡和網絡元素的常用信息。(1)EdgeCount屬性返回邏輯網絡中邊的數量。(2)JunctionCount屬性返回邏輯網絡中結點的數量。2 2)INetElementsINetElements接口接口該接口成員進行

9、空間要素ID(如ObjectID)與網絡元素ID(network element ID,EID)之間的轉換。(1)GetEID方法根據空間要素的ID值返回其對應的網絡元素ID值。(2)QueryIDs方法根據網絡元素ID值返回對應的空間要素ID值。2. 顯示網絡流向 相關類與接口 3)UtilityNetwork類 該類提供與Utility Network(管網網絡)相關的信息和操作,它實現的一個重要接口是IUtilityNetworkGEN,該接口用來獲取和設置管網網絡的流向信息等,它繼承自INetwork接口。 (1)GetFlowDirection方法 根據網絡邊元素的ID返回其流向的方

10、向,其返回值為esriFlowDirection常量,包括沿數字化方向、與數字化方向相反、不確定流向和未初始化流向等幾種情況。 (2)EstablishFlowDirection方法 根據給定的源頭和匯建立所有網絡邊元素的流向方向,該方法需要在數據編輯環境下使用。 (3)SetFlowDirection方法 為給定的網絡邊元素設置某種流向方向。2. 顯示網絡流向 實例通過點擊相關按鈕來自動顯示當前幾何網絡的流向。 實例程序實現思路如下: (1)獲取當前幾何網絡的邏輯網絡,使用INetElements接口獲取每個網絡邊要素的ElemenID; (2)通過IUtilityNetworkGEN接口查

11、詢獲得每個邊的流向,因為每條邊在二維幾何空間上均有一定的方向,體現為角度,在顯示流向時應沿著該邊的方向進行顯示,因此在計算該邊的角度后,即在每個邊要素的中心點繪制相應的流向符號來標識該邊的流向。詳細代碼見程序3. 網絡追蹤分析 幾何網絡分析的主要任務是網絡追蹤分析,主要包括上下游追蹤、查找連接或未連接的網絡元素、查找共同祖先、查找最短路徑等多種分析任務。分析過程中需要通過選擇管點、管線和障礙,再選擇某種網絡追蹤任務后執行分析即可得到分析的結果。 相關類與接口 本節實例所使用的與網絡追蹤分析相關的類主要有:NetSolver、TraceFlowSolver、NetFlag、JunctionFla

12、g、EdgeFlag、NetElementBarriers、EnumNetEIDArray、PointToEID等,3. 網絡追蹤分析 1)NetSolver類 NetSolver類為抽象類,主要實現了INetSolver接口,用來設置網絡分析解決器的邏輯網絡以及設置用于網絡的各類障礙,其可創建的子類為TraceFlowSolver類。INetSolver接口的ElementBarriers屬性用于設置網絡分析解決器的各類障礙,其參數為INetElementBarriers接口類型的變量。 2)TraceFlowSolver類 TraceFlowSolver類是具體執行網絡追蹤任務的類,它包括

13、一系列基本的網絡追蹤分析解決器,可以進行網絡追蹤分析任務。它主要實現了INetSolver接口和ITraceFlowSolverGEN接口。ITraceFlowSolverGEN接口用于執行網絡追蹤任務,它主要的方法如下:(1)FindAccumulation方法(2)FindCircuits方法(3)FindCommonAncestors方法(4)FindFlowElements方法(5)FindFlowEndElements方法(6)FindFlowUnreachedElements方法(7)FindPath方法(8)FindSource方法(9)PutEdgeOrigins方法(10)P

14、utJunctionOrigins方法3. 網絡追蹤分析 NetFlag/JunctionFlag/EdgeFlag類 NetFlag類為抽象類,實現INetFlag接口,用于確定管點或管線標識所代表的網絡元素。其可創建子類JunctionFlag類和EdgeFlag類,分別代表管點標識類和管線標識類。 常用的INetFlag接口主要用來獲取或設置管點標識或管線標識所對應的空間要素的各項ID,它的主要屬性如下: (1)UserClassID屬性 空間要素所在的要素類的ID。 (2)UerID屬性 空間要素的ID,通常為ObjectID。 (3)UserSubID屬性 空間要素中某個獨立網絡要素

15、的ID。3. 網絡追蹤分析 NetElementBarriers類 NetElementBarriers類用來為網絡分析解決器定義哪些網絡元素為分析的障礙,它實現了INetElementBarriersGEN接口,用來根據EID(Element ID)為網絡分析解決器設置分析障礙。 1)INetElementBarriersGEN接口 該接口的INetElementBarriers方法用于將一系列的網絡元素設置為網絡分析的障礙,其參數為EID的數組。 2)INetElementBarriers接口 需要注意的是,根據目前ArcGIS Engine的定義,INetElementBarriers接

16、口并不是由NetElementBarriers類實現的,它的成員也不應被使用,它只使用在INetSolver接口的ElementBarriers屬性中,可以將INetElementBarriersGEN接口的變量通過接口轉換為INetElementBarriers接口的變量,從而在INetSolver接口中使用。3. 網絡追蹤分析 EnumNetEIDArray類 EnumNetEIDArray類定義一系列網絡元素的EID數組,它主要實現IEnumNetEID接口,用來對這一數組進行操作。 IEnumNetEID接口的成員用來迭代訪問數組中的所有EID,其主要屬性和方法如下: (1)Count

17、屬性 返回數組中網絡元素的總個數。 (2)Next方法 將指針向前移動一位,返回所指位置的網絡元素EID。 (3)Reset方法 使指針重新定位到數組的第一個位置。 3. 網絡追蹤分析 PointToEID類 PointToEID類用于獲取與給定點位置最鄰近的網絡元素,它實現了IPointToEID接口,該接口的成員用來根據所設定的查詢條件得到與給定點位置最鄰近的某種類型的網絡元素,其主要屬性和方法如下: (1)GetNearestEdge方法 根據輸入點找到最鄰近的管線元素,同時返回管線元素的EID、管線上與輸入點最鄰近的點,以及該點所在位置占整個管線長度的百分比。 (2)GetNeares

18、tJunction方法 根據輸入點找到最鄰近的管點元素,同時返回管點元素的EID和該管點要素的位置點。 (3)SnapTolerance屬性 設置進行空間搜索的容限值。 (4)SourceMap屬性 設置當前搜索操作所使用的地圖。3. 網絡追蹤分析 實例詳解 本例通過在地圖上添加需要分析的管點、管線標識或障礙,選擇某種網絡追蹤任務(如:查找公共祖先、查找相連接的要素等),得到分析的結果。 實例程序實現思路如下: 首先通過添加分析管點、管線、管點障礙和管線障礙工具添加各類標識點; 然后將各類標識點設置到網絡追蹤分析器中; 根據所選擇的追蹤任務由分析器得到分析結果,最后將分析結果顯示到地圖中。網絡追蹤分析的主要實現過程如下:1.添加分析標識/障礙工具添加分析管點、管線、管點障礙和管線障礙等工具需要進行地圖交互操作。2.網絡追蹤任務實現在相關工具添加完成后,通過工具的操作能夠得到網絡追蹤的各類標識點、標識線或障礙,將這些信息傳遞給網絡追蹤分析對象,再利用該對象ITraceFlowSolverGEN接口的各種分析方法即可得到各類分析的結果,最后將結果繪制出來。4. 爆管分析 在城市管網網絡(如供水管網、燃氣管網等)的運營中,因為管線老化或外部原因,經常會發生管線破裂等稱為爆管的突發事故。 下面以燃氣管網的爆管分析為例介紹該功能的實現。通過在地圖上添加

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論