• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于Google Maps的人員定位調(diào)度系統(tǒng)研究與實(shí)現(xiàn)

      2011-07-09 13:31:18趙冬梅
      關(guān)鍵詞:控件終端調(diào)度

      張 艷,李 忠,趙冬梅

      (1.重慶郵電大學(xué)移動(dòng)通信重點(diǎn)實(shí)驗(yàn)室,重慶400065;2.北京首科軟件及系統(tǒng)集成有限責(zé)任公司,北京100000)

      0 引 言

      隨著信息技術(shù)的發(fā)展,電子地理信息領(lǐng)域已經(jīng)成為了人們的一個(gè)研究熱點(diǎn),在一定程度上加快了地理信息技術(shù)的發(fā)展.而且,實(shí)際應(yīng)用中對(duì)地理信息服務(wù)的各種新要求也不斷驅(qū)動(dòng)著基于WEB地圖服務(wù)模式的地理信息技術(shù)的發(fā)展與完善,其信息傳遞模式的載體已經(jīng)融合了計(jì)算機(jī)通信技術(shù)、網(wǎng)絡(luò)技術(shù)、空間定位技術(shù)、計(jì)算機(jī)視覺(jué)技術(shù)等多個(gè)學(xué)科[1].眾所周知,地理數(shù)據(jù)庫(kù)是地理信息系統(tǒng)的核心,Google Maps正是通過(guò)其龐大的地理數(shù)據(jù)庫(kù)為WEB GIS提供強(qiáng)有力的地理信息可視化及查詢功能支持.然而,如何有效結(jié)合Google Maps與GSM/GPRS網(wǎng)絡(luò)實(shí)現(xiàn)人員的準(zhǔn)確定位和快速調(diào)度,以及如何提高Google地圖的加載速度還存在著很多問(wèn)題.

      文章以 Google Maps的地圖資源為基礎(chǔ),將Google地圖嵌入到網(wǎng)頁(yè)中,利用其免費(fèi)的API,并應(yīng)用AJAX技術(shù)進(jìn)行腳本的異步調(diào)用.在此基礎(chǔ)上,實(shí)現(xiàn)了基于Google Maps和GSM/GPRS網(wǎng)絡(luò)的人員定位調(diào)度系統(tǒng),該系統(tǒng)具有較強(qiáng)的工程應(yīng)用價(jià)值.

      1 Google Maps API

      Google Maps是由著名的Google公司提供的電子地圖服務(wù),能提供矢量地圖、衛(wèi)星照片、地形圖三種不同的視圖模式.基于Web的地圖服務(wù)技術(shù)隨著Google Maps技術(shù)的出現(xiàn)在國(guó)內(nèi)外得到了廣泛的發(fā)展與應(yīng)用,許多公司相繼推出了相應(yīng)的電子地圖服務(wù).Google公司發(fā)起的這場(chǎng)技術(shù)革命,將Google Maps API技術(shù)融入了互聯(lián)網(wǎng),使Google地圖技術(shù)和其他系統(tǒng)的整合應(yīng)用和二次開(kāi)發(fā)更加簡(jiǎn)單.目前,Google Maps API被越來(lái)越多的網(wǎng)站和系統(tǒng)所應(yīng)用,不僅提升了系統(tǒng)的易用性,而且還改善了用戶體驗(yàn).

      1.1 Google Maps API的概念

      Google Maps API是一種將Google地圖嵌人到網(wǎng)頁(yè)中的一組AP1,不僅提供能被 Ajax應(yīng)用程序調(diào)用的JavaScript接口,還提供了能被Flash應(yīng)用程序調(diào)用的Flex語(yǔ)言接口,而且具有強(qiáng)大地圖處理能力.

      1.2 Google Maps API的特點(diǎn)

      Google Maps API的特點(diǎn)體現(xiàn)在[2]:①Google Maps對(duì)所有授權(quán)用戶都是免費(fèi)的,用戶只要注冊(cè)自己的ID后,就可以在自己開(kāi)發(fā)的網(wǎng)頁(yè)中嵌入這些Google Maps API函數(shù).②提供精度較高的衛(wèi)星影像數(shù)據(jù).③使用很方便,并且提供多種服務(wù),如天氣信息等.④Google Maps能提供矢量地圖、衛(wèi)星照片、地形圖三種不同的視圖模式,而且可以方便地切換.⑤授權(quán)用戶可以方便地在Google Maps API的基礎(chǔ)上進(jìn)行二次開(kāi)發(fā).⑥Google Maps API是一種基于服務(wù)器的應(yīng)用開(kāi)發(fā)模式,GIS數(shù)據(jù)處理主要集中在Google的服務(wù)器端.

      1.3 常用Google Maps API介紹

      Google Maps API提供的功能可以分成兩類(lèi),一為地圖顯示功能,即用戶可以調(diào)用API進(jìn)行地圖信息的顯示及顯示模式的切換;二為API的擴(kuò)展功能,用戶可以方面地利用Google Maps所提供的API進(jìn)行二次開(kāi)發(fā),或者與自己的系統(tǒng)進(jìn)行整合.下面介紹一些Google Maps API的常用對(duì)象.

      (1)GMaps對(duì)象

      GMap類(lèi)的實(shí)例表示用戶頁(yè)面上的一個(gè)地圖,用戶可以在自己的程序中創(chuàng)建該類(lèi)的多個(gè)實(shí)例,GMap類(lèi)提供了許多地圖操作的類(lèi)方法;

      (2)GControl控件

      該控件是一種Google Maps API自帶的控件類(lèi),開(kāi)發(fā)人員可以利用GControl接口來(lái)調(diào)用合適的方法對(duì)控件的屬性和行為進(jìn)行設(shè)置;

      (3)ControlPosition對(duì)象

      該對(duì)象用于確定不同控件在地圖上顯示的位置,在地圖上一種控件的位置相對(duì)于同一布局位置中的其他控件而定;

      (4)MarkerShape對(duì)象

      此對(duì)象用于確定標(biāo)記可點(diǎn)擊區(qū)域的的標(biāo)記形狀,包括兩個(gè)屬性(type屬性和coord屬性),這兩個(gè)屬性分別定義該類(lèi)型的標(biāo)記對(duì)應(yīng)的默認(rèn)類(lèi)型的標(biāo)記和坐標(biāo);

      (5)Map Type對(duì)象

      此對(duì)象提供了定義地圖類(lèi)型的接口,通過(guò)該接口用戶可以調(diào)用不同類(lèi)型的地圖模式.

      2 Google Maps API的應(yīng)用

      目前,谷歌一經(jīng)推出了Google Maps API v3,不僅提高了地圖的加載速度,尤其是手機(jī)瀏覽器的訪問(wèn)速度.而且在開(kāi)發(fā)上,用戶不再需要獲取API的key,可以直接在網(wǎng)頁(yè)代碼中調(diào)用Google Maps API提供地圖服務(wù),或者進(jìn)行二次開(kāi)發(fā).

      2.1 網(wǎng)頁(yè)調(diào)用

      <script type=“text/javascript” src=“http://maps.google.com/maps/api/js?sensor=false&language=zh-CN”>

      以上的javascript代碼嵌入網(wǎng)頁(yè)后,用于定位google地圖服務(wù)器,其中sensor參數(shù)是必須的,如果開(kāi)發(fā)的應(yīng)用程序是通過(guò)傳感器來(lái)確定用戶位置的話,設(shè)置 sensor為true,否則為false.

      <body onload=“initialize()” bgcolor=“#ffffff” ><div id=“map_canvas” style=“w idth:520px;height:380px;border:solid”></div></body>

      以上代碼是網(wǎng)頁(yè)代碼中的主程序,調(diào)用了initialize()方法,用一個(gè)寬度為520像素,高度為380像素的層對(duì)象在網(wǎng)頁(yè)中顯示地圖信息.

      2.2 Google Maps API開(kāi)發(fā)應(yīng)用

      Google Maps API v3為當(dāng)前最新版本,該版本中API應(yīng)用程序的最基本元素都可以看作是"Map"本身,下面主要介紹一些API中與地圖顯示、比例尺、提示信息相關(guān)的應(yīng)用方法.

      (1)地圖顯示

      在Google Maps API v3中,Map類(lèi)主要用于地圖的顯示,可以在一個(gè)指定的html容器中新建地圖.

      map.getProjection();

      以上代碼用于傳回當(dāng)前的Projection,在地圖還未啟動(dòng)時(shí)返回Null.

      map.panTo(latLng:New LatLng);

      以上代碼可以將當(dāng)前的地圖中心更改為New-LatLng,在更改幅度不大于地圖的寬度和高度時(shí),地圖滑動(dòng)的效果會(huì)比較流暢.

      map.New LatLng(latLngBounds:New-LatLngBounds);

      以上代碼可以將當(dāng)前窗口中的地圖滑動(dòng)最小的距離,以達(dá)到包含指定New LatLngBounds的顯示效果.

      (2)地圖標(biāo)記

      在Google Maps API v3中,Marker類(lèi)用于在地圖上顯示具有指定選項(xiàng)的標(biāo)記.

      this.setMap(map:Map|StreetView Panorama);

      以上代碼可以再指定的地圖上渲染標(biāo)記,當(dāng)?shù)貓D設(shè)置為Null時(shí),則會(huì)自動(dòng)去掉該標(biāo)記.

      (3)提示信息

      infowindow.open(map,MyMarker);

      以上代碼用于在地圖上顯示標(biāo)記MyMarker.

      3 人員定位調(diào)度系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

      3.1 系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì)

      系統(tǒng)主要由調(diào)度中心、人員定位終端設(shè)備及GSM/GPRS通信網(wǎng)絡(luò)三部分組成[7],如圖1所示.

      圖1 系統(tǒng)結(jié)構(gòu)圖

      如上圖所示,調(diào)度中心需要為服務(wù)器配置固定的IP地址,以實(shí)現(xiàn)無(wú)線分組網(wǎng)和因特網(wǎng)的互聯(lián).人員定位終端通過(guò)GPS接收機(jī)模塊接收到GPS定位信息后,解析出自身的經(jīng)度、維度、方向等信息;再通過(guò)人員定位終端設(shè)備中的GPRS無(wú)線通信模塊把上述數(shù)據(jù)實(shí)時(shí)地上傳到調(diào)度中心服務(wù)器,并將數(shù)據(jù)存入人員管理數(shù)據(jù)庫(kù)中.調(diào)度中心服務(wù)器需要對(duì)所接收到的數(shù)據(jù)進(jìn)行分析,并把人員定位信息與電子地圖進(jìn)行匹配,這樣就可以在調(diào)度中心顯示出所有人員的實(shí)時(shí)位置信息.同時(shí),調(diào)度中心可以根據(jù)人員的具體情況,利用GPRS傳輸系統(tǒng)發(fā)送相應(yīng)的調(diào)度、控制命令,從而實(shí)現(xiàn)對(duì)人員的實(shí)時(shí)定位與調(diào)度管理.

      3.2 人員定位終端

      人員定位終端通過(guò)接收GPS定位信號(hào),實(shí)時(shí)計(jì)算出此時(shí)的經(jīng)度、維度、時(shí)間等信息,并自動(dòng)將這些定位信息傳送到調(diào)度中心服務(wù)器,同時(shí)接受調(diào)度中心的調(diào)度命令,以實(shí)現(xiàn)對(duì)人員的調(diào)度.人員定位終端具有 GPRS/GPS功能,一般由微處理器模塊、GPRS無(wú)線通信模塊、GPS接收機(jī)模塊、LCD液晶顯示模塊等組成[10].

      GPS接收機(jī)模塊主要負(fù)責(zé)接收導(dǎo)航電文,并實(shí)時(shí)計(jì)算出人員定位終端的經(jīng)度、維度和時(shí)間等信息,并通過(guò)串口傳送給終端的主控模塊.

      GPRS無(wú)線通信模塊主要用于人員定位終端和調(diào)度中心之間的無(wú)線數(shù)據(jù)通信,該模塊是整個(gè)系統(tǒng)數(shù)據(jù)通信的基礎(chǔ),不僅支持GPRS操作模式,還要提供RS232串行接口.

      3.3 通信協(xié)議設(shè)計(jì)

      在調(diào)度中心和人員定位終端之間主要傳送兩種格式的數(shù)據(jù):一種是由GPS人員定位終端向調(diào)度中心發(fā)送的信息,即上行指令;另一種是調(diào)度中心向人員定位終端發(fā)送的數(shù)據(jù),即下行指令[9].

      在進(jìn)行協(xié)議的設(shè)計(jì)時(shí),最主要的問(wèn)題是協(xié)議的通用性和可擴(kuò)展性,通信協(xié)議不僅能實(shí)現(xiàn)對(duì)現(xiàn)有GPS人員定位終端功能的支持,還要預(yù)留足夠的協(xié)議接口以保證系統(tǒng)的可擴(kuò)展性.由于通信數(shù)據(jù)類(lèi)型較多,通信協(xié)議可以采用統(tǒng)一的協(xié)議頭作為協(xié)議數(shù)據(jù)的起止標(biāo)志,在協(xié)議體中按照數(shù)據(jù)類(lèi)型的不同可以發(fā)送不同的內(nèi)容[10],協(xié)議設(shè)計(jì)基本格式如下表.

      表1 協(xié)議總體設(shè)計(jì)格式

      3.4 調(diào)度中心

      調(diào)度中心主要由通信服務(wù)器、數(shù)據(jù)庫(kù)服務(wù)器及調(diào)度工作站等組成.調(diào)度中心正常運(yùn)行時(shí),由通信服務(wù)器接收來(lái)自人員定位終端上傳的經(jīng)度、維度、時(shí)間等信息,并進(jìn)行相應(yīng)的數(shù)據(jù)處理,調(diào)度中心的軟件系統(tǒng)調(diào)用Google maps API以實(shí)現(xiàn)在電子地圖上顯示人員的實(shí)時(shí)位置,并可根據(jù)需要進(jìn)行查詢.通信服務(wù)器還可以向所有人員定位終端傳送各種調(diào)度數(shù)據(jù)信息,從而實(shí)現(xiàn)對(duì)人員的實(shí)時(shí)管理和高效調(diào)度.

      而且,調(diào)度中心的通信服務(wù)器在系統(tǒng)中還具有數(shù)據(jù)轉(zhuǎn)發(fā)的功能,可實(shí)時(shí)地將人員定位終端上傳的大量數(shù)據(jù)信息,按照其屬性和類(lèi)型的不同,分別轉(zhuǎn)發(fā)到不同的調(diào)度工作站.數(shù)據(jù)庫(kù)服務(wù)器中存儲(chǔ)人員的各類(lèi)屬性數(shù)據(jù),以便查詢、調(diào)用.

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

      圖2 和圖3是作者開(kāi)發(fā)利用Google map API所開(kāi)發(fā)的人員定位調(diào)度系統(tǒng)運(yùn)行效果,其中圖2是系統(tǒng)登陸頁(yè)面,圖3是系統(tǒng)綜合管理頁(yè)面.

      如圖3所示,無(wú)標(biāo)簽的浮動(dòng)氣球表示某突發(fā)事件的發(fā)生地點(diǎn),調(diào)度中心需要調(diào)度人員到該地去處理;紅色浮動(dòng)氣球表示不同的人員,氣球上的編號(hào)為對(duì)應(yīng)的人員編號(hào);地圖的左上角為縮放控件,左下角為搜索框,右上角為可供選擇的地圖類(lèi)型,右下角為地圖的縮略圖.

      當(dāng)調(diào)度中心需要緊急調(diào)度相關(guān)人員去突發(fā)事件的發(fā)生地點(diǎn)時(shí),可以根據(jù)人員的實(shí)時(shí)定位情況通過(guò)給定位中端發(fā)送調(diào)度指令,來(lái)調(diào)度距離該地最近的人員去處理緊急情況.如果多名人員到發(fā)生地點(diǎn)的距離相近時(shí),調(diào)度中心可以通過(guò)多點(diǎn)測(cè)距來(lái)確定距離突發(fā)事件地點(diǎn)最近的人員及到達(dá)所需的時(shí)間,系統(tǒng)測(cè)距界面如圖4所示.

      圖4 系統(tǒng)線路測(cè)距頁(yè)面

      系統(tǒng)的右上角表示兩地之間的路線距離,另外調(diào)度中心在進(jìn)行人員調(diào)度時(shí)需要考慮天氣、交通等多方面的因素.

      4 提高地圖的加載速度

      地圖的加載速度是影響系統(tǒng)工作效率的一個(gè)重要因素,為了提高地圖的加載速度,系統(tǒng)開(kāi)發(fā)時(shí)采用Google map API V3版本.相對(duì)于V2版本,V3版本在地圖的加載上做了很多的優(yōu)化[6].

      向Google地圖添加大量標(biāo)記時(shí)可能會(huì)降低顯示地圖的速度,還會(huì)使視覺(jué)效果過(guò)于混亂,對(duì)于某些縮放級(jí)別尤其如此.對(duì)此本系統(tǒng)使用標(biāo)記管理器作為這一問(wèn)題的解決方案,標(biāo)記管理器允許在同一個(gè)地圖上高效顯示數(shù)百個(gè)標(biāo)記,并能夠指定應(yīng)顯示標(biāo)記的縮放級(jí)別.管理器監(jiān)控地圖的當(dāng)前視圖和縮放級(jí)別,動(dòng)態(tài)地從地圖中添加或刪除有效標(biāo)記.此外,通過(guò)允許標(biāo)記指定顯示自身的縮放級(jí)別來(lái)實(shí)現(xiàn)標(biāo)記集群,這種管理方法可以大大加快地圖的顯示并減少視覺(jué)混亂,提供給用戶更為友好的界面和極大改善了用戶的體驗(yàn).

      同時(shí),Google的地圖分塊技術(shù)充分利用了數(shù)據(jù)在網(wǎng)絡(luò)上異步傳輸技術(shù)的優(yōu)勢(shì),由Ajax引擎實(shí)現(xiàn)大量地圖區(qū)域的無(wú)縫拼接、地圖滑動(dòng)和快速填充等工作.當(dāng)用戶通過(guò)瀏覽器進(jìn)行一些地圖操作時(shí),Ajax引擎自動(dòng)計(jì)算出需要重新加載的地圖區(qū)域,并以異步的方式迅速向Google Maps服務(wù)器發(fā)出加載請(qǐng)求.當(dāng)重新加載的多個(gè)地圖區(qū)域傳送到客戶端時(shí),由Ajax引擎完成全部地圖在用戶瀏覽器界面中的無(wú)縫拼接,整個(gè)過(guò)程不需要用戶的瀏覽器進(jìn)行刷新.另一方面,如果瀏覽器的緩存中已經(jīng)存在某一小塊地圖,下次瀏覽時(shí)則不用向服務(wù)器再次請(qǐng)求,可以直接調(diào)用緩存中的圖片即可.這樣當(dāng)用戶重新回到已被訪問(wèn)過(guò)的地圖區(qū)域時(shí),加載速度會(huì)有很大的改善.

      5 結(jié)束語(yǔ)

      本文通過(guò)介紹Google Maps API的功能、特點(diǎn)和使用方法,探討了基于Google Maps API的Web地圖服務(wù)應(yīng)用系統(tǒng)的設(shè)計(jì)與開(kāi)發(fā),并將其應(yīng)用于人員定位調(diào)度系統(tǒng)中.結(jié)果表明,利用Google Maps API(V3)實(shí)現(xiàn)的實(shí)時(shí)地圖服務(wù)系統(tǒng),不僅降低了系統(tǒng)的開(kāi)發(fā)難度,還在很大程度上改善了用戶體驗(yàn),而且無(wú)需支付額外費(fèi)用,具有良好的應(yīng)用前景和推廣價(jià)值.另外,Google Maps API現(xiàn)在還處于一個(gè)不斷完善的階段,其最大的不足之處系統(tǒng)核心的實(shí)時(shí)地圖數(shù)據(jù)完全由Google提供,在實(shí)際應(yīng)用開(kāi)發(fā)時(shí)應(yīng)考慮潛在的技術(shù)風(fēng)險(xiǎn).

      [1]耿慶齋,繆 綸,段媛媛,李江華.基于Google Maps API的Web地圖服務(wù)系統(tǒng)研究及應(yīng)用[J].中國(guó)水利水電科學(xué)研究院學(xué)報(bào),2009,7(1).

      [2]孫曉茹,趙 軍.Google Maps API在WEBGIS中的應(yīng)用[J].微計(jì)算機(jī)信息,2006,22(19):224-226.

      [3]江 寬,龔小鵬.Google API開(kāi)發(fā)詳解[M].北京:電子工業(yè)出版社,2008.

      [4]Google Maps API開(kāi)發(fā)指南[EB/OL].http://www.google.com/apis/maps/2008-05-07.

      [5]張 宏,溫永寧,劉愛(ài)軍,等.地理信息系統(tǒng)算法基礎(chǔ)[M].科學(xué)出版社.2006.

      [6]Sign Up for the Google Maps API[EB/OL].http://code.google.com/apis/maps/signup.html,2007.12.

      [7]戴喜明,袁 濤,吳定雪.基于 GSM/GPS/GIS車(chē)輛狀態(tài)監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].微計(jì)算機(jī)信息,2006,22(9):246-248.

      [8]張 凌,田增山,張光星.基于ARM/GPRS/GPS的監(jiān)控系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].重慶郵電學(xué)院學(xué)報(bào)(自然科學(xué)版),2005,17(6):246-248.

      [9]王明艷,劉 旭,張其善,吳今培.GPS車(chē)輛導(dǎo)航系統(tǒng)終端軟件的設(shè)計(jì)與實(shí)現(xiàn)[J].無(wú)線電工程,2006,36(10):31-39.

      [10]李富年.基于GPS/GPRS的車(chē)輛移動(dòng)監(jiān)控終端的設(shè)計(jì)與實(shí)現(xiàn)[J].安防科技,2007,7(9):33-36.

      猜你喜歡
      控件終端調(diào)度
      X美術(shù)館首屆三年展:“終端〉_How Do We Begin?”
      《調(diào)度集中系統(tǒng)(CTC)/列車(chē)調(diào)度指揮系統(tǒng)(TDCS)維護(hù)手冊(cè)》正式出版
      通信控制服務(wù)器(CCS)維護(hù)終端的設(shè)計(jì)與實(shí)現(xiàn)
      一種基于負(fù)載均衡的Kubernetes調(diào)度改進(jìn)算法
      虛擬機(jī)實(shí)時(shí)遷移調(diào)度算法
      關(guān)于.net控件數(shù)組的探討
      軟件(2018年7期)2018-08-13 09:44:42
      多功能北斗船載終端的開(kāi)發(fā)應(yīng)用
      電子制作(2016年15期)2017-01-15 13:39:14
      ABB Elastimold 10kV電纜終端及中間接頭
      SVC的RTP封裝及其在NS2包調(diào)度中的應(yīng)用研究
      就這樣玩會(huì)VBA中常見(jiàn)的自定義控件
      電腦迷(2012年24期)2012-04-29 00:44:03
      台州市| 峡江县| 丰顺县| 延庆县| 泉州市| 黄龙县| 海淀区| 邵阳市| 庆城县| 卓尼县| 枣庄市| 会东县| 图木舒克市| 邓州市| 萨嘎县| 科技| 收藏| 观塘区| 灵寿县| 太仆寺旗| 邵阳市| 兰西县| 将乐县| 宜春市| 吕梁市| 迁安市| 巴楚县| 曲松县| 潞西市| 丁青县| 筠连县| 新邵县| 米林县| 丰县| 朝阳区| 全南县| 宁晋县| 永德县| 扬中市| 乌兰县| 浮梁县|