基于MapXtreme的人防電子地圖系統設計與實(shí)現
(5) 人防預案模塊:包括預案查詢(xún)、預案管理和預案評估。將所有人防預案集成到一個(gè)統一的平臺,方便戰時(shí)或演習時(shí)調用。
(6) 專(zhuān)題制圖:用于制作專(zhuān)題地圖和電子沙盤(pán),包括二維數據網(wǎng)格化、三角網(wǎng)等值線(xiàn)嵌入、地形圖三維顯示、地形圖柵格圖像生成、預案套圖制作與查詢(xún)。
2 人防系統的關(guān)鍵問(wèn)題及實(shí)現
2.1 最短路徑查詢(xún)及其優(yōu)化
根據某市人防電子地圖系統的實(shí)際需求,最短路徑查詢(xún)有時(shí)要求距離最短、有時(shí)要求時(shí)間最短,且道路或橋梁有可能被炸毀而不能通行,這使得道路的正向、反向權值不是固定值,需隨著(zhù)應用背景的變化而更新。因此,進(jìn)行最短路徑分析時(shí),若要求距離最短,則可以直接利用路段的正向、反向權值進(jìn)行計算;若要求時(shí)間最短,則可以利用路段的正向、反向權值,并結合道路的平均速度進(jìn)行計算。然而,無(wú)論按時(shí)間還是距離查詢(xún)最短路徑,其實(shí)還是一個(gè)單源單目問(wèn)題,可以使用最經(jīng)典的Dijkstra算法[4]并加以?xún)?yōu)化。
在本系統中,首先將現實(shí)中的道路網(wǎng)絡(luò )實(shí)體抽象化為網(wǎng)絡(luò )圖論理論中的網(wǎng)絡(luò )拓撲圖,交叉路口為結點(diǎn),道路為邊,道路長(cháng)度為權值;其次,獲取起始點(diǎn)名與終止點(diǎn)名,并對輸入的始末點(diǎn)名,通過(guò)在道路結點(diǎn)表中查詢(xún)的點(diǎn)的名稱(chēng),得到始末點(diǎn)的結點(diǎn)NODE_ID;再次,將道路結點(diǎn)集與道路弧段集作為Dijkstra算法中的參數,計算從出發(fā)點(diǎn)到目的點(diǎn)的最短路徑的結點(diǎn)序列;最后,將返回結點(diǎn)序列即最佳路徑在電子地圖上高亮顯示。
在最短路徑查詢(xún)的實(shí)際應用中,本系統從以下兩方面進(jìn)行了優(yōu)化:
(1) 初始化始末點(diǎn)時(shí),若該點(diǎn)不是道路結點(diǎn),則一般的處理是遍歷道路結點(diǎn)表,查詢(xún)離該地物點(diǎn)最近的道路結點(diǎn)作為起始點(diǎn)。由于道路結點(diǎn)數據量太大,這種方法不僅效率低,且對于某些特殊的地物點(diǎn)會(huì )出錯。比如某點(diǎn)A,若離它最近的道路較長(cháng),則該道路的端點(diǎn)離A就比較遠,繼而選擇的是另一條端點(diǎn)離A近的道路,而實(shí)際上該選擇結果并不是離A最近的道路。為了解決這兩個(gè)問(wèn)題,系統在初始化始末點(diǎn)時(shí),不是以道路結點(diǎn)為參照,而是將道路層單獨提練出來(lái)。設定某個(gè)距離值為半徑畫(huà)圓,若該圓與某條道路有交點(diǎn),則說(shuō)明此道路為離該點(diǎn)最近的道路,從該點(diǎn)向道路作垂線(xiàn),即為該點(diǎn)的第1條路線(xiàn);若沒(méi)有交點(diǎn),則按某個(gè)設定值繼續擴大半徑搜索,直至查詢(xún)到最近道路為止。這種優(yōu)化方法,一方面解決了某些對特殊地物點(diǎn)進(jìn)行最短路徑查詢(xún)時(shí)可能出現的錯誤;另一方面也提高了查詢(xún)的效率。在實(shí)際情況中,道路結點(diǎn)數據量大,而采用優(yōu)化方法后只需進(jìn)行幾次循環(huán)查找即可。
(2) 由于每次做路徑查詢(xún)時(shí)都需要將所有道路結點(diǎn)和道路弧段的集合構建道路拓撲網(wǎng)絡(luò ),但道路網(wǎng)絡(luò )的數據量非常大,而且該拓撲關(guān)系是不會(huì )改變的,所以原有的最短路徑查詢(xún)功能在構建路網(wǎng)拓撲關(guān)系時(shí)做了大量重復的工作。為提高最短路徑查詢(xún)過(guò)程的效率,在系統初始化過(guò)程中,將所有道路節點(diǎn)的拓撲關(guān)系緩沖到服務(wù)器端內存中,每次做路徑查詢(xún)時(shí)先檢查緩存中是否已經(jīng)存在生成的路網(wǎng)拓撲信息,避免了道路拓撲網(wǎng)絡(luò )的重復生成。優(yōu)化后的最短路徑查詢(xún)的工作流程如圖2所示。本文引用地址:http://dyxdggzs.com/article/163092.htm
本文將系統重構為基于上述優(yōu)化方法的電子地圖系統,并選擇8對相同的始末結點(diǎn)進(jìn)行最短路徑查詢(xún),并與使用傳統方法的系統進(jìn)行比較測試,最終得到如圖3所示的性能測試對比圖。
從圖中可以看出,未經(jīng)優(yōu)化的電子地圖系統響應時(shí)間比優(yōu)化后的系統響應時(shí)間長(cháng),可見(jiàn)該優(yōu)化在當前實(shí)驗環(huán)境下,對系統性能的提升有較大的幫助。
2.2 基于MapXtreme的鷹眼技術(shù)
鷹眼是除了主視圖外的一個(gè)小視圖窗口,用來(lái)顯示全圖,并用1個(gè)矩形表示大圖的地圖邊界。點(diǎn)擊鷹眼窗口時(shí),地圖自動(dòng)定位到相應位置,當地圖視圖(包括縮放比例和中心)發(fā)生變化時(shí),鷹眼上的導航矩形框相應變化,以指示用戶(hù)當前所處的位置。
評論