亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Cordova和Cesium的移動(dòng)3D WebGIS系統(tǒng)實(shí)現(xiàn)

        2017-05-10 17:44:02李俊金
        電子技術(shù)與軟件工程 2017年8期

        摘 要

        本文根據(jù)三維網(wǎng)絡(luò)地理信息系統(tǒng)的開發(fā)現(xiàn)狀和移動(dòng)開發(fā)模式現(xiàn)狀,基于Cordova混合開發(fā)框架結(jié)合cesium可視化,展開移動(dòng)3DWebGIS快速跨平臺(tái)開發(fā)研究,以實(shí)際需求出發(fā),設(shè)計(jì)了一個(gè)移動(dòng)3DWebGIS原型系統(tǒng),涉及地圖服務(wù)、地理定位技術(shù)、傾斜攝影模型批量動(dòng)態(tài)展示等技術(shù)。論述了從設(shè)計(jì)到實(shí)現(xiàn)的方方面面,搭建了原型系統(tǒng),并在手機(jī)真機(jī)上成功運(yùn)行,為后續(xù)的跨平臺(tái)移動(dòng)3DWebGIS開發(fā)者提供了參考。

        【關(guān)鍵詞】混合開發(fā) 三維可視化 移動(dòng)GIS

        1 引言

        目前,三維可視化技術(shù)與Web GIS(地理信息系統(tǒng))系統(tǒng)發(fā)展迅速,同時(shí)三維可視理論正在得到不斷地完善,因此3DWebGIS的實(shí)現(xiàn)成為了可能。3DWebGIS既結(jié)合了Web GIS跨平臺(tái)、開發(fā)效率高、易于擴(kuò)展等優(yōu)點(diǎn),又結(jié)合了三維可視化空間信息平臺(tái)展示直觀和空間分析功能強(qiáng)大的優(yōu)點(diǎn)。3DWebGIS在各個(gè)領(lǐng)域都有著急切的應(yīng)用需求。在GIS領(lǐng)域,同樣有幾款基于WebGL的優(yōu)秀三維可視化框架:如開源的Openwebglobe、Webglearth、Cesium,商業(yè)的ArcGIS Earth,SuperMap Earth。其中Cesium是一款很適合GIS數(shù)據(jù)可視化的地圖引擎,無需任何插件,使用WebGL來進(jìn)行硬件加速圖形化顯示三維場景,而且Cesium基于Apache開源協(xié)議,支持商業(yè)和非商業(yè)免費(fèi)使用。

        近年來,隨著電子信息技術(shù)以及智能設(shè)備技術(shù)的飛速發(fā)展,手機(jī)的功能越來越強(qiáng)大,應(yīng)用種類和數(shù)量也越來越多。同時(shí),移動(dòng)互聯(lián)網(wǎng)的快速發(fā)展和迅速普及,傳輸數(shù)據(jù)的速度和容量更令人滿意。但主流的移動(dòng)終端操作系統(tǒng)卻有Android、iOS、Windows Phone等,如果開發(fā)者針對(duì)不同的操作系統(tǒng)進(jìn)行原生(Native App)開發(fā),由于操作系統(tǒng)間的移植性差,導(dǎo)致應(yīng)用開發(fā)門檻高和開發(fā)周期長。如果采用Web應(yīng)用開發(fā)則一次開發(fā)即可在各種智能手機(jī)瀏覽器上運(yùn)行,但存在表現(xiàn)略差,用戶體驗(yàn)差,沒法在App Store中下載、無法通過應(yīng)用下載獲得盈利機(jī)會(huì)與手機(jī)硬件交互差?;旌蠎?yīng)用(Hybrid App)兼具了Native App的所有優(yōu)勢,也兼具了Web App使用HTML5跨平臺(tái)開發(fā)低成本的優(yōu)勢,是一種折中的良好解決方案, Cordova是其中的優(yōu)秀代表。

        因此本文基于Cordova和Cesium兩大開發(fā)熱點(diǎn),展開移動(dòng)3DWebGIS研究,以實(shí)際需求出發(fā),進(jìn)行系統(tǒng)功能設(shè)計(jì),快速實(shí)現(xiàn)一個(gè)原型系統(tǒng)。

        2 需求分析與目標(biāo)

        2.1 需求分析

        本文收集了Contextcapture 4.3(smart3d)生產(chǎn)的b3dm格式的傾斜攝影實(shí)驗(yàn)成果一份、kmz世界各國GDP數(shù)據(jù)一份。預(yù)期開發(fā)一個(gè)跨平臺(tái)的移動(dòng)3DWebGIS,進(jìn)行三維展示。

        2.2 總體目標(biāo)

        (1)基于最新Cordova混合應(yīng)用(Hybrid App)技術(shù)和cesium三維可視化平臺(tái)。

        (2)快速開發(fā)一個(gè)操作友好、易于擴(kuò)展、部署方便、視覺美觀的移動(dòng)3DWebGIS系統(tǒng)。

        (3)體現(xiàn)幵源平臺(tái)開發(fā)可選性強(qiáng)、靈活組合、功能強(qiáng)大、易于定制的特點(diǎn)。

        3 總體架構(gòu)

        系統(tǒng)主要?jiǎng)澐挚蛻舳撕头?wù)器端,主要基于Cordova和Cesium,在移動(dòng)端實(shí)現(xiàn)用戶交互、手機(jī)定位、三維展示、場景漫游。服務(wù)器端實(shí)現(xiàn),基礎(chǔ)地圖采取調(diào)用國家天地圖發(fā)布的WMTS切片,b3dm和kmz數(shù)據(jù)采用tomcat8.0發(fā)布。系統(tǒng)結(jié)構(gòu)圖如圖1。

        4 關(guān)鍵技術(shù)

        4.1 Cordova與Cesium結(jié)合

        Cordova是Adobe貢獻(xiàn)給Apache后的開源項(xiàng)目,是從PhoneGap(Phonegap是一款開源的開發(fā)框架,旨在讓開發(fā)者使用HTML、Javascript、CSS等Web APIs開發(fā)跨平臺(tái)的移動(dòng)應(yīng)用程序。原本由Nitobi公司開發(fā),現(xiàn)在由Adobe擁有。)中抽出的核心代碼,是驅(qū)動(dòng)PhoneGap的核心引擎。你可以把它們的關(guān)系想象成類似于Webkit和Google Chrome的關(guān)系。

        Cesiumjs是一套javascript庫,用來渲染3D地球,2D區(qū)域地圖,和多種GIS要素。不需要安裝任何插件就能在支持最新HTML5標(biāo)準(zhǔn)的瀏覽器上運(yùn)行。支持WebGL硬件加速,非常適合動(dòng)態(tài)數(shù)據(jù)在GIS圖層上的展示,是一個(gè)跨平臺(tái),開源,非常有前途的webgis表現(xiàn)層庫。

        兩者結(jié)合步驟如下:

        (1)安裝最新穩(wěn)定版的Nodejs,本文采用的版本是6.10。

        (2)安裝npm,由于國內(nèi)網(wǎng)絡(luò)速度問題,本文安裝的是npm的淘寶NPM鏡像cnpm。

        (3)使用npm安裝cordova,使用cordova創(chuàng)建個(gè)新的cordova項(xiàng)目。

        (4)下載cesium(3d-tiles分支)項(xiàng)目,安照如下結(jié)構(gòu)部署項(xiàng)目。

        4.2 地圖底圖

        “天地圖”是國家測繪地理信息局建設(shè)的地理信息綜合服務(wù)網(wǎng)站。它是“數(shù)字中國”的重要組成部分,是國家地理信息公共服務(wù)平臺(tái)的公眾版。“天地圖”網(wǎng)站裝載了覆蓋全球的地理信息數(shù)據(jù),這些數(shù)據(jù)分為矢量、影像、三維3種模式。其中中國的數(shù)據(jù)覆蓋了從宏觀的中國全境到微觀的鄉(xiāng)鎮(zhèn)、村莊。覆蓋全球范圍的1:100萬矢量數(shù)據(jù)和500米分辨率衛(wèi)星遙感影像,覆蓋全國范圍的1:25萬公眾版地圖數(shù)據(jù)、導(dǎo)航電子地圖數(shù)據(jù)、15米和2.5米分辨率衛(wèi)星遙感影像,覆蓋全國300多個(gè)地級(jí)以上城市的0.6米分辨率衛(wèi)星遙感影像等地理信息數(shù)據(jù)。本文采用的是天地圖的影像和注記圖層。采用WMTS格式。

        WMTS,切片地圖Web服務(wù)(OpenGIS Web Map Tile Service)當(dāng)前版本是1.0.0。WMTS標(biāo)準(zhǔn)定義了一些操作,這些操作允許用戶訪問切片地圖。WMTS可能是OGC首個(gè)支持RESTful訪問的服務(wù)標(biāo)準(zhǔn)。

        WMTS提供了一種采用預(yù)定義圖塊方法發(fā)布數(shù)字地圖服務(wù)的標(biāo)準(zhǔn)化解決方案。WMTS彌補(bǔ)了WMS不能提供分塊地圖的不足。WMS針對(duì)提供可定制地圖的服務(wù),是一個(gè)動(dòng)態(tài)數(shù)據(jù)或用戶定制地圖(需結(jié)合SLD標(biāo)準(zhǔn))的理想解決辦法。WMTS犧牲了提供定制地圖的靈活性,代之以通過提供靜態(tài)數(shù)據(jù)(基礎(chǔ)地圖)來增強(qiáng)伸縮性,這些靜態(tài)數(shù)據(jù)的范圍框和比例尺被限定在各個(gè)圖塊內(nèi)。這些固定的圖塊集使得對(duì)WMTS服務(wù)的實(shí)現(xiàn)可以使用一個(gè)僅簡單返回已有文件的Web服務(wù)器即可,同時(shí)使得可以利用一些標(biāo)準(zhǔn)的諸如分布式緩存的網(wǎng)絡(luò)機(jī)制實(shí)現(xiàn)伸縮性。

        Cesium提供WebMapTileServiceImageryPr

        ovider接口實(shí)現(xiàn)WMTS加載。

        4.3 傾斜攝影動(dòng)態(tài)加載

        對(duì)于傾斜模型,如果單純采用默認(rèn)的三維模型加載方案會(huì)出現(xiàn)瀏覽器吃緊致使崩潰或者高延遲低幀率等影響正??梢暬换サ膯栴}。

        而3DTiles是Cesium團(tuán)隊(duì)為海量的異構(gòu)三維地理空間數(shù)據(jù)集所設(shè)計(jì)的一個(gè)開放的規(guī)范,該規(guī)范適用于各種常見的地理數(shù)據(jù),3DTiles已成功的在Cesium平臺(tái)實(shí)現(xiàn),3DTiles的主要目的是針對(duì)大規(guī)模的異構(gòu)數(shù)據(jù)源提高其加載速度和渲染性能,它只對(duì)瀏覽器用戶所給定的可見的三維視圖窗口進(jìn)行不同級(jí)別的切片顯示,由于它是基于WEBGL設(shè)計(jì)開發(fā)出來的,因此可以更快的加載與處理三維數(shù)據(jù),并且為了減少客戶端的處理,3DTiles可以對(duì)數(shù)據(jù)進(jìn)行預(yù)處理和批動(dòng)態(tài)處理。該技術(shù)已被部分三維軟件采用。

        在傾斜攝影方面,ContextCapture Center,其前身Smart3DCapture技術(shù)的基礎(chǔ)上發(fā)展起來的一種新的解決方案,軟件解決方案,使生產(chǎn)從簡單的照片,高分辨率的三維模型,無需任何人工干預(yù)。從ContextCapture Center4.3起能生成Cesium3DTiles格式的傾斜模型,直接用已有的服務(wù)器進(jìn)行發(fā)布。然后運(yùn)用cesium中的3d-tile分支,就可以在web端加載傾斜攝影模型。

        4.4 地圖定位

        在使用Cordova開發(fā)移動(dòng)app的時(shí)候會(huì)遇到定位的問題,cordova提供了自己的cordova-plugin-geolocation插件,這個(gè)插件在iOS上面定位不會(huì)出現(xiàn)問題,但是在安卓手機(jī)上會(huì)出現(xiàn)定位位置偏移或者定位失敗的問題。因此在網(wǎng)上找了一些相關(guān)的資料,大部分對(duì)于安卓定位的解決方案都是采用百度地圖的安卓SDK進(jìn)行定位。

        安裝https://github.com/mrwutong/cordova-qdc-baidu-location這個(gè)插件,找到插件用百度下載下來的開發(fā)包替換android目錄下的所有文件。然后修改插件目錄下的plugin.xml里面相應(yīng)代碼為圖4代碼。

        這樣就可以把百度5.3的SDK換成6.3的SDK。

        5 系統(tǒng)實(shí)現(xiàn)

        系統(tǒng)基于Cordova架構(gòu)和Cesium開發(fā)包,采用基于Javascript語言開發(fā),測試真機(jī)為華為麥芒4,其更新版本對(duì)應(yīng)為安卓6.0系統(tǒng)。

        進(jìn)入所建項(xiàng)目目錄,使用:cordova platform add android命令添加android環(huán)境。

        使用:cordova build命令編譯項(xiàng)目平臺(tái)。

        生成的apk安裝在真機(jī)上運(yùn)行效果如圖5。

        進(jìn)入地球界面后根據(jù)手機(jī)定位信息,飛行到當(dāng)前位置。

        點(diǎn)擊加載文件和傾斜按鈕可分別加載包含GDP信息的kmz專題文件和傾斜攝影數(shù)據(jù)??衫檬髽?biāo)進(jìn)行不同尺度,不同方位三維漫游查看。

        6 結(jié)語

        本文根據(jù)3DWebGIS的開發(fā)現(xiàn)狀和智能終端應(yīng)用開發(fā)模式現(xiàn)狀,結(jié)合兩大熱點(diǎn)技術(shù):Cordova框架及Cesium三維可視化平臺(tái),從實(shí)際需求出發(fā),設(shè)計(jì)了一個(gè)移動(dòng)3DWebGIS原型系統(tǒng),涉及地圖服務(wù)、地理定位技術(shù)、傾斜攝影模型批量動(dòng)態(tài)展示等技術(shù)。論述了從設(shè)計(jì)到實(shí)現(xiàn)的方方面面,并成功運(yùn)行,為后來的跨平臺(tái)移動(dòng)3DWebGIS開發(fā)者提供了參考。

        后續(xù)可從客戶端離線地圖、三維大數(shù)據(jù)渲染、三維空間分析多方面入手展開進(jìn)一步研究。

        參考文獻(xiàn)

        [1]屠衛(wèi)平.基于PhoneGap的跨平臺(tái)移動(dòng)GIS應(yīng)用研究[D].上海:華東師范大學(xué),2013.

        [2]高云成.基于Cesium的WebGIS三維客戶端實(shí)現(xiàn)技術(shù)研究[D].西安:西安電子科技大學(xué),2014.

        [3]王德生.基于HTML5和WebGL的三維WebGIS系統(tǒng)構(gòu)建及應(yīng)用[D].福州:福建師范大學(xué),2014.

        [4]肖敏.基于ApacheCordova的跨平臺(tái)智能家居終端應(yīng)用研發(fā)[D].廣州:華南理工大學(xué),2015.

        [5]牛藝博.基于WebGL的地理信息三維可視化技術(shù)研究[D].蘭州:蘭州交通大學(xué),2015.

        [6]肖鷹東.基于混合風(fēng)格的移動(dòng)基站查勘GIS系統(tǒng)框架的研究與實(shí)現(xiàn)[D].成都:西南交通大學(xué),2016.

        [7]李俊金.基于3D GIS Cesium的數(shù)字城市建模技術(shù)[J].信息與電腦,2016(19):45-46.

        [8]An Introduction to Cesium Android Apps with Cordova[EB/OL] http://cesiumjs.org/ 2016/05/18/An-Introduction-to-Cesium-Android-Apps-with-Cordova/.

        [9]百度百科.Cordova[EB/OL] http://baike.baidu.com/item/Cordova?sefr=enterbtn.

        [10]關(guān)于cordova開發(fā)中安卓定位不精確的解決方案[EB/OL] http://blog.csdn.net/ u010730897/article/details/52055802.

        国产精品久久国产精麻豆| 精品少妇一区二区三区视频| 日韩欧美国产自由二区| 青青草最新在线视频观看| 偷拍一区二区三区四区| 日韩丰满少妇无码内射| 亚洲欧美成人a∨| 色人阁第四色视频合集网| 久久精品久99精品免费| 无遮挡呻吟娇喘视频免费播放| 欧美日本日韩aⅴ在线视频| 人妻少妇精品一区二区三区| 亚洲天堂一区二区偷拍| 天天噜日日噜狠狠噜免费| 99国产精品99久久久久久| 午夜日本精品一区二区| 国产亚洲成人精品久久| 粗大的内捧猛烈进出视频| 免费a级毛片在线观看| 国产日产免费在线视频| 国产精品女主播福利在线| 欧洲熟妇色xxxxx欧美老妇伦| 国产欧美日韩综合一区二区三区| 国产免费一区二区三区三| 秋霞在线视频| 狠狠色噜噜狠狠狠狠888奇禾 | 91久久精品人妻一区二区| 视频在线观看国产自拍| 欧美内射深喉中文字幕| 一本一本久久久久a久久综合激情| 99热婷婷一区二区三区| 伊人久久精品无码二区麻豆| 欧美精品偷自拍另类在线观看| 99精品国产成人一区二区在线| 女同精品一区二区久久| 亚洲精品无码专区在线| 久久亚洲av成人无码软件| 海外华人在线免费观看| 亚洲综合色区另类av| 国产午夜精品福利久久| av天堂网手机在线观看|