周蓉 徐海東 馬強 李光正 王鴻鵬



摘要
本文通過介紹Google Maps的功能及使用方法,以威海港及周邊港口為例,設計基于Google Maps的溢油點與應急設備間的行程導航,實時顯示溢油點與周圍調集的應急設備行程狀況,為及時調集溢油應急設備提供導航,并進行應急設備達到時間的估算,最終為溢油應急處理決策的制定提供及時有效的信息。
【關鍵詞】溢油 Google Maps 導航
1 引言
隨著航運事業的蓬勃發展,中國近海溢油事故在近幾十年中不斷發生,在發生事故以后,如何以最大限度減少海上溢油造成的污染,保護海洋生態環境,已經成為日益迫切的社會問題。隨著國內外科研院所及各港口對溢油事故及應急反應的不斷重視,溢油相關軟件的設計和開發不斷成熟,目前已經研究成型的絕大部分溢油軟件系統主要以模擬溢油行為、歸宿為主,技術較為成熟,模擬結果的精度和可信度較高,但針對溢油應急設備的配優化、溢油應急處理所需設備調集預測和行程導航設計等還缺少實質性研究。
本文研究立足于威海轄區的海上溢油和岸線保護,其中包括威海港、石島港、煙臺港等周邊港口,設計基于Google Maps實時顯示溢油點與周圍調集的應急設備行程狀況,為及時調集溢油應急設備提供導航,并進行應急設備到達時間及距離的估算,為溢油應急處理決策的制定提供及時有效的信息。
2 Google Maps簡介
Google Maps是Google公司提供的電子地圖服務,該地圖服務根據用戶需求可提供三種不同形式的地圖:矢量地圖、衛星照片和地形視圖。通過對地圖進行編輯,可以進行商戶查找、地圖查看、公交查詢和駕車導航等,從而幫助開發者打造個性化的地圖應用站點。圖1為Google Maps矢量地圖和衛星地圖地圖示例。
Google Maps為代表的地圖服務的推出開創了全球地理信息服務新的開端,其具有操作簡單、地圖預生成、分析功能強大、開發成本低、數據及時更新等特點。2005年Google對外提供了便于二次開發的開放式地圖服務應用程序接口(Google Maps API),使Google Maps的地圖服務更好的服務于不同領域用戶,使用過程中開發者通過在Google地圖服務基礎上使用Java Script腳本語言調用這些API將Google方便嵌入到Web、Android和iOS應用中,并進行應用開發拓展,如給地圖添加相應標注、覆蓋物及路徑,響應用戶的點擊動作等,以達到滿足各行業及個人具體需求的目的。
3 系統設計
基于Google Maps的溢油點與應急設備間的行程導航設計是基于GIS與Google Maps的溢油應急設備智能系統的一部分,也是基于GIS與物聯網的船舶海上溢油污染智能檢測與控制系統的基礎性工作。主要以威海港及周邊港口為研究對象,在發生溢油事故時,能夠通過系統顯示溢油海域周邊港口應急設備到溢油港口行程及導航時間,通過與溢油設備智能知識庫相結合,形成較完善的溢油智能應急系統,為溢油污染處理提供知識策略,為整個系統的運行提供支持和保障。研究內容在整個系統設計功能中的作用如圖2所示。
本文利用Google Maps的地理信息服務功能,在記事本環境或者Dream weaver環境中,采用Java Script語言添加相應用戶程序,創建自己需要的用戶界面,然后通過內部網絡或廣域網進行操作,客戶端瀏覽器通過HTTP協議發送請求,服務器接受請求后,執行Java Script腳本語言,最后將后臺數據結果返回給客戶端瀏覽器上的用戶界面,用戶可以在相應界而中進行操作,以滿足實時需求。
主要利用Google Maps API的疊加、事件控制和控件集來實現溢油應急設備調集行程導航:
(1)疊加:地圖上有經緯坐標的對象集合,會隨鼠標拖動或縮放地圖而移動;
(2)事件:使用onChangeHandler()事件處理程序來注冊事件的監聽,當指定的事件發生時,函數將被調用;
(3)控件集:根據開發者需求利用默認控件和添加控件實現對地圖的操作。
4 功能實現
4.1 注冊API密鑰
我們要想利用Google Maps API功能,首先需要注冊以獲取API密鑰,注冊時需要提供網站的URL,每一個不同的URL都必須申請一個專門的API密鑰。當申請到API密鑰之后,在相應的Java Script腳本語句中添加自己的密鑰,就可以將Google Maps嵌入到網頁中,便可對其進行開發拓展。
4.2 初始化地圖
本文主要以威海港及周邊港口作為研究對象,因此需要將地圖進行定位并縮放,以便能夠較清楚顯示區域信息,所以將烕海港定位為地圖中心點:既可以采用地理位置名稱(烕海港)進行定位也可以采用該地理位置的經緯度(37.442768,122.19937)進行定位,本文采用經緯度進行定位。地圖縮放等級選擇為5-8,選擇標準:每個縮放比例下會看到的大致細節級別為:1:世界;5:大陸/洲;10:城市;15:街道;20:建筑物。本文選為8。效果如圖3所示。
初始化地圖對象:
4.3 添加應用程序
成功創建一副地圖后,若想要實現不同功能,需要在地圖上添加一些控件,也可以創建自己的控件以處理與用戶的交互操作,如路線導航功能需要選擇不同港口,通過“onChangeHandler”事件,調用directionsService.route功能,計算所選設備庫所在港口到溢油應急點之間的行程導航時間與距離:
4.4 顯示選擇窗口
港口發生溢油事故時可從不同應急設備庫調集應急物資,因此需要在地圖上方浮動選擇窗口,通過鼠標點擊選擇,后臺程序通過監聽器調用路徑計算程序,從而在頁面顯示相應信息提示框,表示相應的時間、距離、路線信息。
溢油應急點選擇、周邊溢油設備港口選擇及信息顯示框如圖4所示。
整體效果如圖5。
假如溢油港口為威海港,想從周圍港口調集應急設備,為保證及時處理溢油污染,需要權衡各設備庫到溢油港口距離及時間問題,為溢油事故的處理提供及時有效的基礎保障。圖4為從石島港調集溢油應急設備時,此段行程具體路線、時間及距離。
5 總結
基于Google Maps實時顯示溢油點與周圍調集的應急設備行程狀況,利用Google Maps對溢油點到各應急設備庫的行程進行實時顯示,并能自動計算調集應急設備所能到達的時間及距離,為溢油事故的處理提供及時有效的基礎保障。該系統與基于GIS的應急設備庫智能管理系統相結合,能為溢油應急決策提供有效的支持和保障。
參考文獻
[1]張志斌,徐敏,盧金樹,李玉樂,朱發新.雙殼油船液貨泄漏機理及預防措施探究[J].機電設備,2013(03):81-84.
[2]趙文朋.船舶溢油應急決策系統的研究與開發[D].上海海事大學,2007.
[3]王志紅,胡川.基于Google Maps API的網絡地圖服務系統的研究與應用[J].測繪標化,2010:26(02).
[4]戴兵.基于Google Maps API的校園地圖設計[J].電腦知識與技術,2008(S2):184-185.
[5]耿慶齋,繆綸,段媛媛,李江華.基于Google Maps API的Web地圖服務系統研究及應用[J].中國水利水電科學研究院學報,2009,3(01).