孫立志,徐洪秀
(天津市測(cè)繪院,天津 300381)
隨著城市建設(shè)的擴(kuò)大,城市面貌日新月異,規(guī)劃審批驗(yàn)收等數(shù)據(jù)越來越復(fù)雜和龐大[1]。GIS技術(shù)的發(fā)展將這些龐大的數(shù)據(jù)整合到一起,以直觀的形式展現(xiàn)給用戶,提高了數(shù)據(jù)管理查詢的效率。伴隨移動(dòng)平臺(tái)的高速發(fā)展,移動(dòng)平臺(tái)的便攜性為終端用戶提供強(qiáng)大的優(yōu)勢(shì)。移動(dòng)端硬件的提升為移動(dòng)GIS系統(tǒng)的實(shí)現(xiàn)提供了可能。但GIS數(shù)據(jù)量龐大,移動(dòng)平臺(tái)相對(duì)成熟的計(jì)算機(jī)處理能力還有這一定的差距,能否在移動(dòng)平臺(tái)上快速的瀏覽、查詢,并保證數(shù)據(jù)的安全是一個(gè)難題[2]。嵌入式文件數(shù)據(jù)庫的出現(xiàn),如SQLite,為移動(dòng)平臺(tái)的大數(shù)據(jù)管理提供了一種可能。本文詳細(xì)介紹利用SQLite文件數(shù)據(jù)庫設(shè)計(jì)離線地圖、設(shè)計(jì)和實(shí)現(xiàn)基于移動(dòng)GIS的輔助規(guī)劃巡查系統(tǒng)。
基于移動(dòng)平臺(tái)搭建輔助規(guī)劃GIS系統(tǒng)旨在通過對(duì)數(shù)據(jù)的瀏覽、專題數(shù)據(jù)的查詢獲取相關(guān)規(guī)劃信息,輔助規(guī)劃業(yè)務(wù)人員決策。通過GPS定位與拍照等功能,輔助業(yè)務(wù)人員在考察過程中記錄相關(guān)問題[6]。
數(shù)據(jù)瀏覽:提供影像數(shù)據(jù)、地形數(shù)據(jù)、控規(guī)數(shù)據(jù)、管線數(shù)據(jù)等的無縫集成,能進(jìn)行快速的放大、縮小、漫游、量測(cè)等操作。
數(shù)據(jù)查詢:查詢管線、管點(diǎn)、控規(guī)數(shù)據(jù)、照片等的屬性信息。
定位和拍照:定位業(yè)務(wù)人員的位置并以圓圈的形式顯示在圖中;點(diǎn)擊地圖上某一位置進(jìn)行拍照,將位置信息和照片、描述信息存儲(chǔ)在數(shù)據(jù)庫中。并提供這些數(shù)據(jù)列表顯示、刪除與導(dǎo)出等功能。
對(duì)維基百科中的移動(dòng)操作系統(tǒng)進(jìn)行比較,Google公司的 Android,蘋果公司的 IOS,微軟公司 Window phone全球市場(chǎng)使用率最高。綜合考慮到Android的開源性以及市場(chǎng)占有率高等特點(diǎn),本輔助規(guī)劃巡查系統(tǒng)選用Android移動(dòng)操作系統(tǒng)。Android是一款開源的基于Linux內(nèi)核開發(fā)的移動(dòng)操作系統(tǒng),可以采用JAVA語言進(jìn)行二次開發(fā)。
現(xiàn)有的移動(dòng)GIS平臺(tái)有ArcGIS平臺(tái),超圖的iMoble 7C,高德地圖的Android_Map_V2.2.0,百度地圖,Google地圖,跬步科技平臺(tái)UCMAP等。這些都是專業(yè)的移動(dòng)GIS開發(fā)平臺(tái),空間分析功能齊全,支持廣泛的在線地圖服務(wù)和強(qiáng)大的離線數(shù)據(jù)。
考慮到成本和技術(shù)的需求,本輔助規(guī)劃巡查系統(tǒng)選用UCMap應(yīng)用程序開發(fā)包。UCMap是由南京跬步科技自主研發(fā)的系列軟件,提供了Android、IOS、Windows Phone等手機(jī)操作系統(tǒng)下的開發(fā)包,延伸GIS在移動(dòng)端的應(yīng)用。UCMap提供除基本的地圖瀏覽、地圖渲染、地圖查詢等基本功能外,還提供了要素編輯、數(shù)據(jù)緩存、空間分析、定位、影像瀏覽、擴(kuò)展定制等高級(jí)GIS 功能[3]。
移動(dòng)GIS平臺(tái)支持在線地圖服務(wù)和強(qiáng)大的離線數(shù)據(jù)。在線數(shù)據(jù)服務(wù)包括支持OGC(開放地理信息聯(lián)盟)標(biāo)準(zhǔn)的地圖服務(wù)和互聯(lián)網(wǎng)地圖[4]。OGC標(biāo)準(zhǔn)地圖服務(wù)是將本地?cái)?shù)據(jù)包裝成OGC標(biāo)準(zhǔn)的格式通過局域網(wǎng)或互聯(lián)網(wǎng)發(fā)布,如 ArcGIS,MapServer,GeoServer。互聯(lián)網(wǎng)地圖是由商業(yè)機(jī)構(gòu)提供的在線數(shù)據(jù),如百度地圖、谷歌地圖,微軟Bing Maps等。離線數(shù)據(jù)是將特定格式的數(shù)據(jù)放在移動(dòng)平臺(tái)終端中供程序訪問。
這3種方式數(shù)據(jù)各有優(yōu)缺點(diǎn):①OGC標(biāo)準(zhǔn)地圖服務(wù):優(yōu)點(diǎn)是數(shù)據(jù)格式唯一、擴(kuò)展性強(qiáng),缺點(diǎn)是需要后臺(tái)服務(wù)器支持,移動(dòng)終端必須通過網(wǎng)絡(luò)才能訪問。②互聯(lián)網(wǎng)地圖服務(wù):優(yōu)點(diǎn)是訪問數(shù)據(jù)簡便、不需個(gè)人維護(hù),缺點(diǎn)是不能疊加本地?cái)?shù)據(jù),擴(kuò)展性不高。③離線地圖:優(yōu)點(diǎn)是數(shù)據(jù)擴(kuò)展性高,缺點(diǎn)是占據(jù)磁盤空間大、數(shù)據(jù)制作工作量大。
由于規(guī)劃審批數(shù)據(jù)屬于涉密數(shù)據(jù),數(shù)據(jù)保密性要求高,且專題數(shù)據(jù)比較多,因此本輔助規(guī)劃GIS系統(tǒng)須選用離線地圖技術(shù)。這樣即保證數(shù)據(jù)的安全性又可以添加各種專題數(shù)據(jù)[5]。
本系統(tǒng)離線數(shù)據(jù)是通過文件數(shù)據(jù)庫SQLite存儲(chǔ)的,在數(shù)據(jù)庫中以層次細(xì)節(jié)模型(LOD)組織,存儲(chǔ)結(jié)構(gòu)如圖1所示。圖中tiles數(shù)據(jù)層是瓦片層,包含瓦片所在的層級(jí)、行列號(hào)、和圖片,metadata是元數(shù)據(jù)層,包含切片的范圍,切片的寬度和高度、原始坐標(biāo)以及圖層號(hào)等元數(shù)據(jù)信息。屬性數(shù)據(jù)和幾何數(shù)據(jù)是分開存儲(chǔ)且存儲(chǔ)結(jié)構(gòu)完全不一樣。

