【技術(shù)實現(xiàn)步驟摘要】
一種基于GIS的道路數(shù)據(jù)向最短路徑鄰接矩陣轉(zhuǎn)換的方法
[0001]本專利技術(shù)涉及一種基于GIS的道路數(shù)據(jù)向最短路徑鄰接矩陣轉(zhuǎn)換的方法,屬于數(shù)據(jù)轉(zhuǎn)換
技術(shù)介紹
[0002]最短路徑在目前的網(wǎng)絡(luò)地圖(包含手機地圖)導(dǎo)航中有著廣泛應(yīng)用,它通常被描述為用于計算網(wǎng)絡(luò)地圖中起點到終點或所有端點的最短路徑。鄰接矩陣作為有限圖的邊的關(guān)系集合,是計算最短路徑的數(shù)據(jù)基礎(chǔ)。道路數(shù)據(jù)是網(wǎng)絡(luò)地圖的重要要素。在網(wǎng)絡(luò)地圖中計算最短路徑實質(zhì)上是在道路數(shù)據(jù)上求取一條權(quán)重最小的最優(yōu)路徑。然而在網(wǎng)絡(luò)地圖中,道路數(shù)據(jù)并不能直接參與計算最短路徑。需要預(yù)先將道路數(shù)據(jù)轉(zhuǎn)換為鄰接矩陣,然后才可應(yīng)用最短路徑算法。
[0003]目前,道路數(shù)據(jù)通常以地理信息系統(tǒng)的矢量數(shù)據(jù)形式存在。將道路數(shù)據(jù)轉(zhuǎn)換為鄰接矩陣的本質(zhì)是將空間數(shù)據(jù)轉(zhuǎn)換為關(guān)系型數(shù)據(jù)。其轉(zhuǎn)換的理論基礎(chǔ)是用關(guān)系結(jié)構(gòu)描述圖結(jié)構(gòu)。然而,在具體實施中,其轉(zhuǎn)換過程并不容易。一方面是由于道路數(shù)據(jù)的路段數(shù)量繁多,路段之間的結(jié)構(gòu)復(fù)雜所致,另一方面是現(xiàn)有技術(shù)中并沒有較為成熟的轉(zhuǎn)換方法。因此迫切需要一種能夠有效轉(zhuǎn)換道路數(shù)據(jù)為鄰接矩陣的方法以解決上述問題。
技術(shù)實現(xiàn)思路
[0004]針對上述現(xiàn)有技術(shù)存在的問題,本專利技術(shù)提供一種基于GIS的道路數(shù)據(jù)向最短路徑鄰接矩陣轉(zhuǎn)換的方法,從而解決現(xiàn)有的道路數(shù)據(jù)向鄰接矩陣轉(zhuǎn)換效率低下的問題。
[0005]為了實現(xiàn)上述目的,本專利技術(shù)采用的技術(shù)方案是:一種基于GIS的道路數(shù)據(jù)向最短路徑鄰接矩陣轉(zhuǎn)換的方法,包括以下步驟:
[0006]步驟S1:準(zhǔn)備道路中 ...
【技術(shù)保護點】
【技術(shù)特征摘要】
1.一種基于GIS的道路數(shù)據(jù)向最短路徑鄰接矩陣轉(zhuǎn)換的方法,其特征在于,包括以下步驟:步驟S1:準(zhǔn)備道路中心線數(shù)據(jù):收集道路中心線數(shù)據(jù)或使用地理信息系統(tǒng)軟件繪制道路中心線數(shù)據(jù),該數(shù)據(jù)格式為矢量線數(shù)據(jù),命名為roads.shp.;步驟S2:為道路中心線數(shù)據(jù)賦屬性:利用地理信息系統(tǒng)軟件為道路中心線數(shù)據(jù)roads.shp添加屬性字段,分別為“Name”、“Type”、“Region”和“Note”,并為每個要素添加相應(yīng)屬性,在上述字段中,“Name”表示路段的名稱;“Type”表示路段的類型;“Region”表示路段所屬區(qū)域;“Note”表示和路段相關(guān)的備注;步驟S3:將道路中心線數(shù)據(jù)的所有線段在交點處打斷:利用地理信息系統(tǒng)軟件的打斷相交線工具將道路中心線數(shù)據(jù)roads.shp的所有線段在交點處打斷;利用地理信息系統(tǒng)軟件的拓?fù)涔ぞ邔Φ缆分行木€數(shù)據(jù)roads.shp進行拓?fù)溴e誤檢查,使用拓?fù)湟?guī)則包括:“不能重疊”、“不能相交”、“不能自重疊”和“不能自相交”;如果沒有任何拓?fù)溴e誤,表明道路中心線數(shù)據(jù)無任何的交叉點及重疊問題;步驟S4:提取道路中心線數(shù)據(jù)的結(jié)點:利用地理信息系統(tǒng)軟件的要素折點轉(zhuǎn)點工具提取道路中心線數(shù)據(jù)的結(jié)點,包括交叉點及端點,生成的結(jié)點數(shù)據(jù)命名為:nodes.shp;步驟S5:利用生成的結(jié)點數(shù)據(jù)剪斷道路中心線數(shù)據(jù)的所有線段:在計算最短路徑時,通常需要計算相鄰兩點之間的路段距離;道路中心線數(shù)據(jù)roads.shp中的某些路段作為獨立整體,包含了多個頂點,利用生成的結(jié)點數(shù)據(jù)nodes.shp剪斷道路中心線數(shù)據(jù)roads.shp中的所有線段;步驟S6:編輯新生成的道路中心線數(shù)據(jù)的屬性字段:在地理信息系統(tǒng)軟件中,為新生成的道路中心線數(shù)據(jù)roads_single.shp添加屬性字段,分別為“IdRoad”和“Weight”,并為每個要素添加相應(yīng)屬性;在上述字段中,“IdRoad”表示路段的唯一編號;“Weight”表示路段的權(quán)重,可用路段的時間成本、距離成本或其他成本表示;至此,在道路中心線數(shù)據(jù)roads_single.shp中,包含的屬性字段有:“IdRoad”、“Name”、“Type”、“Region”、“Weight”和“Note”。步驟S7:為結(jié)點數(shù)據(jù)添加屬性字段Id并賦值:在地理信息系統(tǒng)軟件中,為結(jié)點數(shù)據(jù)nodes.shp添加屬性字段“Id”,并為每個結(jié)點要素添加相應(yīng)屬性;在上述字段中,“Id”表示結(jié)點的唯一編號;步驟S8:編寫結(jié)點數(shù)據(jù)去重算法:為去除結(jié)點數(shù)據(jù)nodes.shp中的冗余結(jié)點,編寫結(jié)點數(shù)據(jù)去重算法,命名為pointDistinct();步驟S9:對結(jié)點數(shù)據(jù)進行去重處理:使用結(jié)點數(shù)據(jù)去重算法pointDistinct()對結(jié)點數(shù)據(jù)nodes.shp進行去重處理,去重后生成的結(jié)點數(shù)據(jù)命名為nodes_distinct.shp;步驟S10:為去重后的結(jié)點數(shù)據(jù)添加屬性字段并賦值:在地理信息系統(tǒng)軟件中,為去重后的結(jié)點數(shù)據(jù)nodes_distinct.shp添加屬性字段“IdNode”、“Lon”和“Lat”,并為每個結(jié)點要素添加相應(yīng)屬性;在上述字段中,“IdNode”表示結(jié)點的唯一編號,“Lon”表示地理坐標(biāo)經(jīng)度,“Lat”表示地理坐標(biāo)緯度,在計算結(jié)點經(jīng)度和緯度時,使用地理信息系統(tǒng)軟件的計算幾何工具批量化計算結(jié)點的Lon值和Lat值,步驟S11:關(guān)聯(lián)結(jié)點數(shù)據(jù)和道路數(shù)據(jù):利用地理信息系統(tǒng)軟件的相交工具,計算結(jié)點數(shù)據(jù)nodes_distinct.shp和道路中心線數(shù)據(jù)roads_single.shp的交集,生成的結(jié)果數(shù)據(jù)命名
為nodes_intersect.shp;經(jīng)過該操作可將結(jié)點數(shù)據(jù)nodes_distinct.shp和道路中心線數(shù)據(jù)roads_single.shp在空間位置上進行屬性關(guān)聯(lián);步驟S12:創(chuàng)建道路結(jié)點鄰接關(guān)系映射表:利用地理信息系統(tǒng)軟件打開結(jié)點數(shù)據(jù)nodes_intersect.shp的屬性表,編輯屬性字段,只保留“Lon”、“Lat”、“IdRoad”、“IdNode”、“Name”、“Type”、“Region”、“Weight”和“Node”等字段,去除多余字段;此外,還需為結(jié)點數(shù)據(jù)nodes_intersect.shp添加屬性字段Id,并為每個要素進行賦值;最終,結(jié)點數(shù)據(jù)nodes_intersect.shp包含的屬性字段有“Id”、“Lon”、“Lat”、“IdRoad”、“IdNode”、“Name”、“Type”、“Region”、“Weight”和“Node”等;查看結(jié)點數(shù)據(jù)nodes_intersect.shp的屬性表,可以看出,每個路段都嚴(yán)格對應(yīng)兩個結(jié)點;步驟S13:導(dǎo)出結(jié)點數(shù)據(jù)屬性表中的鄰接矩陣:利用地理信息系統(tǒng)軟件將結(jié)點數(shù)據(jù)nodes_intersect.shp的屬性表導(dǎo)出為文本文件,數(shù)據(jù)格式為txt或csv,命名為nodes_matrix.txt或nodes_matrix.csv,該文本文件即為道路線矢量數(shù)據(jù)...
【專利技術(shù)屬性】
技術(shù)研發(fā)人員:車明亮,楊帆,張馳,鈔振華,孫金磊,
申請(專利權(quán))人:深圳市規(guī)劃和自然資源數(shù)據(jù)管理中心深圳市空間地理信息中心,
類型:發(fā)明
國別省市:
還沒有人留言評論。發(fā)表了對其他瀏覽者有用的留言會獲得科技券。