ArcGIS的網絡分析(三 )

Network的類型
  (1)Transportation Network:是Undirected Network。表示Network的Edge具備方向,用戶可以自由定義在網絡中前進的方向,速度以及終點。例如一個卡車司機可以決定在哪條道路上開始行進,在什麼地方停止,採用什麼方向。並且還可以給網絡設置限定性規則,例如是單行線還是禁行。在ArcGIS中,Transportation Network是通過Network Dataset創建的。
    2)Utility Network: 是Directed Network類型,意味着網絡中流動的物質必須按照在Network中定義好的規則前進,運行路徑都是事先定義好的,可以被修改,但是不能被物質本身修改,而是被網絡的工程師來修改網絡的規則,使通過設置結點的開啓狀態來改變網絡的流動方向。在ArcGIS中,Utility Network是通過Geometric Network模擬的。
Transportation Network介紹
    ArcGIS Network Analyst分析模塊使用的網絡是存儲在Network Dataset中。Network Dataset由Feature要素創建而來,能夠用來表現複雜場景,包括Multimodal交通網絡,同樣也可以包含多個網絡屬性以模擬網絡限制條件和層次結構。
    Network Dataset包含以下三種類型:
(1)Network Dtaset:創建網絡的數據源存儲於Personal 或者Enterprise Geodatabase中,因爲其中可以存儲很多數據源,因此可以構建Multimodal Network
(2)Shapefile-based Network Dataset:是基於Polyline Shapefile 文件創建的,也可以添加Shapefile Turn Feature Class,這種Network Dataset不能夠支持多種Edge類型,也不能用於創建Multimodal Networks
(3)ArcGIS Network Analyst也可以讀取SDC Network Dataset,可以實現網絡分析功能,而不能創建Network Dataset
Network Elements包括三類:Edges,Junctions,Turns。
Connectivity Group
要想定義ArcGIS Network Analyst的Connectivity,首先要定義Connectivity Group。每一個Edge Source只能夠被賦予一個Connectivity Group,而Junction Source可以被賦予多種Connectivity Group。只有將Junction設爲兩種或者多種Connectivity Group,纔可以去連接不同Connectivity Group的Edge。Connectivity Group用於創建Multimodal Transportation Network。
以下爲Network Dataset所支持的三種Connectivity Model:
(1)Connecting Edges within a Connectivity Group
可以設置“Endpoint Connectivity”,也可以設置“Any Vertex Connectivity”。第一種方式中,邊和邊只能在終點處相交,第二種方式則可以在邊的任意位置相交
(2)Connecting Edges through Junctions across Connectivity Group
能夠將不同Connectivity Group中的Edge通過被不同Connectivity Group共享的Junctions連接。
(3)Elevation Fields
主要用於Network Dataset中檢查Line Endpoints的Connectivity。每一個Edge Feature具備兩個字段用來描述每一個端點的高程。
Network Attribute
Network Attribute主要用於設定網絡的流通屬性,包括:
Name:
Usage Type:
Unit:Centimeter,Meter等等
Data Types:Boolean,Integer,Float,Double
Use by Default:
Cost:例如走過某段路需要花費的時間
Descriptors:對某條道路的描述信息,例如道路速度的限制,有多少個紅綠燈等。
Restrictions:例如某條線是禁行,或者是單向的
Hierarchy:例如道路的分級
Types of Evaluators used by a network
Network的Attribute都需要設定Value,通常是利用Evaluators從Network Source中獲取屬性值。具備四種Evaluators:
Field Evaluator:利用屬性字段的值;
Field Expression Evaluator:利用屬性字段構建計算表達式;
   Constant Evaluators:賦予常數;
   VBscript Evaluators:通過執行VBScript代碼,主要用於賦予複雜的屬性值