圖1 LOD數(shù)據(jù)組織模型
當(dāng)系統(tǒng)獲取地圖時(shí),首先會(huì)根據(jù)元數(shù)據(jù)信息和當(dāng)前的屏幕范圍信息計(jì)算要獲取的瓦片的行列號(hào),然后根據(jù)行列號(hào)獲取瓦片數(shù)據(jù),將圖片顯示到系統(tǒng)中。SQLite將瓦片圖層建立索引,從而提高獲取瓦片數(shù)據(jù)的速度。以這種方式存儲(chǔ)既保證數(shù)據(jù)的高效和數(shù)據(jù)的完整。
系統(tǒng)采用3層體系架構(gòu),由最底層的數(shù)據(jù)服務(wù)層、中間邏輯應(yīng)用層、最上層的移動(dòng)終端表示組成。如圖2所示。

圖2 系統(tǒng)結(jié)構(gòu)模型
數(shù)據(jù)服務(wù)層是由文件數(shù)據(jù)庫組成,文件數(shù)據(jù)庫存儲(chǔ)了系統(tǒng)所需基礎(chǔ)地理信息數(shù)據(jù),包括地形數(shù)據(jù)和柵格數(shù)據(jù);存儲(chǔ)了規(guī)劃專題數(shù)據(jù),包括總體規(guī)劃數(shù)據(jù)、專項(xiàng)數(shù)據(jù)(住房建設(shè)規(guī)劃),控規(guī)數(shù)據(jù),管線數(shù)據(jù)等;存儲(chǔ)考察記錄數(shù)據(jù),保存照片文件。基礎(chǔ)地理數(shù)據(jù)和規(guī)劃專題數(shù)據(jù)是通過UCMap數(shù)據(jù)庫引擎處理Shape數(shù)據(jù)和影像數(shù)據(jù)得到的,巡查記錄數(shù)據(jù)是由程序動(dòng)態(tài)生成的。
邏輯應(yīng)用層由Android SDK、UCMap SDK和應(yīng)用程序組成。應(yīng)用程序通過調(diào)用Android SDK與移動(dòng)終端進(jìn)行交互和通信,通過UCMap SDK進(jìn)行規(guī)劃數(shù)據(jù)的數(shù)據(jù)讀取和顯示,最終將所有功能和指令串聯(lián)起來,相應(yīng)終端用戶請(qǐng)求,展現(xiàn)給用戶一個(gè)可視化操作界面,形成一個(gè)完整應(yīng)用程序APP。
終端表示層是各個(gè)不同的移動(dòng)終端、如手機(jī)、PAD等安裝應(yīng)用程序APP,通過界面操作邏輯應(yīng)用層。
在確定系統(tǒng)架構(gòu)和功能后,進(jìn)行系統(tǒng)開發(fā),系統(tǒng)開發(fā)過程如圖3所示。首先要收集各種數(shù)據(jù),然后進(jìn)行數(shù)據(jù)處理制作,將配置工程環(huán)境,導(dǎo)入Android和UCMap包,然后進(jìn)行各個(gè)功能開發(fā),包括系統(tǒng)界面、系統(tǒng)控制、系統(tǒng)模型Model View Controller(MVC)三方面,最后進(jìn)行測(cè)試,在保證各個(gè)功能正確無誤后,將編譯后的APP放在終端中安裝試用。
本輔助規(guī)劃 GIS系統(tǒng)是基于Android SDK4.2.2和UCMap SDK基礎(chǔ)上進(jìn)行開發(fā)實(shí)現(xiàn)的。地圖制作過程使用UCMap地圖配置程序5.0生成SQLite文件數(shù)據(jù)庫,如圖3所示,具體的開發(fā)環(huán)境如表1所示。

