• 
    

    
    

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

      基于Web的GPS監(jiān)控系統(tǒng)設(shè)計與實現(xiàn)

      2014-06-21 11:27:24可,范平,余
      湖北科技學院學報 2014年12期
      關(guān)鍵詞:圍欄多邊形交點

      彭 可,范 平,余 凱

      (湖北科技學院 計算機科學與技術(shù)學院,湖北 咸寧 437100)

      隨著時代的發(fā)展,汽車數(shù)量的劇增,交通管理以及車輛安全越來越受到重視。雖然現(xiàn)在已經(jīng)有很多成熟的監(jiān)控系統(tǒng)或監(jiān)控技術(shù),比如利用高清攝像頭定點監(jiān)控或利用高清攝像頭實時監(jiān)控,然而基于Web形式的監(jiān)控系統(tǒng)卻很少見。隨著移動互聯(lián)網(wǎng)的發(fā)展以及移動互聯(lián)網(wǎng)設(shè)備的普及,采用Web形式的監(jiān)控系統(tǒng)將會廣泛被人們接受和應(yīng)用。

      基于Web的GPS監(jiān)控系統(tǒng),能夠?qū)崿F(xiàn)車輛運行狀態(tài),能夠?qū)囕v的實時監(jiān)控,能夠?qū)崟r查看車輛的地理位置,并能結(jié)合百度地圖實時顯示車輛位置。不僅可以保證車輛的安全,更可以用在對道路的交通管理,本系統(tǒng)也可應(yīng)用與智能交通系統(tǒng)中。

      系統(tǒng)采用了Jquery模塊化調(diào)用方式,方便了對文檔對象的操作;同時使用了支持動態(tài)從數(shù)據(jù)庫引入數(shù)據(jù)的dtree、使用Ajax技術(shù),使程序更小、更快;使用Json文本格式,采用Net平臺,使程序更加合理,開發(fā)更加迅捷。

      一、基于Web的GPS監(jiān)控系統(tǒng)框架

      系統(tǒng)采用B/S架構(gòu),由上至下依次可分為三個層次,表現(xiàn)層,業(yè)務(wù)邏輯層和數(shù)據(jù)層。如圖1所示:

      圖1 系統(tǒng)組織架構(gòu)圖

      表現(xiàn)層:通過瀏覽器向用戶展示相應(yīng)數(shù)據(jù)處理結(jié)果;在本系統(tǒng)中表現(xiàn)形式為直接通過圖形化界面將所有結(jié)果顯示出來;

      業(yè)務(wù)邏輯層:處理業(yè)務(wù)邏輯,包括GPS服務(wù)器,WEB服務(wù)器,GIS服務(wù)器;

      數(shù)據(jù)層:實現(xiàn)數(shù)據(jù)的存儲,用來實時存儲GPS信息數(shù)據(jù),同時通過固定接口與業(yè)務(wù)邏輯層進行數(shù)據(jù)的交互,同時完成業(yè)務(wù)邏輯層的數(shù)據(jù)處理指令。

      二、系統(tǒng)功能設(shè)計與實現(xiàn)

      1.最后位置

      查詢車輛保存在數(shù)據(jù)庫中的最后時刻的經(jīng)緯度坐標,車輛的行駛軌跡將會被記錄在數(shù)據(jù)庫中,選擇車輛后,業(yè)務(wù)邏輯層便會查詢該車輛的最后記錄位置,在百度地圖上顯示出來。

      2.實時監(jiān)控

      實時監(jiān)控是定時返回車輛位置的功能,終端每10秒上傳一個新的位置點,系統(tǒng)設(shè)置為每10秒查詢服務(wù)端是否有新信息點,如果有新信息,則更新地圖上車輛的位置。核心代碼如下:

      for(var i=0;i

      {

      map.removeOverlay(markListWatch[i].gmark);

      }

      markListWatch.length = 0;

      timer_url = createUrlLjj(ACT_POS_LAST + "&p1=" + id);

      g_trackFlag=1;

      isShishi = "1";

      DingShiQi=0;

      mapTimer();

      3.歷史軌跡回放

      選擇需要查詢的車輛之后,選擇起始時間和結(jié)束時間,即可查詢相應(yīng)時間段內(nèi)該車輛的行駛軌跡。查詢時業(yè)務(wù)邏輯層將該車輛在查詢時間內(nèi)之中的行駛軌跡數(shù)據(jù)取出來,在顯示層即在地圖上按坐標顯示出來。核心是先從數(shù)據(jù)庫服務(wù)器中將歷史軌跡點取出來,以Json對象的形式,通過Ajax形式傳到前臺頁面,然后利用百度地圖提供的Api函數(shù),將點按照時間順序連成線并播放,從而實現(xiàn)車輛歷史軌跡回放。

      歷史軌跡的具體實現(xiàn)核心算法代碼:

      if ((PointList != null) && (PointList.length % 2 == 0) && (pos[15] != null))

      {

      for (var i = 0;i < (PointList.length / 2);i++)

      {

      Points.push(new BMap.Point(PointList[i * 2],PointList[i * 2 + 1]));

      }

      }

      4.地圖標注

      標注是用來表示一個點位置的可見元素,每個標注自身都包含地理信息。一個標注不論地圖移動、縮放,標注都會跟隨一起移動,保證了標注始終指向正確的地理位置。從DOM元素構(gòu)成角度看,一個完整的標注包含標注點擊區(qū)域、標注圖標、標注陰影,示意圖如圖2所示:

      圖2 地圖標注示意圖

      timer_url = createUrlLjj(ACT_AJAX_BIAOZHU + "&type=0&p1=" + biaozhula + "&p2=" + biaozhulo + "&p3=" + escape(text.toString()) + "&p4=" + id + "&p5=" + escape(xinxi.toString()));

      mapbiaozhudian();

      5.地圖搜索

      在搜索條件區(qū)內(nèi)要搜索的地址,地圖會顯示你要搜索的地方,但是存在有些過于詳細的地址可能搜索不到,核心代碼如下:

      function showAddress_BaiDuMap()

      {

      var address = document.getElementById("textaddress").value;

      var local = new BMap.LocalSearch(map,{

      renderOptions:{ map:map }

      });

      local.search(address);

      }

      6.設(shè)置圍欄

      設(shè)置電子圍欄的目的是,確保目標車輛有規(guī)定的行駛范圍,系統(tǒng)實現(xiàn)了矩形和多邊形圍欄。利用百度地圖的API接口可以在地圖上畫出一個封閉的矩形或者多邊形區(qū)域,將指令下發(fā)給設(shè)備端。設(shè)備端根據(jù)當前的GPS經(jīng)緯度來判斷車輛是否在規(guī)定區(qū)域內(nèi)。

      判斷車輛是否在圍欄內(nèi),實際上就是判斷點是否在多邊形內(nèi),通常采用射線法。

      射線法判斷原理:從判斷點向X軸正方向作一條射線,然后計算該射線與多邊形每條邊的交點個數(shù),如果沒有交點或者交點個數(shù)為偶數(shù),那么點位于多邊形外部,如果交點個數(shù)為奇數(shù),那么點位于多邊形內(nèi)部。 如圖3所示:點P1沿X軸正方向的射線與圖形S的交點個數(shù)為2,點P1位于圖形S外部;點P2與圖形S的交點個數(shù)為1,點P2位于圖形S的內(nèi)部。

      圖3 射線法原理圖

      具體實現(xiàn)方法:點的Y值大于等于多邊形上某個線段的最小值且小于該線段上的最大值,在該線段上取一個y值為點P.y的點P1。如果P.x

      判斷車輛是否在區(qū)域內(nèi)的流程圖如下:

      程序返回true時,表示點在多邊形區(qū)域內(nèi),即車輛在規(guī)定區(qū)域內(nèi),否則返回false,即車輛不在規(guī)定區(qū)域內(nèi),這是可以告警,表示當前車輛已開出規(guī)定的區(qū)域范圍。

      三、結(jié)束語

      搭建基于Web的GPS監(jiān)控系統(tǒng)環(huán)境成本較低,可實時監(jiān)控多輛車輛,實時性高,可同時在多處Web瀏覽器上同時監(jiān)控某一輛車輛,執(zhí)行速度較快,安全性較高,因此有非常廣闊的市場前景,且使用時利用Web形式界面顯示操作簡單方便,易于被大眾所接受。記錄車輛的歷史行駛軌跡有助于保證車輛及車主的安全,若發(fā)生車輛被偷盜的現(xiàn)象,首先可根據(jù)實時監(jiān)控發(fā)現(xiàn)車輛,若不能夠?qū)崟r發(fā)現(xiàn)車輛,即可根據(jù)歷史行駛軌跡查看車輛的行駛軌跡和最后出現(xiàn)位置。在系統(tǒng)中可將車輛的常用行駛區(qū)域設(shè)置為圍欄,當車輛超出圍欄后即發(fā)布預(yù)警,設(shè)置車輛行駛區(qū)域后即可保證車輛的安全。

      本系統(tǒng)主要從實際出發(fā)利用程序輸入設(shè)置車輛值從原理上設(shè)計并實現(xiàn)了系統(tǒng)應(yīng)具有的功能,若要實際應(yīng)用還需要進行車載設(shè)備端的設(shè)計。

      猜你喜歡
      圍欄多邊形交點
      恐龍公園
      多邊形中的“一個角”問題
      TBS圍欄滅鼠技術(shù)
      多邊形的藝術(shù)
      解多邊形題的轉(zhuǎn)化思想
      動物園
      好孩子畫報(2019年8期)2019-09-19 12:57:27
      閱讀理解
      多邊形的鑲嵌
      電子圍欄系統(tǒng)在水廠中的應(yīng)用
      電子測試(2017年12期)2017-12-18 06:36:07
      借助函數(shù)圖像討論含參數(shù)方程解的情況
      寻乌县| 崇明县| 白城市| 腾冲县| 汉中市| 宁海县| 丹江口市| 临湘市| 乌什县| 雷山县| 博客| 新泰市| 郑州市| 章丘市| 偏关县| 阿鲁科尔沁旗| 凤凰县| 郸城县| 安陆市| 建德市| 达尔| 雷山县| 吉林省| 平乡县| 宝丰县| 丰镇市| 凤翔县| 循化| 深泽县| 衡南县| 夏河县| 常山县| 延安市| 甘德县| 南开区| 营口市| 崇阳县| 兴安县| 武鸣县| 尼木县| 潞西市|