版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、車載導(dǎo)航之地圖數(shù)據(jù)畢業(yè)設(shè)計(jì)目 錄第 1 章 緒 論11.1 背景介紹11.2 國內(nèi)外的研究現(xiàn)狀11.3 研究?jī)?nèi)容和意義2第 2 章 汽車導(dǎo)航簡(jiǎn)介32.1 汽車導(dǎo)航儀定義32.2 汽車導(dǎo)航儀功能介紹42.2.1 地圖描畫42.2.2 路徑計(jì)算42.2.3 車輛定位42.2.4 設(shè)施檢索42.2.5 駕駛引導(dǎo)52.3 車載導(dǎo)航工作原理52.4 汽車導(dǎo)航工作過程62.4.1 用戶輸入目的地62.4.2 行駛路線的計(jì)算62.4.3 行駛中的導(dǎo)航7第 3 章 地圖數(shù)據(jù)83.1 地圖數(shù)據(jù)的格式83.1.1 GDF 數(shù)據(jù)83.1.2 MDB 數(shù)據(jù)93.1.3 RDB 數(shù)據(jù)93.1.4 PDB 數(shù)據(jù)103.1
2、.5 LDB 數(shù)據(jù)103.2 地圖數(shù)據(jù)的主要元素103.3 地圖數(shù)據(jù)的比例尺113.4 地圖數(shù)據(jù)的分層與分塊存儲(chǔ)123.4.1 地圖數(shù)據(jù)的分層存儲(chǔ)123.4.2 地圖數(shù)據(jù)的分塊存儲(chǔ)13第 4 章 地圖數(shù)據(jù)沿路文字的標(biāo)記144.1 地圖標(biāo)記概述144.1.1 一些術(shù)語的定義144.1.2 標(biāo)記提示(MH)分析154.2 功能實(shí)現(xiàn)154.2.1 概述154.2.2 函數(shù)功能簡(jiǎn)介164.2.3 函數(shù)流程174.3 地圖數(shù)據(jù)的描畫234.3.1 地圖數(shù)據(jù)描畫工具234.3.2 OnPaint()函數(shù)流程圖及功能介紹24第 5 章 測(cè) 試29第 6 章 結(jié)論31參考文獻(xiàn)32致 謝34第 1 章 緒 論1
3、.1 背景介紹交通擁擠、交通安全和交通環(huán)境是當(dāng)今交通領(lǐng)域的三大關(guān)鍵難題。隨著交通問題的日益嚴(yán)重和交通設(shè)施建設(shè)成本的日益高漲,各發(fā)達(dá)國家都在有組織有計(jì)劃地研究發(fā)展交通信息化工作,把高科技的手段應(yīng)用于交通管理,在現(xiàn)代科學(xué)技術(shù)的帶動(dòng)下,誕生了智能交通系統(tǒng)(ITS)。汽車導(dǎo)航系統(tǒng)是 ITS 的重要內(nèi)容,有望成為 ITS 中的一項(xiàng)重要科技產(chǎn)業(yè)。汽車,是現(xiàn)在最常用的交通工具。隨著經(jīng)濟(jì)日益發(fā)展,城市建設(shè)不斷擴(kuò)大, 道路網(wǎng)也變得錯(cuò)綜復(fù)雜,很多汽車的駕駛者在一個(gè)不熟悉的地方不能及時(shí)準(zhǔn)確的判斷出自己的位置和方位,這就需要汽車導(dǎo)航儀的幫忙了。它可以幫助汽車駕駛者節(jié)約時(shí)間,減少走冤枉路的幾率。汽車導(dǎo)航系統(tǒng)是在全球衛(wèi)星
4、定位系統(tǒng) GPS 基礎(chǔ)上發(fā)展起來的新型技術(shù)。駕車者只要將目的地輸入汽車導(dǎo)航系統(tǒng),系統(tǒng)就會(huì)根據(jù)電子地圖自動(dòng)計(jì)算出最合適的 路線,并在車輛行駛過程中(如轉(zhuǎn)彎前)提醒駕駛員按照計(jì)算的路線行駛。今天, 汽車導(dǎo)航系統(tǒng)已漸漸普及,幾乎每臺(tái)車都會(huì)有一個(gè)這樣的系統(tǒng)。使汽車駕駛者在 外出時(shí)也能像在自己的家鄉(xiāng)那樣在交通道路上自由穿梭。汽車導(dǎo)航系統(tǒng)最重要的組成部分就是地圖數(shù)據(jù),本文主要敘述的就是道路上文字的顯示算法。通過這個(gè)算法,將道路的名字篩選出來,并附加在相應(yīng)的路段上,顯示出來。1.2 國內(nèi)外的研究現(xiàn)狀在國外,汽車導(dǎo)航系統(tǒng)發(fā)展得相當(dāng)成熟,成為大眾的一個(gè)生活輔助工具,乃至必需品。目前國際上已經(jīng)形成了日本、歐洲和北
5、美三大市場(chǎng),日本是汽車導(dǎo)航產(chǎn)品概念的提出者和市場(chǎng)的推廣者,經(jīng)過數(shù)年的技術(shù)發(fā)展和市場(chǎng)推廣,產(chǎn)品的技術(shù)和工藝日趨成熟,并在產(chǎn)品的技術(shù)先進(jìn)性方面在市場(chǎng)中處領(lǐng)先地位。汽車導(dǎo)航系統(tǒng)在我國起步較晚,但發(fā)展相當(dāng)快。我國出于軍事上的考慮,一直將地圖視為國家機(jī)密,對(duì)繪制與編輯都進(jìn)行了限制,尤其是外資企業(yè)很難直接插手中國國內(nèi)的地圖繪制。但從 1997 年起,在我國政府的地圖管理部門國家測(cè)繪局的協(xié)助下,與四維圖新共同繪制車載導(dǎo)航系統(tǒng)用的電子地圖。從 2002 年開始提供包括部分城市在內(nèi)的電子地圖,很多已被豐田等廠商的車載導(dǎo)航儀采用, 到 2008 年,北京已有超過 50%的車輛安裝了車載導(dǎo)航系統(tǒng)。隨著市場(chǎng)經(jīng)濟(jì)的發(fā)展
6、, 車載導(dǎo)航的價(jià)格也已趨于合理,相信不久的將來,就連最普通的出租車司機(jī)都也 能接受。2010 年,中國 GPS 市場(chǎng)在市場(chǎng)推進(jìn)、技術(shù)發(fā)展、應(yīng)用創(chuàng)新的推動(dòng)下飛速發(fā)展,全年 GPS 市場(chǎng)容量達(dá)到 908.3 萬套,同比增長 117.8%。其中,車載 GPS 銷 量達(dá)到 342.7 萬套,較 2009 年增 長 102.2%;便攜式 GPS 銷量達(dá)到 523.1 萬套, 較 2009 年增長 148.4%;前裝市場(chǎng)銷量為 42.5 萬套,同比增長 15.2%。中國的車載導(dǎo)航技術(shù)經(jīng)過十年的市場(chǎng)培育,用戶目標(biāo)與需求已逐步明確,以及技術(shù)的研發(fā)、市場(chǎng)的培育的逐步完善,車載導(dǎo)航裝置應(yīng)用市場(chǎng)業(yè)已啟動(dòng)和日趨成熟,
7、現(xiàn)在已逐 步進(jìn)入道路交通行業(yè)應(yīng)用的高速發(fā)展時(shí)期。隨著城市交通系統(tǒng)的日趨復(fù)雜及車輛 的增多,車載導(dǎo)航技術(shù)有著重要的應(yīng)用前景,更大的方便人們?nèi)粘I?。隨著生 活的日益富裕,汽車進(jìn)入尋常家,城際間的路網(wǎng)日趨復(fù)雜和大都市內(nèi)部立體交通 網(wǎng)絡(luò)的建設(shè),車載導(dǎo)航的應(yīng)用是必不可少的,同時(shí)也會(huì)給行人帶來更大的方便。1.3 研究?jī)?nèi)容和意義現(xiàn)階段,導(dǎo)航產(chǎn)品的研究已經(jīng)日趨成熟,導(dǎo)航產(chǎn)品的應(yīng)用也已經(jīng)普及,考慮 更多的應(yīng)該是客戶的需求,盡可能的讓客戶感到舒適與滿意。城市的道路有很多 很多,錯(cuò)綜復(fù)雜,它們互相連通組成了我們的交通網(wǎng)絡(luò)。每條路都有自己的名字, 通過這些道路的名字可以判定自己所在的具體方位或目的地的位置。在導(dǎo)航儀
8、上 將路名顯示在地圖的道路上,會(huì)更加直觀的展現(xiàn)出駕駛者所在的地點(diǎn),使駕駛者 感到更加的方便,快捷。本文主要論述的是如何利用 MicrosoftVisualStudio 2005 軟件編程實(shí)現(xiàn)沿路標(biāo)記文字,以及內(nèi)部函數(shù)的分析和實(shí)現(xiàn)過程。最后在顯示數(shù)據(jù)的軟件 Map data show 上顯示出沿路文字標(biāo)記的具體畫面,檢測(cè)出軟件編程方面是否有錯(cuò)誤。經(jīng)過測(cè)試,運(yùn)用預(yù)先處理地圖數(shù)據(jù)計(jì)算并篩選出文字標(biāo)注的方法,使地圖顯 示軟件動(dòng)態(tài)顯示地圖中的元素的名字,大大提高了車載導(dǎo)航儀處理數(shù)據(jù)的效率, 使導(dǎo)航儀地圖信息顯示速度加快,降低了導(dǎo)航儀由于處理速度不夠而死機(jī)的概率, 并且節(jié)省了導(dǎo)航儀內(nèi)存空間,具有實(shí)際的應(yīng)用
9、價(jià)值。第 2 章 汽車導(dǎo)航簡(jiǎn)介2.1 汽車導(dǎo)航儀定義因?yàn)閷?duì)汽車導(dǎo)航不熟悉,很多人一聽到汽車導(dǎo)航,想到的就是 GPS 全球定位; 其實(shí)這種認(rèn)識(shí)是不全面的, 完整的汽車導(dǎo)航系統(tǒng)應(yīng)該包括兩部分: 全球定位系統(tǒng)和車輛自動(dòng)導(dǎo)航系統(tǒng)。其一般是由 GPS 天線, 集成了顯示屏幕和功能按鍵的主機(jī),以及語音輸出設(shè)備(一般利用汽車音響系統(tǒng)輸出語音提示信息)構(gòu)成的。受車內(nèi)車導(dǎo)航設(shè)備和汽車音響集成在一起。汽車導(dǎo)航儀是集導(dǎo)航,通訊與服務(wù),智能控制, 娛樂于一體的汽車專用設(shè)備。圖 2.1 汽車導(dǎo)航儀圖 2.2 汽車導(dǎo)航儀界面2.2 汽車導(dǎo)航儀功能介紹車載導(dǎo)航的主要功能有:地圖描畫,路徑計(jì)算,車輛定位,設(shè)施檢索,駕駛引導(dǎo)等
10、。2.2.1 地圖描畫地圖描畫是導(dǎo)航系統(tǒng)最直接的功能。它是在導(dǎo)航終端的顯示屏上描畫和顯示 存儲(chǔ)在煤質(zhì)中的電子地圖信息。最基本的電子地圖信息包括:道路,建筑,山川, 河流和橋梁等信息。還可以根據(jù)用戶設(shè)定的比例尺進(jìn)行切換,目前更先進(jìn)的導(dǎo)航 系統(tǒng)可以根據(jù) 2D 3D 顯示切換,3D 可以細(xì)致的顯示出建筑物街道的特點(diǎn),使分辨起來更加的方便快捷。2.2.2 路徑計(jì)算用戶通過查看地圖或檢索設(shè)施設(shè)定目的地位置,導(dǎo)航系統(tǒng)根據(jù)目的地來設(shè)定最優(yōu)的路線。用戶可以根據(jù)自己的需求設(shè)定最優(yōu)解決方案,如路線最短,路況最好,最省錢等。在路線計(jì)算的過程中,導(dǎo)航儀根據(jù)實(shí)時(shí)的路況信息及自身存儲(chǔ)的一些數(shù)據(jù)通過一系列的算法計(jì)算出最終結(jié)
11、果,返回到客戶端。2.2.3 車輛定位車載 GPS 導(dǎo)航系統(tǒng),其內(nèi)置的 GPS 天線會(huì)接收到來自環(huán)繞地球的 24 顆 GPS 衛(wèi)星中的至少 3 顆所傳遞的數(shù)據(jù)信息,結(jié)合儲(chǔ)存在車載導(dǎo)航儀內(nèi)的電子地圖,通過 GPS 衛(wèi)星信號(hào)確定的位置坐標(biāo)與此相匹配,進(jìn)行確定汽車在電子地圖中的準(zhǔn)確位置,這就是平常所說的定位功能。該功能可以給用戶提供車輛所在的位置和方位。車輛的位置通常由經(jīng)緯度表示。通過衛(wèi)星定位及各種算法對(duì)車輛所在位置進(jìn)行匹配和確定,最終返回到客戶端。2.2.4 設(shè)施檢索檢索方式主要分為以下的四種方式:1設(shè)施名稱檢索:知道設(shè)施名稱的情況下可使用此檢索方式,例如:目的地為“天安門”,輸入每個(gè)字拼音的首字
12、母。2附近設(shè)施檢索:提供現(xiàn)在位置附近、路線附近和目的地附近等多種附近設(shè)施檢索方式,極大的滿足在駕駛過程中的各種需要。3路線附近設(shè)施檢索:行駛在設(shè)置的路線上,如果想尋找附近的加油站,以“路線附近”檢索方式可查詢從本車位置方圓 30 公里周圍的區(qū)域,按離本車位置由近及遠(yuǎn)的順序最多可顯示 20 個(gè)查詢結(jié)果。4快速的路線檢索:目的地設(shè)定后,通過具有高速運(yùn)算能力的芯片,導(dǎo)航系統(tǒng)能在 3 秒內(nèi)推薦 5 種路線方案,可以根據(jù)自身需求選擇理想的行駛路線,最多可設(shè)置 5 個(gè)目的地,同時(shí)根據(jù)道路情況選擇繞行路線,設(shè)定回避區(qū)域,大大提高了行車效率。2.2.5 駕駛引導(dǎo)用語音提前向駕駛者提供路口轉(zhuǎn)向、導(dǎo)航系統(tǒng)狀況等行
13、車信息,就像一個(gè)懂路的向?qū)Ц嬖V用戶如何駕車去目的地一樣。導(dǎo)航中最重要的一個(gè)功能,使用戶無需觀看操作終端,通過語音提示就可以安全到達(dá)目的地。畫面導(dǎo)航:在操作終端上,會(huì)顯示地圖,以及車子現(xiàn)在的位置,行車速度, 目的地的距離,規(guī)劃的路線提示,路口轉(zhuǎn)向提示的行車信息。重新規(guī)劃線路:當(dāng)用戶沒有按規(guī)劃的線路行駛,或者走錯(cuò)路口時(shí)候,GPS導(dǎo)航系統(tǒng)會(huì)根據(jù)你現(xiàn)在的位置,為你重新規(guī)劃一條新的到達(dá)目的地的線路,引導(dǎo)駕駛者輕松的,方便的,快捷的駛向目的地。期間,導(dǎo)航系統(tǒng)自動(dòng)更新車況信息, 會(huì)對(duì)路徑做相應(yīng)的改動(dòng)。2.3 車載導(dǎo)航工作原理當(dāng)前的汽車導(dǎo)航系統(tǒng)包括兩部分:全球定位系統(tǒng)和車輛自動(dòng)導(dǎo)航系統(tǒng)。汽車 導(dǎo)航設(shè)備一般是由
14、 GPS 天線,集成了顯示屏幕和功能按鍵的主機(jī),以及語音輸出設(shè)備(一般利用汽車音響系統(tǒng)輸出語音提示信息)構(gòu)成的。受車內(nèi)安裝位置的限制, 一般汽車導(dǎo)航設(shè)備和汽車視像音響合成在一起,可以播放 CD、VCD 和 DVD 碟,其中 DVD 驅(qū)動(dòng)器負(fù)責(zé)讀取電子地圖 DVD 光盤,因此,一些汽車導(dǎo)航系統(tǒng)又稱為 DVD 導(dǎo)航系統(tǒng)。內(nèi)置的 GPS 天線會(huì)接收到來自環(huán)繞地球的 24 顆 GPS 衛(wèi)星中的至少 3 顆所傳遞的數(shù)據(jù)信息,由此測(cè)定汽車當(dāng)前所處的位置。GPS 接收了定位衛(wèi)星信號(hào),經(jīng)過微處理器計(jì)算出汽車所在精確經(jīng)度和緯度以及汽車速度和方向,并在顯示器上顯示出來。它通過地面任意一點(diǎn)(如汽車)和上空四顆定位衛(wèi)
15、星的相對(duì)距離計(jì)算出汽車的準(zhǔn)確位置。如果用戶知道某點(diǎn)距一顆衛(wèi)星的距離,我們可以知道該點(diǎn)必然處于以第一顆衛(wèi)星為球心,以距離為半徑的球面上,如果再知道距第二顆已知衛(wèi)星的距離,用戶可以確認(rèn)該點(diǎn)處于兩個(gè)球面相交的圓形曲線上,有了第三顆衛(wèi)星我們就可以將第三個(gè)球面和前一個(gè)圓形曲線相交于兩點(diǎn)。一般通過第四顆衛(wèi)星的距離我們就可以唯一確定該點(diǎn)的經(jīng)緯度了。導(dǎo)航用電子地圖在整個(gè)汽車導(dǎo)航應(yīng)用體系中起到核心的作用,針對(duì)不同導(dǎo)航應(yīng)用往往會(huì)采用不同規(guī)格的電子地圖。通常電子地圖由記錄實(shí)際地物的地理數(shù)據(jù)和與實(shí)際地物相關(guān)的標(biāo)識(shí)信息以及各類附加信息組成?,F(xiàn)在汽車導(dǎo)航的特征之一的“電子地圖”,定位功能正式投產(chǎn)的時(shí)間是 1987 年的皇
16、冠,那時(shí),推測(cè)航法已經(jīng)作為定位技術(shù)被使用了。是把通過地磁傳感器得到的方位和通過車速傳感器得到的距離,按照向量積分推算出車輛的行駛軌跡,求得從出發(fā)地的相對(duì)位置。2.4 汽車導(dǎo)航工作過程目前世界上應(yīng)用較多的是自主導(dǎo)航, 其主要特征是每套車載導(dǎo)航設(shè)備都自帶電子地圖, 定位和導(dǎo)航功能全部由車載設(shè)備完成。它的工作過程主要有以下幾個(gè)步驟。2.4.1 用戶輸入目的地在出發(fā)前,用戶通過系統(tǒng)提供的輸入方法將目的地輸入到導(dǎo)航設(shè)備中。除了在系統(tǒng)顯示的電子地圖上直接點(diǎn)擊選取地點(diǎn)外, 更多時(shí)候是借助某種輸入方法, 將目的地名稱(如路名、維修站、機(jī)場(chǎng)、火車站、碼頭、停車場(chǎng)、加油站、酒店、餐廳、醫(yī)院、郵局及其它公共服務(wù)單位
17、等)輸入到系統(tǒng)中。根據(jù)輸入設(shè)備的不同, 可以有不同的地名輸入方法。比較常見的是類似目前手機(jī)的輸入方法, 利用顯示屏幕周圍的旋鈕和按鍵,在屏幕上出現(xiàn)的字母表中選取字母,組成地名, 確認(rèn)后將這個(gè)地名輸入到系統(tǒng)中。但是國內(nèi)市場(chǎng)上的汽車自主導(dǎo)航系統(tǒng)很少采用這種輸入方法, 因?yàn)橹形淖值臄?shù)量數(shù)以千計(jì), 不可能全部列在屏幕上供用戶選擇, 而且國內(nèi)汽車自主導(dǎo)航產(chǎn)品基本都是基于 PC 結(jié)構(gòu)。因此, 或者借助外接鍵盤 ( 從使用和存放的便利性出發(fā), 多數(shù)采用無線鍵盤) 以類似 PC 機(jī)的中文輸入法作為地名輸入方法的汽車導(dǎo)航系統(tǒng),或者利用觸摸屏借助日益成熟的手寫識(shí)別技術(shù)進(jìn)行中文輸入。依靠鍵盤或觸摸屏,同時(shí)也可以實(shí)現(xiàn)
18、幾乎所有的功能按鍵的功能。基于“以人為本”的設(shè)計(jì)思想, 特別是考慮到安全性的要求, 目前人們也在開發(fā)基于語音識(shí)別技術(shù)的產(chǎn)品。2.4.2 行駛路線的計(jì)算汽車導(dǎo)航系統(tǒng)中至關(guān)重要的一部分是存儲(chǔ)在光盤或內(nèi)置存儲(chǔ)器 ( 如硬盤) 中的電子地圖。電子地圖中存儲(chǔ)了一定范圍內(nèi)的地理與道路和交通管制信息, 與地點(diǎn)對(duì)應(yīng)存儲(chǔ)了相關(guān)的經(jīng)緯度信息。汽車導(dǎo)航主機(jī)從 GPS 接收機(jī)得到經(jīng)過計(jì)算確定的當(dāng)前點(diǎn)經(jīng)緯度, 通過與電子地圖數(shù)據(jù)的對(duì)比, 就可以隨時(shí)確定車輛當(dāng)前所在的地點(diǎn)。一般汽車導(dǎo)航系統(tǒng)將車輛當(dāng)前位置默認(rèn)為出發(fā)點(diǎn), 在用戶輸入了目的地之后, 導(dǎo)航系統(tǒng)根據(jù)電子地圖上存儲(chǔ)的地圖信息, 就可以自動(dòng)計(jì)算出一條最合適的推薦路線。
19、在有的系統(tǒng)中, 用戶還可以指定途中希望經(jīng)過的途徑點(diǎn), 或者指定一定的路線選擇規(guī)則 ( 如不允許經(jīng)過高速公路、按照行駛路線最短的原則等)。推薦的路線將以特殊的方式顯示在屏幕上的地圖中, 同時(shí)屏幕上也時(shí)刻顯示出車輛的當(dāng)前位置, 以提供參考。如果行駛過程中車輛偏離了推薦的路線,系統(tǒng)會(huì)自動(dòng)刪除原有路線并以車輛當(dāng)前點(diǎn)為出發(fā)點(diǎn)重新計(jì)算路線, 并將修正后的路線作為新的推薦路線。2.4.3 行駛中的導(dǎo)航如果導(dǎo)航系統(tǒng)的處理結(jié)果不能以合適的方式表現(xiàn)出來,那么汽車導(dǎo)航也就只是一個(gè)有趣而無用的擺設(shè)而已。汽車自動(dòng)導(dǎo)航系統(tǒng)的輸出設(shè)備包括顯示屏幕和語音輸出設(shè)備。顯示屏幕一般 是個(gè) 10 15 cm ( 46 英寸)的 LC
20、D 液晶顯示屏( 如果需要手寫識(shí)別作為輸入, 液晶顯示屏表面還有一張透明的觸摸屏),主要顯示內(nèi)容包括:可變比例的地圖 (包括相應(yīng)的路名、公路編號(hào)、重要地點(diǎn)名稱等)、車輛的當(dāng)前位置、推薦路線等, 根據(jù)用戶的設(shè)定還可以顯示如附近的維修站、加油站、停車場(chǎng)及其他上面提到的 如機(jī)場(chǎng)、酒店、醫(yī)院等公共服務(wù)單位的名稱及地理位置等信息, 以方便用戶需要。在車輛行駛過程中, 駕駛員必須全神貫注于駕駛, 而不能經(jīng)常去查看顯示屏幕, 因此, 一個(gè)實(shí)用而人性化的車輛自動(dòng)導(dǎo)航系統(tǒng)應(yīng)該利用語音輸出,在必要的時(shí)刻向駕駛員提供提示信息。比如, 車輛按照系統(tǒng)推薦路線行駛到應(yīng)該轉(zhuǎn)彎的路口前, 語音輸出設(shè)備會(huì)提示駕駛員:300 m
21、 后請(qǐng)向左轉(zhuǎn)。這樣, 駕駛員根本不必關(guān)注屏幕的顯示, 也可以按照推薦路線正確快捷地到達(dá)目的地。第 3 章 地圖數(shù)據(jù)3.1 地圖數(shù)據(jù)的格式汽車導(dǎo)航儀的核心部分即地圖數(shù)據(jù),主要包含 GDF 數(shù)據(jù),MDB 數(shù)據(jù),RDB 數(shù)據(jù), PDB 數(shù)據(jù),LDB 數(shù)據(jù)四種格式。下面將對(duì)這幾種數(shù)據(jù)格式進(jìn)行介紹。本文主要采用的是 PDB 數(shù)據(jù)格式,PDB 數(shù)據(jù)能對(duì)數(shù)據(jù)進(jìn)行描畫并圖像化顯示數(shù)據(jù),可以顯示出地圖數(shù)據(jù)的點(diǎn),線,面,極大地方便了后續(xù)的測(cè)試工作。3.1.1 GDF 數(shù)據(jù)地理數(shù)據(jù)文件(Geographical Data File, GDF) 是一種保存地理數(shù)據(jù)的文件格式,用于描述和傳輸?shù)缆肪W(wǎng)絡(luò)和道路相關(guān)數(shù)據(jù)。原始
22、的地圖數(shù)據(jù)由地圖測(cè)繪公司通過實(shí)地勘察測(cè)繪而成,地圖的原始格式有很多種,如 GDF、KIVI 等,本文只介紹歐洲通行的交通網(wǎng)絡(luò)空間數(shù)據(jù)標(biāo)準(zhǔn) GDF?!耙亍保‵eature)是現(xiàn)實(shí)世界地理對(duì)象在數(shù)據(jù)庫中的表達(dá),GDF 數(shù)據(jù)文件中的要素分三個(gè)層次:Level2:復(fù)合要素(ComplexFeature)多個(gè)市、區(qū)組成。GDF 中用Complex 表示。 Level 1:?jiǎn)我灰兀⊿ingleFeature)像道路、建筑物、海洋等規(guī)定了屬性的要素,GDF 中用點(diǎn)(Point)、線(Line)、面(Area)表示。Level 0:形狀要素(Geometry)組成點(diǎn)、線、面的幾何元素,GDF 中用坐標(biāo)(X
23、YZ)、節(jié)點(diǎn)(Node)、邊(Edge)、面(Face)表示。圖 3.1 各層要素之間的關(guān)系3.1.2 MDB 數(shù)據(jù)由于 GDF 格式是純文本格式,不能被導(dǎo)航儀直接識(shí)別應(yīng)用,所以先將其轉(zhuǎn)換為計(jì)算機(jī)應(yīng)用的中間格式MDB(二進(jìn)制數(shù)據(jù))。原始數(shù)據(jù)只是單純的地圖數(shù)據(jù),所以要根據(jù)客戶需求對(duì)其做一些添加,壓縮和刪減,于是將原始數(shù)據(jù)轉(zhuǎn)換為導(dǎo)航儀應(yīng)用的數(shù)據(jù)格式:RDB,VDB,SDB 格式。3.1.3 RDB 數(shù)據(jù)RDB 數(shù)據(jù)存儲(chǔ)的只有點(diǎn)和線,主要應(yīng)用于算路,路徑誘導(dǎo),定位等功能。圖 3.2RDB 數(shù)據(jù)3.1.4 PDB 數(shù)據(jù)PDB 數(shù)據(jù)存儲(chǔ)的是所有 Map 可視化的需要的圖形元素點(diǎn)、線和面, 主要應(yīng)用于地圖
24、的描畫和顯示。圖 3.3 PDB 數(shù)據(jù)3.1.5 LDB 數(shù)據(jù)LDB 數(shù)據(jù)主要存儲(chǔ)的是國家,城市,POI( Point of Interest )和聲音信息等,主要應(yīng)用于檢索功能,極大地滿足在駕駛中的需求。3.2 地圖數(shù)據(jù)的主要元素地圖中的主要元素是點(diǎn),線,面。在導(dǎo)航儀上,點(diǎn)主要表示建筑,交叉點(diǎn), 交通燈,POI 等。線主要表示道路,鐵路,航道等。面主要表示海洋,陸地,建筑,綠地等。如圖 3.4 所示,為汽車導(dǎo)航儀上顯示的各種地圖數(shù)據(jù)元素。在導(dǎo)航的電子數(shù)據(jù)中,通常用點(diǎn)和線表現(xiàn)一條道路,每條道路都有各自的屬性,唯一的 ID。由于每條道路都不是直的,所以在每條道路上,有一個(gè)個(gè)的形狀點(diǎn)。在地圖描畫時(shí)
25、,通過一定的平滑處理算法連接相鄰的形狀點(diǎn),就可以將道路描畫出來。如圖 3.5 所示,為道路的形狀點(diǎn)。圖 3.4 地圖數(shù)據(jù)的主要元素圖 3.5 道路的形狀點(diǎn)3.3 地圖數(shù)據(jù)的比例尺地圖數(shù)據(jù)另外一個(gè)重要的組成部分就是比例尺,比例尺表示圖上距離和實(shí)地距離縮小的程度。 在不同比例尺下所看到的地圖數(shù)據(jù)是不同的。比例尺越大顯示的范圍越大,比例尺越小,地圖越精細(xì) ,顯示的東西越多。(注:為了說明方便,本文提到的比例尺的大小均是對(duì)于比例尺的分母來說的,分母越大,比例尺越大,例如 1:50000 的比例尺大于 1:5 的比例尺)圖 3.6 較低的比例尺圖 3.7 較高的比例尺3.4 地圖數(shù)據(jù)的分層與分塊存儲(chǔ)為了
26、滿足不同比例尺條件下,數(shù)據(jù)存儲(chǔ)與檢索的需要,需要將地圖數(shù)據(jù)進(jìn)行分層存儲(chǔ),并根據(jù)每個(gè)層數(shù)據(jù)量的不同,進(jìn)而對(duì)數(shù)據(jù)進(jìn)行分塊存儲(chǔ),高層的數(shù)據(jù)量少,劃分的塊數(shù)較少,低層的數(shù)據(jù)量較多,劃分的塊數(shù)較多。3.4.1 地圖數(shù)據(jù)的分層存儲(chǔ)地圖的分層存儲(chǔ)可以理解為分不同比例尺的存儲(chǔ)。比如說:實(shí)地 25 平方公里在 1:10 萬,1:25 萬和 1:50 萬比例尺地圖上,分別為 25 平方厘米,4 平方厘米,1平方厘米。很明顯,欲在上述各種比例尺地圖上以相同的詳細(xì)程度顯示實(shí)地 25 平方公里范圍內(nèi)的制圖物體和現(xiàn)象是不可能的。這樣一來,地圖比例尺標(biāo)志著地圖對(duì)地面的縮小程度,直接影響著地圖內(nèi)容表示的可能性,即選取、化簡(jiǎn)和
27、概括地圖內(nèi)容的詳細(xì)程度。將地圖分層(Level)存儲(chǔ),一般在最底層存儲(chǔ)最詳細(xì)的數(shù)據(jù),而上層逐漸進(jìn)行數(shù)據(jù)的抽取。目前中國地圖數(shù)據(jù)分為7層,Level0到Level6。最高層Level6 可能就只描畫整個(gè)中國的版圖,僅標(biāo)注主要的都市,而到了 Level0 層就有可能詳細(xì)到某個(gè)市鎮(zhèn)的道路。比例縮尺(scale):每個(gè) Level 的數(shù)據(jù)顯示的都是一個(gè) scale 的數(shù)據(jù),比如 Level0 的比例尺是 1/25000,實(shí)際上在每層又分了多個(gè)比例尺,這樣的比例尺稱為縮尺 scale,每層最多允許有 5 個(gè) scale.每層的數(shù)據(jù)只有一份,可以通過縮尺 scale 的控制描畫在不同的比例尺下。3.4.2
28、 地圖數(shù)據(jù)的分塊存儲(chǔ)分層存儲(chǔ)能夠?qū)⒌貓D數(shù)據(jù)劃分為很小的單元,但是即使這樣取得每層的數(shù)據(jù)也是比較困難,因此在分層存儲(chǔ)的基礎(chǔ)上對(duì)每層的數(shù)據(jù)分塊進(jìn)行存儲(chǔ),這樣為數(shù)據(jù)的取得和管理也提供了很大的便利條件,因?yàn)槊繉拥臄?shù)據(jù)量不同,因此不同層的數(shù)據(jù)塊的個(gè)數(shù)也是不相同的,低層的數(shù)據(jù)量較大,劃分的數(shù)據(jù)塊較多,高層的數(shù)據(jù)量小,劃分的數(shù)據(jù)塊也少。在下面章節(jié)提到的地圖數(shù)據(jù)的描畫就是利用地圖數(shù)據(jù)的分塊存儲(chǔ),將整個(gè)地圖劃分成大的矩形 Block,再將 Block 分成許多的小Patch。圖 3.8 地圖數(shù)據(jù)的分層與分塊存儲(chǔ)第 4 章 地圖數(shù)據(jù)沿路文字的標(biāo)記4.1 地圖標(biāo)記概述地圖中的路是由直線組成的,組成路的直線又由很多的
29、形狀點(diǎn)構(gòu)成。在路上顯示文字就是要讓用戶知道所見路的名稱,使其能更好的了解其所在位置。由于路形狀的不確定性,為文字在路上的顯示增加了很多困難。如,路過長, 文字的顯示位置如何確定;路有轉(zhuǎn)彎,并且轉(zhuǎn)彎角度很小,文字顯示位置的確定等。這都表示了為道路添加文字需要非常嚴(yán)謹(jǐn)?shù)乃惴?。圖 4.1地圖標(biāo)記4.1.1 一些術(shù)語的定義標(biāo)記提示( Mark Hints,后簡(jiǎn)稱 MH):被用來在地圖上適當(dāng)?shù)牡胤綐?biāo)記名字,是 Map Viewer 的一個(gè)功能, 為了更快速的為一個(gè)適合的地方命名。線狀特征( Line Feature,后簡(jiǎn)稱 LF):由一連串的點(diǎn)及連接點(diǎn)的線組成,這些點(diǎn)也可以指形狀點(diǎn)。如:路,河,鐵軌,國
30、家邊界等。區(qū)域特征( Area Feature,后簡(jiǎn)稱 AF):是一個(gè)面,由一些由直線連接起來的點(diǎn)組成,并且第一個(gè)點(diǎn)和最后一個(gè)點(diǎn)重合。例如,建筑物,森林,海洋等。最高可見層( HighestVisibilityLevel):為了給選擇最適合的 MH提供一個(gè)標(biāo)準(zhǔn),附加的輸入是必要的。 HVL 定義了詳細(xì)的 MH 已包含的最小能見度圖層。使用了這個(gè)信息, Map Viewer 可以在放大縮小時(shí)阻止文字跳躍。4.1.2 標(biāo)記提示(MH)分析1一個(gè) MH 必須指派給每個(gè) LF,即每條路上都必須顯示其名字。2對(duì)于每個(gè) LF,所有的形狀點(diǎn)必須被當(dāng)作輸入數(shù)據(jù)。3一個(gè) MH 包含兩個(gè)信息:大量的形狀點(diǎn)(最少三
31、個(gè)),最高可見層。4如果一個(gè) LF 僅包含兩個(gè)形狀點(diǎn),則在兩個(gè)形狀點(diǎn)的中間增加一個(gè)新的形狀點(diǎn)。5如果三個(gè)形狀點(diǎn)形成的夾角小于規(guī)定的最小角度,則不在這個(gè)部分上添加MH,從中間點(diǎn)切斷,再重新判斷前后是否滿足條件,創(chuàng)建 MH。6如果一個(gè) MH 的形狀點(diǎn)過多,則在其上限點(diǎn)處切斷,建立 MH,接下來建立新的 MH。7通過路的長度來計(jì)算 MH 的最高顯示層,在不同比例尺下,道路的長度等問題會(huì)影響到 MH 的顯示。8在邊界處的相同名字的路分開計(jì)算考慮。圖 4.2 標(biāo)記提示(MH)的組成4.2 功能實(shí)現(xiàn)4.2.1 概述主要研究的是將二進(jìn)制數(shù)據(jù) D 轉(zhuǎn)換為在 Mapdatashow 上顯示的數(shù)據(jù) G 的過程中為
32、線屬性添加 Mark Hints 的過程。顯示數(shù)據(jù)中有三種元素類型:點(diǎn)、線、面。點(diǎn)主要代表的是建筑物、POI 等,線主要代表的是道路、航道、橋等,面主要代表的是湖、公園、廣場(chǎng)等。顯示數(shù)據(jù)會(huì)被劃分為幾層,在不同的層中,不同的比例尺下,顯示的點(diǎn)、線、面的大小和數(shù)量會(huì)有所不同。因?yàn)殡S著比例尺的增大, 某些元素會(huì)縮小到?jīng)]有必要顯示出來。Mark Hints 是顯示地圖時(shí)用來建議地圖顯示軟件應(yīng)該在何處顯示該元素的名稱。導(dǎo)航儀的內(nèi)存有限,如果沒有 Mark Hints 而單靠導(dǎo)航儀中的地圖顯示軟件直接計(jì)算后顯示名稱,所耗費(fèi)的時(shí)間很長,并且占用大量?jī)?nèi)存,效率會(huì)很低。Mark Hints 是先進(jìn)行篩選過的少量
33、的數(shù)據(jù),在地圖顯示軟件需要顯示某一元素的名稱時(shí),只需要在少量的 hints 中選擇合適的顯示即可。線屬性主要應(yīng)用的是 CurvedMarkHints,面屬性主要應(yīng)用的是Horizontal Mark Hints。本文只研究針對(duì)線屬性的 CMH。圖 4.3 線上 文字的顯示4.2.2 函數(shù)功能簡(jiǎn)介該功能主要包含兩個(gè)函數(shù),主函數(shù)調(diào)用另外一個(gè)函數(shù)的功能,即為添加文字標(biāo)記的函數(shù)調(diào)用劃分?jǐn)?shù)據(jù)段得函數(shù)。gdblib:linienzug_c:set_CurvedMarkHints_LF()的主要功能是對(duì)路的形狀點(diǎn)進(jìn)行切割分類,將每一段符合條件的 MH 存儲(chǔ)。并計(jì)算其顯示的最大比例。gdblib:linien
34、zug_c:calc_MH()遍歷所有的線的名字,并根據(jù)名字的屬性分不同情況進(jìn)行計(jì)算。將名字與上面函數(shù)算出的 MH 進(jìn)行配對(duì)存儲(chǔ),并在相應(yīng)的坐標(biāo)點(diǎn)上添加名字。選取名字和 LH 的最小顯示比例存儲(chǔ)。4.2.3 函數(shù)流程圖 4.4 制作沿路文字標(biāo)記流程圖圖 4.4 為制作沿路文字標(biāo)記流程圖:calc_MH 函數(shù)功能:為線元素坐標(biāo)命名,包括道路,河流,航道,海峽。主要調(diào)用的函數(shù):1)addNaming(intcat,inticon,intprio,int subPrio,constchar*name,intnameNum,intscale,intminscale, element_c *ele, s
35、td:vector& HintCoordlist, int radius) 2)set_CurvedMarkHints_LF(std:vector&Infomationlis t_CMH, log_c& log)函數(shù)具體流程介紹:首先從二進(jìn)制數(shù)據(jù)文件中取得所有的直線的名字,對(duì)所有的名字進(jìn)行遍歷,判斷當(dāng)前的名字的類型,如果是河流或海峽的名字,讀取名字的最大顯示比例,再判斷此比例是否大于當(dāng)前層的比例,若大于,則繼續(xù),小于則跳出繼續(xù)遍歷。接下來要判斷當(dāng)前軟件的版本,若為較低版本則不用做沿路文字標(biāo)記,只設(shè)置顯示比例等屬性。如果為高版本則調(diào)用set_CurvedMarkHints_LF函數(shù),將得到的標(biāo)準(zhǔn)
36、點(diǎn)依次加到當(dāng)前名字上。如果是道路的名字,則調(diào)用 set_CurvedMarkHints_LF函數(shù),將得到的標(biāo)準(zhǔn)點(diǎn)依次加到當(dāng)前的名字上。如果是標(biāo)號(hào),則只加屬性信息。為道路和航道添加文字標(biāo)記與為河流或海峽添加文字標(biāo)記類似,只是道路和航道多了一項(xiàng)添加道路標(biāo)記號(hào)的功能,再就是添加元素的屬性不同,這里不做詳細(xì)的研究。圖 4.5 形狀點(diǎn)分割流程圖圖 4.5 為形狀點(diǎn)分割的流程圖:set_CurvedMarkHints_LF 函數(shù)功能:曲線分為多個(gè) LH,每個(gè) LH 有多于兩個(gè)的形狀點(diǎn)。主要調(diào)用的函數(shù):1)gdbl_koord_distance( int coord_system, long x1, lon
37、g y1, long x2, long y2 )2)winkel_zwischen_drei_punkten(constgdblib:koord_c&p1,const gdblib:koord_c& p2,const gdblib:koord_c& p3 )函數(shù)具體流程介紹:首先從二進(jìn)制數(shù)據(jù)文件里讀取限制信息數(shù)據(jù),如 MH 的最小距離、三點(diǎn)之間最小夾角、形狀點(diǎn)最小距離等。讀入第一個(gè)點(diǎn)并存儲(chǔ),遍歷各個(gè)形狀點(diǎn),判斷當(dāng)前點(diǎn)與上一點(diǎn)之間的距離,如果小于限制距離,則此點(diǎn)不再做判斷,繼續(xù)找下一個(gè)點(diǎn)。如果大于限制距離,則判斷當(dāng)前形狀點(diǎn)的個(gè)數(shù)是否大于或等于兩個(gè),如果沒到兩個(gè),則將點(diǎn)存入 point 里。若大于
38、兩個(gè),計(jì)算當(dāng)前點(diǎn)與前兩個(gè)點(diǎn)間所形成的夾角 roadCurvatureRad,再判斷點(diǎn)數(shù)是否超過了 255 個(gè)或者 roadCurvatureRad 小于所要求的最小角度。如果不滿足條件,則將當(dāng)前點(diǎn)存儲(chǔ) points 里,繼續(xù)找下一個(gè)點(diǎn)。若果滿足條件,則返回當(dāng)前點(diǎn)的上一個(gè)點(diǎn),判斷當(dāng)前 points 里的點(diǎn)之間的距離,若小于最小距離,則清空 points,存入當(dāng)前點(diǎn)。若大于最小距離,再判斷其點(diǎn)數(shù)是否超過了兩個(gè),若沒超過,則在兩個(gè)點(diǎn)的中間增加一個(gè)點(diǎn)。若超過兩個(gè)點(diǎn),則將 points 中的點(diǎn)轉(zhuǎn)存到Infomationlist_CLH 中,并清空 points 表。如此依次往下進(jìn)行,直到檢查完所有的點(diǎn)并
39、按順序存好為止。以上兩個(gè)流程圖主要功能是將直線劃分成 MH 并將其中的點(diǎn)存入相對(duì)應(yīng)的名字中。主函數(shù)遍歷所有直線的名字,調(diào)用的函數(shù)在該名字下遍歷該直線的所有的點(diǎn),將滿足條件的點(diǎn)存入相應(yīng)的數(shù)組中,最后加到名字里。部分代碼如下:Void set_CurvedLabellingHints_LF(std:vector)std:vector points;points.push_back(m_koord0);/add first point to point array int sizecoor = m_koord.size()for (int i = 1; i sizecoor; i+) double dist = gdbl_koord_distance( ) if (distance=2)doubleroadangle=winkel(pointspointsizesize-2,pointspointsize- 1,current point) ;if(point size=255|roadangledrawLHPoint(LHsel,0x03000000,curNaming.mHintCoordlistcn
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 基層醫(yī)療衛(wèi)生改革方案研究
- Java程序設(shè)計(jì)技術(shù)規(guī)范及要點(diǎn)
- 定金確認(rèn)話術(shù)
- 2026年甘肅省定西市通渭縣城鎮(zhèn)公益性崗位招聘80人參考考試題庫及答案解析
- 2026年四川大學(xué)錦江學(xué)院?jiǎn)握新殬I(yè)技能考試備考題庫含詳細(xì)答案解析
- 外貿(mào)基本知識(shí)
- 2026年山東藝術(shù)設(shè)計(jì)職業(yè)學(xué)院?jiǎn)握新殬I(yè)技能考試模擬試題含詳細(xì)答案解析
- 2026年江蘇安全技術(shù)職業(yè)學(xué)院?jiǎn)握芯C合素質(zhì)考試參考題庫含詳細(xì)答案解析
- 2026年鄭州信息工程職業(yè)學(xué)院高職單招職業(yè)適應(yīng)性測(cè)試備考題庫及答案詳細(xì)解析
- 2026年西安醫(yī)學(xué)高等??茖W(xué)校單招綜合素質(zhì)筆試備考試題含詳細(xì)答案解析
- 2026年及未來5年市場(chǎng)數(shù)據(jù)中國民間美術(shù)文化遺產(chǎn)行業(yè)市場(chǎng)競(jìng)爭(zhēng)格局及發(fā)展趨勢(shì)預(yù)測(cè)報(bào)告
- 2026西藏自治區(qū)教育考試院招聘非編工作人員11人備考考試試題及答案解析
- 江西省南昌市2025-2026學(xué)年上學(xué)期期末八年級(jí)數(shù)學(xué)試卷(含答案)
- 2026內(nèi)蒙古鄂爾多斯市伊金霍洛旗九泰熱力有限責(zé)任公司招聘熱電分公司專業(yè)技術(shù)人員16人筆試模擬試題及答案解析
- 2025至2030中國現(xiàn)代物流業(yè)智慧化轉(zhuǎn)型與多式聯(lián)運(yùn)體系構(gòu)建研究報(bào)告
- 馬年猜猜樂(猜地名)打印版
- 2026江蘇省人民醫(yī)院消化內(nèi)科工勤人員招聘2人考試備考題庫及答案解析
- 《大學(xué)生創(chuàng)新創(chuàng)業(yè)指導(dǎo)(慕課版第3版)》完整全套教學(xué)課件-1
- 2025年浙江省嘉興市嘉善縣保安員考試真題附答案解析
- AFP急性弛緩性麻痹培訓(xùn)課件
- GDPR框架下跨境醫(yī)療數(shù)據(jù)治理策略
評(píng)論
0/150
提交評(píng)論