每個Junction Source和Turn Source需要一個Evaluator,而每個Edge Source需要兩個-Edge的每個方向都需要一個Evaluator
Turns in the Network Dataset
Turn的類型有多種,可以是Multi Edge Turn,也可以是U-Turn。在ArcGIS中,Turn是通過Turn Feature Class轉變而來的,這些Turn Feature Class都是Polyline Feature Class。Turn Feature Class必須是與其他Network要素位於同一個Feature Dataset中,具備相同的空間參考,不參與Connectivity Groups,也不具備Elevation信息。Turn至少具備兩條Edge,至多20條Edge。
Setting Directions
支持Directions的Network Dataset必須至少滿足以下要求:
具備Length屬性,包括Length單位;
至少有一個Edge Source;
在Edge Source上至少有一個Text字段。
Creating a network Dataset
第一步:準備Feature Dataset和Source;
    如果是要創建Geodatabase-based Network Dataset,則參與創建網絡的數據源必須位於同一個Feature Dataset中;如果是創建基於Shapefile的Network,則需要將參與的要素存儲到相同的文件夾中。
第二步:爲創建Network Dataset的數據源設置屬性,爲網絡添加屬性信息;
保證數據源中包含可以設置網絡阻力信息的屬性值-距離,旅行時間等等。最後是將這些屬性值的字段名用相應的Unit命名,使得系統可以自動去識別,例如可以爲旅行時間設置字段名爲Minutes。對於線狀要素來說,如果在不同的方向,阻力值不相同,則應該爲兩個方向分別設置屬性字段,例如“FT_Minutes”和“TF_Minutes”.
    如果是對單行線建立網絡,則Edge Source中必須包含一個字段以指定One-Way街道屬性,可以將存儲這個屬性的字段命名爲“One_Way”或“Oneway”。創建Evaluator以給該字段賦值:
“FT”或“F”表示沿着數字化方向的單行線;
   “TF”或“T”表示與數字化方向相反的單行線;
   “N”表示禁行線;
如果是其它屬性值,則表示該條線路的兩邊都是可以通行的。
    如果打算通過Z-Elevation或者Z-Level值模擬Overpasses和Underpasses,則必須使得Edge的屬性字段包括兩個整型字段,Edge的每個結點的高程用一個字段表示。如果字段被命名爲“F_ELEV”“T_ELEV”或者“F_ZLEV”“T_ZLEV”,則系統可以將其自動識別爲高程字段。
如果希望在網絡中保存方向信息,則Edge的屬性字段中必須包含產生方向的信息,例如道路等級,高速路障,邊界信息等。
第三步:準備Turn Feature Class,添加Turn信息;
創建Feature Dataset時, Turn信息是可選的,如果將轉彎信息保存在Turn Table中,則必須將其轉變爲Turn feature Class。並且還要在Turn Feature Class的屬性表中包含屬性字段以保留Turn Impedance,以及轉彎限制(某個彎只能是貨車纔可以轉)等網絡屬性信息。
第四步:利用New Network Dataset Wizard創建Network Dataset
爲Network Dataset命名,設定數據源,創建連通性,指定高程數據,指定轉彎數據源,定義屬性,確定方向規則。
第五步:Build Network Dataset
該過程會實現:網絡要素創建,連通性創建,爲網絡屬性賦屬性值
Network Analyst提供的分析功能
Finding the Best Route