圖3 系統(tǒng)開發(fā)過程

系統(tǒng)開發(fā)環(huán)境 表1
按照本文第2節(jié)中功能,系統(tǒng)將數(shù)據(jù)瀏覽功能,如放大、縮小、漫游等,查詢管線功能,定位功能設(shè)置成快捷工具,放在屏幕右側(cè)正中間方便用戶的操作。拍照、刪除、圖層控制等功能放在菜單右上欄。系統(tǒng)總體實(shí)現(xiàn)界面如圖4所示。

圖4 系統(tǒng)界面
點(diǎn)擊查詢按鈕,可方便查看管線的屬性、查看控規(guī)單位數(shù)據(jù)的屬性以及圖片的信息等,如圖5所示。

圖5 管線查詢
點(diǎn)擊定位按鈕,可定位到當(dāng)前的位置,位置精度在 50 m左右。點(diǎn)擊拍照按鈕,然后在圖上位置選一個(gè)點(diǎn),點(diǎn)擊彈出系統(tǒng)拍照界面,拍完照片后,輸入照片信息就可以將照片、照片所在位置、照片描述信息保存起來,如圖6所示。通過刪除照片按鈕可以將照片點(diǎn)刪除。

圖6 照片信息
本文基于文件數(shù)據(jù)庫、瓦片技術(shù)、Android平臺(tái)、UCMap平臺(tái),實(shí)現(xiàn)基于移動(dòng)平臺(tái)的輔助規(guī)劃GIS系統(tǒng),系統(tǒng)能方便快捷的瀏覽規(guī)劃審批數(shù)據(jù),查詢數(shù)據(jù)的屬性信息,實(shí)時(shí)的進(jìn)行定位,并可以將現(xiàn)實(shí)信息拍照處理,極大的幫助輔助規(guī)劃審批業(yè)務(wù)實(shí)現(xiàn),提高工作效率。
[1]潘國輝,張一蔚.移動(dòng)辦公在規(guī)劃國土輔助審批方面的應(yīng)用[J].地球,2013(3):14.
[2]趙小廠.基于移動(dòng)GIS和GPRS技術(shù)的數(shù)據(jù)采集系統(tǒng)研究[D].上海:華東師范大學(xué),2011.
[3]Ucmap Sdk for Android[OL/DB].http://www.creable.cn/kuibu/index.asp.
[4]孔凡隨,鄒學(xué)忠.移動(dòng)GIS組成關(guān)鍵技術(shù)及其應(yīng)用[J].現(xiàn)代測(cè)繪,2005,28(3):44 ~46.
[5]許文峰.基于Android的移動(dòng)監(jiān)察GIS平臺(tái)研發(fā)[J].城市建設(shè)理論研究,2013(19).
[6]董志江,盛宇.GIS在城市規(guī)劃中的應(yīng)用[J].民營科技,2012(12):20.