新聞中心

        EEPW首頁 > 汽車電子 > 設計應用 > 基于MaPX的校園導航系統設計

        基于MaPX的校園導航系統設計

        作者: 時間:2009-07-29 來源:網絡 收藏

        2.2 電子地圖基本功能實現
        電子地圖基本功能包括選擇、標注、縮小、放大、漫游等。采用MapX可以很容易的實現這些功能,下面以縮小功能為例,簡單介紹一下程序里如何實現地圖縮小。
        添加一個新的Toolbar資源。輸人標題“IDR_TOOL_BARMAP”。在“IDR_TOOLBARMAP”下添加按鈕,在其上繪制縮小圖形來表示“縮小”,其ID為ID_MAP_TOOL_ZOOMOUT。打開類向導.選擇視圖類CMapXView.為菜單項ID_MAP_TOOL_ZOOMOUT添加COOMMAND消息映射函數OnMapToolZoomout(),并編輯代碼如下:

        本文引用地址:http://www.104case.com/article/197856.htm


        編譯運行程序.點擊縮小按鈕,在電子地圖上單擊鼠標就會實現電子地圖的縮小功能。可用相同方法實現其他標準工具的功能。
        2.3 GPS數據的接收和處理
        此模塊完成了從串口讀取數據,并對數據按照GPS所遵循的NMEA0183協議進行處理,得出經緯度坐標等信息的功能。此模塊包括兩個部分串口通信和數據處理。
        由于GPS模塊每一秒更新一次數據,當上空有4顆衛星時串口會源源不斷的接收到定位數據.為了在對串口實時監控的同時還可以在前臺進行一些其他的操作。采用基于多線程的CSerialPort類的串口通信方法可以很好的解決這一問題。
        此模塊的工作流程可分為以下幾步:(1)利用CSerial-Port的InitPort()初始化串口配置。(2)如果配置成功用StartMonitoring()打開串口并創建監視串口的線程。(3)在相應的類里添加響應WM_COMM_RXCHAR消息的消息處理函數,并且在其中做接收字符處理。(4)添加定時器.在OnTimer中處理NMEA 0183格式的GPS定位數據.將提取到的緯度數據保存到相應類上的成員變量中。
        2.4 目標定位和播報
        該模塊從GPS數據處理模塊中得到經緯度坐標等信息,并且把它賦值給目標圖元,通過定時器更新圖元位置從而完成實時定位。
        由于程序實時接收定位數據來更新圖元的位置.就需要程序頻繁的刷新整個圖層,就會影響效率。動態圖層的目的是為了加速圖層的刷新率從而提高效率,設置動態圖層后。每次刷新都只刷新動態圖層,這樣就很好的解決了這個問題。示例代碼如下:


        程序最后運行界面如下:

        3 結束語
        本文在GIS二次開發日新月益的背景下.結合校園實際特點開發了基于MapX的校園系統。經過調試,程序運行穩定,實現了電子地圖放大、縮小、漫游等功能。程序由Mi-crosoft Visual C++6.0編譯、在Windows XP下運行通過。


        上一頁 1 2 下一頁

        關鍵詞: MaPX 導航 系統設計

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 江陵县| 繁峙县| 彭泽县| 九寨沟县| 秀山| 宁海县| 六枝特区| 永康市| 武穴市| 建始县| 米脂县| 卓尼县| 库尔勒市| 长子县| 兴安盟| 清徐县| 泉州市| 图们市| 扬中市| 阿尔山市| 白银市| 康定县| 东至县| 崇文区| 蓝山县| 迁安市| 弋阳县| 温宿县| 勃利县| 平果县| 台北市| 石城县| 永州市| 庄浪县| 阿鲁科尔沁旗| 彩票| 大化| 柏乡县| 苏州市| 汪清县| 宜阳县|