ArcGIS Network Analyst能夠分析點與點之間的最優路徑,點的位置可以通過三種方式設置:(1)在屏幕上添加點,如果用戶添加的點不在路徑之上,則系統會根據Snapping設置,將該點自動咬合到近處的點,如果點到線的距離大於設置的咬合值,則無法實現,需要重新設置Snapping ;(2)通過輸入Address;(3)從已經存在的Feature Class或者Feature Layer中導入位置。分析最優路徑時的點與點之間的順序,可以用戶自己設置,也可以由系統自動設置。
可以實現的最優路徑分析包括:最快路徑,最短路徑,最多場景的路徑等,路徑分析的內容可以通過設定Impedance實現。
Finding the Closest Facility
查找最近設施:可以設置一個Cutoff Cost,一旦超過這個設置,則不再分析。一旦查找到最近設施,則可以實現的功能包括到達最近設施的路徑,旅行花費,方向等。
Finding Service Areas
Network Service Area是包括所有在設定閾值內可以到達的Streets的Region。例如某個點的5分鐘服務區是從該點5分鐘之內可以到達的所有街道的Region。
Accessibility表示從某個點到達其它地點的容易程度。在ArcGIS中,Accessibility可以通過Travel Time,Distance和任意其它的Impedance進行設定。
Creating an OD Cost Matrix
能夠從多個源點和終點之間創建Origin-Destination(OD) Cost Matrix。OD Cost Matrix是一個包含從每一個Origin到每一個Destination的總Impedance的Table。在地圖上表示時,Origin 到Destination的Path是用直線表示的。

   Geometric Network介紹
    Geometric Network 主要用於模擬現實世界中的水網,電網,煤氣網,電話服務等資源網絡。
    Geometric Network由一套相互連接的Edge和Junctions組成,並且包含Connectivity Rules。必須構建於Geodatabase的Feature Dataset中,其中的Feature Class是作爲Junctions和Edge的數據源。
Geometric Network中包含兩種主要的要素:Edges和Junctions
    在網絡中,Edge和Junctions是Topologically Connected to each other:Edge和Edge在Junctions處連接,某個Edge中流動的要素是通過Junctions流動到其它的Edge。
    有兩種類型的Edges:
       Simple Edges-連着兩個Junctions,Edge的每一頭連接一個Junction;
       Complex Edges-通常在端點處至少連接兩個Junctions,而且在Edge的中間部分,也可以連接很多Junctions,例如:主管道上可以連接多個支管道。
有兩種類型的Junctions:
   User defined Junctions:在構建Geometric Network時,根據用戶定義的Point Source生成的Junctions;
   Orphan Junctions:當第一個Edge Feature Class添加到Geometric Network時,創建了Simple Junction Feature Class ,被稱爲Orphan Junction Feature Class,主要是用於維護網絡的完整性。當用戶添加其它的Junctions Feature時,該點處的Orphan Junctions將被刪除;此外當用戶刪除Geometric Network時,則Orphan Junctions也被刪除。
當創建一個Geometric Network時,也創建了一個相應的Logic Network,用於表現和模型化要素之間的連通關係,實現Tracing和Flow計算。Logic Network是由一系列的Table組成,並且由ArcGIS維護。當Geometric Network被更新或者刪除時,Logic Network會自動更新。
   Sources 和Sinks
    網絡要素的流動方向是從Sources和Sinks來計算的,從Sources流出,匯於Sinks。可以在創建Geometric Network時,將Junctions設置爲Sources或者Sinks或者都不是,一旦設定爲Source或者Sink,則在屬性表中添加字段AncillaryRole用於記錄其類型。
   Network Weight
   網絡可以被設置權重,用於表示網絡要素在其中流動的環境,使利用參與網絡的Feature的屬性來設置網絡的Weight。
   Enable and Disable Feature
     Geometric Network中的Edge和Junctions可以在Logic Network中設置爲Enabled或者Disabled。網絡的Enabled或者Disabled狀態是由要素屬性字段Enabled設置的,可以選擇的屬性爲True,False,當通過簡單要素類創建Geometric Network時,該字段自動添加爲輸入要素中,並且缺省狀態下屬性值爲True。
   Connectivity
    在現實生活中,Geometric Network中並不是所有的要素都是可以相互連接的,系統所創建的網絡連通性可能不適合,則用戶可以根據自己的需要修改Connectivity,方法是:在ArcCatalog中點擊創建的Geometric Network,在Properties中選擇Connectivity面板,實現Connectivity的設置。
可以創建的Connectivity Rule包括兩種:Edge-Junction Connectivity,Edge-Edge Connectivity
發佈了25 篇原創文章 · 獲贊 2 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章