余建軍,彭 艷,張利勇,萬(wàn)術(shù)海,劉校妍
(1. 浙江省地理信息中心,浙江 杭州 310012; 2. 浙江省第二測(cè)繪院,浙江 杭州 310012)
?
移動(dòng)GIS支持下的 “五水共治”河道督查系統(tǒng)的實(shí)現(xiàn)
余建軍1,彭艷2,張利勇1,萬(wàn)術(shù)海2,劉校妍2
(1. 浙江省地理信息中心,浙江 杭州 310012; 2. 浙江省第二測(cè)繪院,浙江 杭州 310012)
為改變傳統(tǒng)的河道督查流程,減少人工督查工作量,使督查工作向信息化方向發(fā)展,本文基于移動(dòng)GIS技術(shù)開(kāi)發(fā)了“五水共治“河道督查系統(tǒng),應(yīng)用于河道督查工作。在系統(tǒng)需求分析和數(shù)據(jù)庫(kù)設(shè)計(jì)的基礎(chǔ)上,綜合運(yùn)用移動(dòng)GIS、LBS位置服務(wù)、互聯(lián)網(wǎng)+、云服務(wù)等技術(shù),使用Java、PHP等編程語(yǔ)言,通過(guò)移動(dòng)端(Android、iOS)和Web端分別調(diào)用天地圖移動(dòng)API和Web API, 實(shí)現(xiàn)了系統(tǒng)的各個(gè)功能。在應(yīng)用實(shí)例的分析中該系統(tǒng)用于浙江省“五水共治“河道督查工作,系統(tǒng)運(yùn)行穩(wěn)定,界面顯示清晰,數(shù)據(jù)傳輸實(shí)時(shí)有效,完全能夠滿(mǎn)足河道督查工作的需求,為建立河道長(zhǎng)效督查機(jī)制提供了有效方法。
“五水共治”;河道督查;移動(dòng)GIS;LBS;實(shí)時(shí)傳輸;云服務(wù)
“五水共治”工作是浙江省委省政府為保護(hù)水環(huán)境采取的一項(xiàng)重要舉措,經(jīng)過(guò)努力取得了一定的治水成效,但是問(wèn)題也隨之而來(lái),治理好的河道往往再次變黑變臭,如何有效防治,河道督查應(yīng)勢(shì)而生。“五水共治”河道督查工作一般由督查人員實(shí)地拍照、群眾訪談、文字記錄等流程組成,然后人工整理督查資料、撰寫(xiě)督查報(bào)告,整個(gè)流程比較冗余、瑣碎,耗時(shí)、耗人、耗力,且存在督查問(wèn)題不能及時(shí)反饋給工作人員的問(wèn)題[1]。本文通過(guò)研究將移動(dòng)GIS、互聯(lián)網(wǎng)+、LBS位置服務(wù)等技術(shù)用于河道督查,開(kāi)發(fā)了基于移動(dòng)GIS的“五水共治”河道督查系統(tǒng),實(shí)現(xiàn)督查人員手機(jī)巡檢河道,實(shí)時(shí)傳輸空間地理位置數(shù)據(jù)、多媒體數(shù)據(jù)、文字?jǐn)?shù)據(jù),建立手機(jī)端與Web端實(shí)時(shí)互動(dòng)的督查工作模式,改進(jìn)傳統(tǒng)的督查工序,有利于“五水共治”長(zhǎng)效督查機(jī)制的建立。
1. 需求分析
“五水共治”河道督查工作需要記錄被督查河道的空間位置、現(xiàn)場(chǎng)照片及文字描述等信息,然后人工整理,電腦輸入等,并且要考慮反饋問(wèn)題的及時(shí)處理,建立問(wèn)題反映者與處理者之間信息化的溝通機(jī)制[2]。鑒于這些需求,數(shù)據(jù)庫(kù)設(shè)計(jì)應(yīng)首先能滿(mǎn)足多源、不同格式數(shù)據(jù)存儲(chǔ)問(wèn)題,系統(tǒng)設(shè)計(jì)應(yīng)能滿(mǎn)足實(shí)時(shí)傳輸,且應(yīng)方便多源數(shù)據(jù)的調(diào)用顯示問(wèn)題。
2. 數(shù)據(jù)庫(kù)設(shè)計(jì)
數(shù)據(jù)庫(kù)設(shè)計(jì)時(shí)有兩個(gè)需要解決的問(wèn)題:一是移動(dòng)端與服務(wù)端數(shù)據(jù)同步問(wèn)題,通過(guò)數(shù)據(jù)庫(kù)表里的唯一GUID實(shí)現(xiàn)關(guān)聯(lián)同步;二是移動(dòng)端存儲(chǔ)顯示問(wèn)題,全省需要督查河道約有6000多條,且為空間多段線,有些復(fù)雜河道涉及空間結(jié)點(diǎn)眾多。傳統(tǒng)的矢量存儲(chǔ)顯示方式通過(guò)程序讀取空間數(shù)據(jù)到設(shè)備內(nèi)存,根據(jù)用戶(hù)的選擇(如圖層、區(qū)域等)將圖形顯示到屏幕上, 將會(huì)使圖形放大、縮小顯示的速度慢得無(wú)法忍受, 顯示的圖形也會(huì)密密麻麻無(wú)法辨認(rèn)??紤]到任意時(shí)刻移動(dòng)終端屏幕顯示的圖形數(shù)據(jù)只是全部矢量數(shù)據(jù)的一部分, 因此適當(dāng)減少移動(dòng)終端讀入非屏幕顯示區(qū)域的矢量數(shù)據(jù), 在不影響屏幕圖形數(shù)據(jù)顯示的同時(shí)可以大大提高圖形顯示速度[3]。按照這種方法, 數(shù)據(jù)庫(kù)設(shè)計(jì)時(shí)對(duì)移動(dòng)終端空間數(shù)據(jù)的組織管理采取了分級(jí)分區(qū)域的存儲(chǔ)結(jié)構(gòu)[4-5]。初始啟動(dòng)程序時(shí),系統(tǒng)主界面以點(diǎn)的形式顯示河道位置,當(dāng)縮放到一定級(jí)別時(shí)以線的形式顯示河道;督查用戶(hù)登錄系統(tǒng)后首先選擇督查工作區(qū)域(即所在縣市區(qū)),系統(tǒng)只顯示督查區(qū)域內(nèi)的河道,可通過(guò)工作區(qū)域設(shè)置重新選擇縣市區(qū),顯示督查河道。
考慮到手機(jī)存儲(chǔ)特點(diǎn),移動(dòng)端采用sqlite輕量型嵌入式數(shù)據(jù)庫(kù),移動(dòng)端存儲(chǔ)河道數(shù)據(jù)、省控?cái)嗝鏀?shù)據(jù)、手機(jī)用戶(hù)的注冊(cè)信息、督查記錄、本地多媒體數(shù)據(jù)等數(shù)據(jù);云服務(wù)器端采用MySQL開(kāi)源數(shù)據(jù)庫(kù),存儲(chǔ)數(shù)據(jù)包含河道數(shù)據(jù)、省控?cái)嗝鏀?shù)據(jù)、手機(jī)用戶(hù)、治水工作人員管理表、權(quán)限表、督查記錄、處理進(jìn)度、多媒體數(shù)據(jù)等多張數(shù)據(jù)表; 多媒體數(shù)據(jù)以文件系統(tǒng)存儲(chǔ)在云服務(wù)器上,相應(yīng)數(shù)據(jù)表存儲(chǔ)對(duì)應(yīng)文件路徑,方便系統(tǒng)檢索調(diào)用。其中user表、record表包含的屬性字段見(jiàn)表1。
表1 user表、record表屬性字段
3. 系統(tǒng)邏輯結(jié)構(gòu)
通過(guò)上述的需求分析及數(shù)據(jù)庫(kù)設(shè)計(jì),系統(tǒng)邏輯結(jié)構(gòu)如圖1所示。
圖1 系統(tǒng)邏輯結(jié)構(gòu)
1. 系統(tǒng)開(kāi)發(fā)運(yùn)行環(huán)境
為保證督查河道、省控?cái)嗝娴瓤臻g地理信息數(shù)據(jù)的流暢顯示,移動(dòng)系統(tǒng)開(kāi)發(fā)采用了安卓、蘋(píng)果App原生開(kāi)發(fā)模式,安卓版開(kāi)發(fā)環(huán)境為jdk1.7+ Android SDK+ADT插件,編程平臺(tái)為Eclipse軟件,開(kāi)發(fā)語(yǔ)言為Java[4];蘋(píng)果版開(kāi)發(fā)環(huán)境為iOS SDK+MAC OS,編程平臺(tái)為Xcode軟件,開(kāi)發(fā)語(yǔ)言為Objective-C[6]。Web端系統(tǒng)空間數(shù)據(jù)發(fā)布軟件為GeoServer,網(wǎng)絡(luò)服務(wù)器為T(mén)omcat,開(kāi)發(fā)框架為SSH架構(gòu),編程平臺(tái)為Eclipse軟件,開(kāi)發(fā)語(yǔ)言為Java,開(kāi)發(fā)環(huán)境為jdk1.7。云服務(wù)端采用Thinkphp框架,開(kāi)發(fā)語(yǔ)言為PHP,網(wǎng)絡(luò)服務(wù)器為IIS。
系統(tǒng)運(yùn)行環(huán)境取決于開(kāi)發(fā)環(huán)境,移動(dòng)端“五水共治”河道督查系統(tǒng)可應(yīng)用在安卓4. 2(含4.2)、蘋(píng)果8.0(含8.0)上,可通過(guò)掃描圖2、圖3所示二維碼或通過(guò)騰訊應(yīng)用寶、蘋(píng)果商店(Apple Store)下載使用。
圖2 安卓手機(jī)二維碼
圖3 蘋(píng)果手機(jī)二維碼
2. 系統(tǒng)功能開(kāi)發(fā)
以安卓端功能開(kāi)發(fā)為例,安卓應(yīng)用程序開(kāi)發(fā)沒(méi)有統(tǒng)一的入口,各個(gè)應(yīng)用之間是相互獨(dú)立的,并且運(yùn)行在自己的進(jìn)程當(dāng)中。根據(jù)完成的功能不同,安卓劃分了4類(lèi)核心的組件類(lèi):Activity、Service、Broadcast Receiver和ContentProvider。相同組件和不同組件之間的導(dǎo)航通過(guò)Intent來(lái)完成。安卓還定義了View類(lèi)來(lái)顯示可視化界面,如菜單、對(duì)話框、下拉列表等。它的優(yōu)勢(shì)在于開(kāi)放性、開(kāi)源等,是一個(gè)優(yōu)秀的移動(dòng)設(shè)備操作系統(tǒng)[7-8]?!拔逅仓巍焙拥蓝讲橄到y(tǒng)功能的開(kāi)發(fā)包含移動(dòng)端、Web端、服務(wù)后臺(tái)3個(gè)部分的開(kāi)發(fā)。移動(dòng)端功能通過(guò)調(diào)用天地圖移動(dòng)API開(kāi)發(fā)包實(shí)現(xiàn),它是一套基于Android 2.2及以上版本設(shè)備的應(yīng)用程序接口,以JAR包的形式提供各種地圖服務(wù)和數(shù)據(jù),如地圖展示、標(biāo)注、定位等。
Web端功能通過(guò)調(diào)用天地圖Web API實(shí)現(xiàn),它是一套由JavaScript語(yǔ)言編寫(xiě)的應(yīng)用程序接口,支持各種地圖應(yīng)用,還可以使地圖功以模塊化集成在系統(tǒng)應(yīng)用中[9-10]。在使用之前需要通過(guò) 怀柔区| 德惠市| 通道| 沙河市| 蕉岭县| 黎平县| 韩城市| 武乡县| 赤峰市| 乌拉特前旗| 江口县| 尼木县| 土默特右旗| 延津县| 曲靖市| 泰宁县| 西乌珠穆沁旗| 宣威市| 孝感市| 绥德县| 克东县| 渝北区| 图木舒克市| 桐柏县| 兴宁市| 奉化市| 郴州市| 大邑县| 彰化县| 武强县| 九台市| 上高县| 临清市| 英山县| 宁津县| 黄冈市| 汉阴县| 榕江县| 体育| 泾川县| 金堂县|