一種基于百度地圖的水流態(tài)勢顯示方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于地理學(xué)和水文學(xué)領(lǐng)域,尤其涉及一種基于百度地圖的水流態(tài)勢顯示方法。
【背景技術(shù)】
[0002]隨著城市建設(shè)速度加快和建設(shè)規(guī)模不斷增加,城市暴雨洪澇災(zāi)害日益頻繁,造成慘重的人員和經(jīng)濟(jì)損失,城市內(nèi)澇的形成與城市排水系統(tǒng)的排水狀況息息相關(guān),因此加強(qiáng)排水管網(wǎng)的的建設(shè)變得尤為重要。
[0003]城市排水管網(wǎng)系統(tǒng)是重要的城市基礎(chǔ)設(shè)施,其作用是及時(shí)收集與輸送城市污水和城市將于、融雪產(chǎn)生的徑流,它具有保護(hù)環(huán)境和城市減免的雙重功能。隨著我國城市化進(jìn)程加快,城市排水管網(wǎng)系統(tǒng)建設(shè)也得到了快速發(fā)展,隨之產(chǎn)生的海量復(fù)雜的管網(wǎng)數(shù)據(jù)信息需要整理,以往樓后的人工管理方法已經(jīng)不能適應(yīng)當(dāng)前排水管網(wǎng)信息管理的需要。隨著計(jì)算機(jī)技術(shù)、網(wǎng)絡(luò)技術(shù)和通信技術(shù)的飛速發(fā)展,給城市華排水管網(wǎng)信息化、現(xiàn)代化管理帶來了新的機(jī)遇。
[0004]近年來,各種監(jiān)測技術(shù)在城市排水管網(wǎng)系統(tǒng)中大量使用,為解決排水管網(wǎng)系統(tǒng)的溢流問題提供了信息化手段。但是,通常僅限于少量點(diǎn)的監(jiān)測,有限的監(jiān)測數(shù)據(jù)不能很好地獲知系統(tǒng)的運(yùn)行狀況,并為排水管網(wǎng)整體系統(tǒng)的運(yùn)行優(yōu)化與控制提供決策信息。造成了目前排水系統(tǒng)“只監(jiān)不控”和只能事后處理的被動局面。
[0005]作為排水系統(tǒng)的基礎(chǔ),水流信息的收集與管理,大都由政府機(jī)構(gòu)使用專業(yè)數(shù)據(jù)采集設(shè)備、常年固定放置在某一點(diǎn),鑒于人力和物力等方面因素的制約,采集到的數(shù)據(jù)不全面、不及時(shí)。
[0006]隨著網(wǎng)絡(luò)技術(shù)與社會的發(fā)展,移動智能設(shè)備越來越普及,人均一部智能手機(jī)已成為現(xiàn)實(shí)。借助計(jì)算機(jī)相關(guān)技術(shù),讓更多的人參與到水流信息采集中,增強(qiáng)人民主人翁意識,提高信息采集地全面性與及時(shí)性。本發(fā)明基于百度地圖的相關(guān)技術(shù),把采集的水流數(shù)據(jù)加以關(guān)聯(lián)和處理,以獲取水流狀態(tài)信息,并將其直觀地顯示在地圖上,為系統(tǒng)指揮決策人員提供簡潔的決策參考。
【發(fā)明內(nèi)容】
[0007]本發(fā)明方法的目的是針對現(xiàn)有的相關(guān)水流顯示方法存在信息不全面、不直觀等不足,提供一種基于百度地圖的水流態(tài)勢顯示方法,將獲取的水流狀態(tài)信息直觀地顯示在百度地圖上,為水流指揮決策人員提供簡潔的決策參考。
[0008]本發(fā)明方法具體是:
步驟(I).系統(tǒng)后端管理平臺使用Web瀏覽器來進(jìn)行訪問;
步驟(2).設(shè)置“城市切換”按鈕,以快速地更換當(dāng)前地圖視圖所對應(yīng)的城市信息;
步驟(3).在步驟(2)城市范圍內(nèi),設(shè)定兩種顯示水流態(tài)勢范圍的方式,即“獲取當(dāng)前范圍內(nèi)態(tài)勢信息”和“自定義可視范圍”,并以地圖與表格兩種方式,顯示指定范圍內(nèi)的水流態(tài)勢信息;
步驟(4).在步驟(3)指定范圍內(nèi),通過縮放地圖的方式,顯示當(dāng)前級別下,某塊聚合區(qū)域內(nèi)水流態(tài)勢記錄的條數(shù);水流記錄條數(shù)用標(biāo)注物標(biāo)識,并顯示地圖最大比例尺下的具體水流態(tài)勢信息;
步驟(5).頁面上顯示當(dāng)前區(qū)域內(nèi)近期所有水流態(tài)勢記錄的具體態(tài)勢信息以及匯總信息;對于水流態(tài)勢值達(dá)到或超過預(yù)設(shè)置的危險(xiǎn)等級,表格中用紅色標(biāo)注,地圖上用不同的顏色標(biāo)注。
[0009]進(jìn)一步的,步驟(I)在瀏覽器中輸入url地址后,默認(rèn)顯示以北京為中心的地圖頁面。
[0010]進(jìn)一步的,步驟(2)所述的城市切換,使用的是百度地圖所提供的城市商圈及行政區(qū)CityList開源庫。在頁面中,為CityList對象實(shí)例添加城市點(diǎn)擊事件與城市更換事件,SP實(shí)現(xiàn)城市的切換。
[0011]進(jìn)一步的,步驟(3)對于水流態(tài)示范圍,可以選擇當(dāng)前可視范圍,也可自定義圓形范圍。選擇當(dāng)前可視范圍時(shí),借助百度地圖JavaScript API直接獲取。選擇圓形范圍時(shí),輸入圓心坐標(biāo)、圓半徑信息。確定顯示范圍后,向系統(tǒng)服務(wù)器請求對應(yīng)的水流態(tài)勢信息。
[0012]進(jìn)一步的,步驟(4)在地圖的縮放等級為最大時(shí),顯示具體某個(gè)點(diǎn)的水流態(tài)勢具體信息,不同水流態(tài)勢等級,采用不同顏色的自定義圖標(biāo)顯示,鼠標(biāo)點(diǎn)擊該圖標(biāo),可以顯示該點(diǎn)對應(yīng)的水流態(tài)勢信息。在將地圖的縮放級別減小時(shí),顯示當(dāng)前視圖范圍內(nèi),某些聚合區(qū)域內(nèi)包含的水流態(tài)勢記錄條數(shù),并附著在標(biāo)注物上,一并顯示在地圖上。此部分是基于百度地圖所提供的點(diǎn)聚合MarkerClusterer開源庫,以及自定義覆蓋物TextIconOverlay開源庫,自定義更改進(jìn)行實(shí)現(xiàn)。
[0013]進(jìn)一步的,步驟(5)所述的顯示當(dāng)前區(qū)域內(nèi)所有水流態(tài)勢記錄的具體態(tài)勢信息、匯總信息以及將水流態(tài)勢值達(dá)到或超過預(yù)設(shè)置的危險(xiǎn)等級用顏色標(biāo)注。
[0014]使用的具體方法是,在Web瀏覽器端,根據(jù)服務(wù)器端返回的水流數(shù)據(jù),使用JSON將其解析為一個(gè)個(gè)具體的水流態(tài)勢信息,在表格、地圖上進(jìn)行顯示。
[0015]在表格中,顯示每條具體水流態(tài)勢信息以及匯總信息,對于水流態(tài)勢值超過預(yù)設(shè)置的危險(xiǎn)等級時(shí),態(tài)勢等級信息列的背景顏色設(shè)置為紅色;
在地圖上,每條水流態(tài)勢信息對應(yīng)一個(gè)實(shí)例,對于每一個(gè)實(shí)例的標(biāo)識,根據(jù)水流信息的態(tài)勢等級,分別用不同顏色自定義標(biāo)識。然后將每個(gè)實(shí)例,通過百度地圖的addOverlay O方法,將其添加到地圖上。
[0016]最后,將所有的水流態(tài)勢信息的實(shí)例組成標(biāo)注數(shù)組,通過使用百度地圖所提供的開源MarkerClusterer庫,將所有的標(biāo)注進(jìn)行點(diǎn)聚合。
[0017]本發(fā)明方法的有益效果:能獲取實(shí)時(shí)水流態(tài)勢信息表中給定范圍、給定時(shí)間內(nèi)的水流態(tài)勢信息,依據(jù)態(tài)勢等級值,使用對應(yīng)顏色的圓形標(biāo)注物直觀地顯示在網(wǎng)頁上,為系統(tǒng)指揮決策人員直觀的顯示當(dāng)前視圖下詳細(xì)的水流態(tài)勢信息。
【附圖說明】
[0018]圖1為本發(fā)明提出的基于百度地圖的水流態(tài)勢顯示方法流程圖。
【具體實(shí)施方式】
[0019]以下結(jié)合附圖對本發(fā)明作進(jìn)一步說明如圖1所示,本發(fā)明方法具體實(shí)施步驟是:
(I)指揮決策人員進(jìn)入系統(tǒng)后端管理平臺進(jìn)行區(qū)域水流態(tài)勢的查看,瀏覽器中輸入url地址后,顯示以北京為中心,縮放級別為最大的地圖與表格中的水流狀態(tài)信息。
[0020](2)點(diǎn)擊“城市切換”按鈕則可以選擇要查看的城市,若不切換,則顯示的依然為北京的水流態(tài)勢信息。城市切換,使用的是百度地圖所提供的城市商圈及行政區(qū)CityList開源庫。在頁面中,為CityList對象實(shí)例添加城市點(diǎn)擊事件與城市更換事件,即實(shí)現(xiàn)城市的切換。
[0021](3)點(diǎn)擊“當(dāng)前可視范圍”或者“自定義可視范圍”選擇顯示范圍;選擇當(dāng)前可視范圍時(shí),借助百度地圖JavaScript API直接獲取。選擇圓形范圍時(shí),輸入圓心經(jīng)瑋度坐標(biāo)以及半徑,獲取指定圓形范圍內(nèi)的水流態(tài)勢信息。
[0022]Web瀏覽器端,獲取當(dāng)前視圖區(qū)域內(nèi)的經(jīng)瑋度范圍,代碼如下所示。
[0023]var bs = map.getBoundsO ;//當(dāng)前地圖可視范圍 var bssw = bs.getSouthWestO ;//西南角處的點(diǎn) var bsne = bs.getNorthEastO ;//東北角處的點(diǎn)
var boundP = bssw.lng+〃,〃+bssw.lat+〃,〃+bsne.lng+〃,〃+bsne.Iat;//顯不范圍的左上角與右下角經(jīng)瑋度值。
[0024]對于圓形范圍的圓心可以通過鼠標(biāo)在地圖上點(diǎn)擊事件獲取,圓的半徑通過手工輸入。具體的代碼如下所。
[0025]map.addEventL