畢業(yè)設計--在線電子地圖服務技術與訪問平臺_第1頁
已閱讀1頁,還剩25頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

1、<p>  主要內(nèi)容:本文從開篇分析了在線電子地圖的現(xiàn)狀,闡述了現(xiàn)今互聯(lián)網(wǎng)上的各種電子地圖與傳統(tǒng)的紙質(zhì)地圖的區(qū)別;進而又簡述了在線電子地圖服務的技術,地圖的靜態(tài)瓦片數(shù)據(jù)獲取的原理以及普通網(wǎng)頁加載地圖的方法,并且對實現(xiàn)該技術的編程語言進行了簡略的介紹,最后對《天地空一體化對地資源觀測應急調(diào)度系統(tǒng)》的開發(fā)和應用做了詳盡描述,是讀者能對在線地圖的服務技術有個直觀了解。</p><p>  基本要求:結(jié)合實際工

2、程自主書寫,字數(shù)1.2W左右,畢業(yè)設計由以下部分組成:A.封面;B.版權(quán)使用授權(quán)書;C.原創(chuàng)性聲明;D.畢業(yè)設計(論文)任務書;E.目錄;F.中文摘要;G.英文摘要;H.正文;I.致謝;J.參考文獻;K.附錄(若圖紙中有大于A3幅面時,所有圖紙應單獨裝訂成冊)。</p><p><b>  主要參考文獻:</b></p><p>  [1] 李哲,姜占華,秦俊等.在線

3、電子地圖服務系統(tǒng)的研究與實現(xiàn)[C].計算機工程與設計,2011,32(7):2344-2347</p><p>  [2] 高峰,談俊忠.JavaScript在基于SVG的網(wǎng)絡地圖中的應用[J].江西師范大學學報,2004,28(3):262-265</p><p>  完 成 期 限:</p><p>  指導教師簽名: &

4、lt;/p><p>  專業(yè)負責人簽名: </p><p>  2013 年 5 月 24 日</p><p><b>  目 錄</b></p><p><b>  摘 要I</b></p><p><

5、b>  1 緒論1</b></p><p>  1.1 互聯(lián)網(wǎng)電子地圖服務現(xiàn)狀1</p><p>  1.2 在線地圖與傳統(tǒng)地圖的區(qū)別和優(yōu)勢2</p><p>  1.2.1 比例尺的概念不相同2</p><p>  1.2.2 讀圖方式的不同3</p><p>  1.2.3

6、負載量的不同3</p><p>  1.3 在線電子地圖的種類4</p><p>  1.3.1 二維地圖4</p><p>  1.3.2 影像地圖4</p><p>  1.3.3 偽三維地圖5</p><p>  1.3.4 三維影像地圖5</p><p>  2

7、在線地圖服務技術5</p><p>  2.1 在線電子地圖服務資源的注冊、存儲與管理方法5</p><p>  2.2 在線電子地圖服務特定區(qū)域地圖元數(shù)據(jù)的獲取方法6</p><p>  2.2.1 地圖API技術6</p><p>  2.2.2 基于API的在線地圖服務框架8</p><p> 

8、 2.3 電子地圖的加載方法8</p><p>  3 《天地空一體化對地觀測資源應急調(diào)度系統(tǒng)》平臺開發(fā)15</p><p>  3.1 系統(tǒng)簡介15</p><p>  3.2 系統(tǒng)界面及其功能17</p><p><b>  4 結(jié)束語20</b></p><p><b&g

9、t;  致 謝21</b></p><p><b>  參考文獻22</b></p><p>  在線電子地圖服務技術與訪問平臺</p><p><b>  摘 要</b></p><p>  在線地圖在現(xiàn)代社會的國防軍事、基礎建設、交通運輸、災害預防管理等等行業(yè)都發(fā)揮著越來

10、越重要的作用。而隨著廣大用戶要求的提高,人們對在線地圖期望也來越高[6]。現(xiàn)今,互聯(lián)網(wǎng)上已經(jīng)有了大量的提供地圖服務的網(wǎng)站,這些地圖網(wǎng)站的開發(fā)中涉及了各種各樣的在線地圖服務技術,為了讓這些技術能更加容易的讓人理解,作者在一個涉及地圖的訪問平臺設計過程中對其加以解釋。本文從在線電子地圖說起,概略的講述了電子地圖與傳統(tǒng)地圖的區(qū)別和優(yōu)勢,然后簡要討論了在線地圖的存儲管理和獲取的方法,并介紹了地圖API的概念,最后主要對在線地圖的服務技術做了詳細

11、描述,并從具體工程——《空天地一體化對地觀測資源應急調(diào)度系統(tǒng)》的設計過程出發(fā),從實際的角度闡述了在線電子地圖在該平臺的設計中的使用。</p><p>  關鍵字 在線地圖;API;JSP</p><p>  ONLINE ELECTRONIC MAP </p><p>  SERVICE TECHNOLOGY AND </p><p>&l

12、t;b>  PLATFORM</b></p><p><b>  ABSTRACT</b></p><p>  As we all know , online maps are increasing important in national defense , infrastructure , transportation , disaster p

13、revention , etc. With the demands of people enlarged , majority of users have higher expectations on the online maps. Today, the Internet has had a large number of websites providing map services, and when develop these

14、maps sites, developers would involved a variety of online map services technology. In order to make these technologies can be more easily understandable by ordi</p><p>  KEY WORD API, Online map, JSP</p&

15、gt;<p><b>  1 緒論</b></p><p>  現(xiàn)今,地理信息系統(tǒng)(GIS)在各種各樣的領域都有非常廣泛的應用,比如,軍事、農(nóng)林、國防、交通、災害防護等等[6]。然而,以往的的系統(tǒng)知識單機操作,各類不同的資源不能有效的整合在一起,經(jīng)常不能滿足人們的各種需求,所以,需要一個在線的系統(tǒng)能夠進行信息交流,而且可以進行各種資源的交換,在這種需求的催生下,產(chǎn)生了在線電子地

16、圖。不過,怎么樣才能夠?qū)崿F(xiàn)在線電子地圖的傳輸,是建立在線電子地圖的核心問題之一。目前為止,國內(nèi)和國外有了很多關于互聯(lián)網(wǎng)在線地圖的研究成果,例如,國際學者Buttenfield在2002年的時候提出了一種只傳輸單層矢量數(shù)據(jù)的方法,但是由于該方法只能處理簡單的曲線,所以該方法局限性很大。</p><p>  1.1 互聯(lián)網(wǎng)電子地圖服務現(xiàn)狀</p><p>  以前,傳統(tǒng)的地理信息技術具有很強的

17、專業(yè)性,在其發(fā)展的初期階段,面向用戶群體非常狹窄,只有專業(yè)人士才能熟練操作使用該系統(tǒng),因為它相對于服務大眾來說,更加著重于地理信息數(shù)據(jù)管理應用平臺的搭建。而如今,隨著計算機技術、互聯(lián)網(wǎng)技術的快速迅猛發(fā)展,地理信息開發(fā)技術也日趨成熟,其面向公眾的應用、服務和互動功能不斷擴充,功能越來越完善,越來越多的人開始集中更多的注意力在電子地圖的服務上,并研究怎么使用它。</p><p>  隨著計算機技術、互聯(lián)網(wǎng)技術的迅速發(fā)

18、展,地理信息系統(tǒng)的應用領域,也逐漸從嚴格的內(nèi)部應用、專業(yè)的行業(yè)應用,擴展到了無限制的網(wǎng)絡應用。而因特網(wǎng)上的電子地圖,更如雨后春筍般不斷涌現(xiàn),呈現(xiàn)出一種蓬勃發(fā)展的壯觀趨勢。據(jù)不完全統(tǒng)計,在谷歌中輸入電子電圖搜索,約有15700000項查詢結(jié)果,在雅虎上輸入搜索,約有16200674項,在百度上搜索,約有27500000項結(jié)果,在搜狗上有24186277項,有道上有11300000項等等[1]。而又根據(jù)我國2007年年底的統(tǒng)計數(shù)據(jù),國家測繪

19、局通過采用網(wǎng)上搜索和重點抽查的方式檢查出登載地圖的互聯(lián)網(wǎng)站就有8962個,互聯(lián)網(wǎng)地理信息服務網(wǎng)站有595個,這個數(shù)字足以顯示當前電子地圖市場發(fā)展的壯大[1],這都說明電子地圖的服務不斷在擴大。</p><p>  現(xiàn)在,電子地圖的服務已經(jīng)深入人心,并且電子地圖和傳統(tǒng)的地圖也有了很大的區(qū)別,除了都包括基本的地圖要素之外,電子地圖還涵蓋了許多的附加信息。如現(xiàn)在比較流行適用的車載導航,公交線路地圖,用網(wǎng)絡地圖進行商業(yè)選

20、址,還有正在建設和開發(fā)的數(shù)字化城市項目,三維城市,等等,這一些基于互聯(lián)網(wǎng)地圖的公共服務,從不同的角度說明了電子地圖服務的現(xiàn)狀。不過,從國內(nèi)的情況來看,關于電子地圖的開發(fā)和應用還沒有處于成熟階段,還有很大的發(fā)展空間,例如我們?nèi)匀恍枰虾芏嗟牡貓D資源進行一些自然災害預防系統(tǒng)的開發(fā),便于調(diào)動各種資源,預防自然災害等。</p><p>  1.2 在線地圖與傳統(tǒng)地圖的區(qū)別和優(yōu)勢</p><p>

21、  在線地圖和傳統(tǒng)的地圖有很多的不同,首先,在線地圖是一種新型的數(shù)字地圖,它能夠在互聯(lián)網(wǎng)上傳播,并且包括的內(nèi)容和傳統(tǒng)的地圖相比,也有較大的區(qū)別,傳統(tǒng)的紙質(zhì)地圖一般是把地物地貌用點線面的形式代替,并表示各個地物之間的相對關系,包括的內(nèi)容比較少,而電子地圖的形式比傳統(tǒng)地圖的豐富的多。以往的制圖人員常常用傳統(tǒng)紙質(zhì)地圖的思維方式來構(gòu)思在線地圖的設計,而結(jié)果往往是不盡如人意,經(jīng)常得不到廣大用戶的認可。所以,另外一些專業(yè)人士在總結(jié)多年來互聯(lián)網(wǎng)地圖運

22、作經(jīng)驗教訓之后,認真分析了現(xiàn)今的電子地圖和傳統(tǒng)紙質(zhì)地圖的區(qū)別,轉(zhuǎn)變了傳統(tǒng)觀念,給后繼的開發(fā)人員從認識上帶來了創(chuàng)新。在線地圖和傳統(tǒng)地圖的具體不同,總結(jié)如下:</p><p>  1.2.1 比例尺的概念不相同</p><p>  大家都知道,現(xiàn)在的電子地圖一般都可以隨意縮放,不像傳統(tǒng)的紙質(zhì)地圖一樣,有個固定的比例尺,并且,點與點之間的距離并不需要通過比例尺來換算,只需要通過設計好的一些內(nèi)部計

23、算距離的程序就可以計算出來。而對于傳統(tǒng)的紙質(zhì)地圖而言,比例尺是非常的重要的,如果想要得到地物之間的距離,就必須得先得到比例尺,然后測量圖上的距離,通過換算,才能得到實地距離,但是由于測量和比例尺的精度影響,這樣得到的距離并不是十分的準確。</p><p>  除此之外,接邊問題也是倆者之間一個較大的不同。傳統(tǒng)地圖要進行接邊的話,地圖的比例尺是必須相同的,因為,實地上距離相同的倆點,在倆比例尺不同的地圖上的圖上距離

24、不同,這樣就會導致接邊后圖上各處的精度不均勻,違反了地圖的規(guī)定,所以不同比例尺的傳統(tǒng)地圖是不能接邊的。而對于在線地圖來說,由于其可以隨意放縮,所以,比例不是固定的,進而接邊問題也能夠很順利的解決?;ヂ?lián)網(wǎng)上的在線地圖一般都有個縮放的工具條,我們能根據(jù)自己的需要,對地圖進行放大或者縮小,具有實時性。并且可以通過設定,在不同的屏幕比例顯示不同的地物要素,還可以設置不同的圖層,以進行顯示效果的切換。在電子地圖接邊時,是各圖層的接邊,更加的簡便。

25、</p><p>  1.2.2 讀圖方式的不同</p><p>  傳統(tǒng)的紙質(zhì)地圖讀圖方式很簡單,一目了然,只要展開地圖,確定基本方向,然后根據(jù)地物地貌之間的相對關系和圖上的標注、注釋確定地物的大小、位置、相對于其他地物的位置就可以。</p><p>  而在線地圖是在人機交互的電腦或者其他機器設備上讀圖的,讀圖方式也比較便利,人們可以根據(jù)自己的需要,放大、縮小,

26、找到特定的目標,并且區(qū)別于傳統(tǒng)紙質(zhì)地圖的是,它可以切換視圖,比如從普通二維地圖模式切換到衛(wèi)星視圖或者三維視圖等,更有利于人們了解待定區(qū)域的各種信息,界面也更加人性化。</p><p>  不過,在線電子地圖也有缺憾,就是沒有紙質(zhì)地圖的那樣,能把握全局,并且,為了能讓用戶能很直接的找到感興趣的地點時,設計人員需要充分考慮,把用戶關心的內(nèi)容、事物的強化最為一個關鍵點,同時能有效的關聯(lián),才能使得用戶快速的搜索到結(jié)果,達

27、到預期的使用目的。</p><p>  1.2.3 負載量的不同</p><p>  編制紙質(zhì)地圖,既要充分考慮,避免編制出來的地圖的內(nèi)容太少,圖面太過于空乏,信息量不夠,又要考慮到,如果內(nèi)容太多,就會顯得圖面擁擠。</p><p>  而互聯(lián)網(wǎng)上面的在線地圖就不存在此類的問題,不受其限制,因為在線地圖的存儲方式與傳統(tǒng)地圖的較大的不同,在線地圖可以存儲海量數(shù)據(jù),既可

28、以表示和傳統(tǒng)地圖一樣的信息,也可以表示一些傳統(tǒng)地圖上沒法表示出來的東西。</p><p>  在線地圖可以存儲的數(shù)據(jù)量非常之大,通過內(nèi)部程序的不同的設定,可以顯示不同的地圖級別,可以同時將一棟寫字樓內(nèi)所有的幾百家單位或者公司都全部表示出來,這樣的事情,在傳統(tǒng)的紙質(zhì)地圖上是完全不可想象,做不到的。</p><p>  1.3 在線電子地圖的種類</p><p>  近

29、年來,互聯(lián)網(wǎng)技術迅猛發(fā)展,互聯(lián)網(wǎng)上面的在線地圖也變得種類繁多起來,按表現(xiàn)形式歸納起來主要為一下幾種:二維地圖、影像地圖、偽三維地圖、三維影像地圖和街景地圖等。當然,這一些地圖都不僅僅是提供某一種或者一個類型的電子地圖,為了滿足客戶的需要,提供人們多種類型的復合地圖,更加的簡單、方便快捷,趨于人性化發(fā)展。人們可以根據(jù)自己不同的特定要求,去選擇合適的方式來使用地圖?,F(xiàn)在,互聯(lián)網(wǎng)上有各種各樣的地圖網(wǎng)站可以供用戶選擇,比較知名的有百度地圖、谷歌

30、地圖、圖吧、E都市、丁丁地圖等等。不同的地圖網(wǎng)站提供的地圖并不完全一樣,如“E都市”地圖網(wǎng)站,就提供了影像地圖、二維地圖、三維地圖這樣的三種方式,供用戶察看某一個感興趣地點的地形地貌、周圍環(huán)境,以及相應的地表建筑等信息。下面,將各種不同形式的地圖具體介紹如下:</p><p>  1.3.1 二維地圖</p><p>  二維電子地圖一般是用測量儀器采集地形地貌和上面建筑物的二維坐標,或者

31、將一些已經(jīng)做好的紙質(zhì)地圖矢量化得到的。</p><p>  二維的電子地圖一般都是以矢量要素為主,為用戶提供查詢地點的平面坐標,但是有些為了滿足用戶更大的需求,還會在二維地圖后面掉價一些背景圖像,使得視覺效果更加,更加偏人性化。</p><p>  1.3.2 影像地圖</p><p>  和二維地圖的生成方式不同,影像地圖主要是以各種衛(wèi)星、航空飛機拍攝的影像作為制

32、定地圖的數(shù)據(jù)源,由于這樣采集的數(shù)據(jù)一般是柵格數(shù)據(jù),為了使得地圖的適用范圍更加的廣泛,通常還會疊加一些矢量數(shù)據(jù)。</p><p>  和其他的地圖相比較,影像地圖具有一些很明顯的優(yōu)勢,就是這種地圖的制作非常的簡單快捷,成本也比較低廉,更值得一提的是,這樣的地圖更新的的速度非常的快,具有很強的現(xiàn)勢性,也由于這些優(yōu)點,吸引了很多人,給一些地圖制作商帶來了很大的一批客戶。</p><p>  1.

33、3.3 偽三維地圖</p><p>  偽三維地圖的實質(zhì)還是二維地圖,它只是利用人們的視覺效果,來制造一個三維的假象。這樣的地圖的具體制作就是在基本的二維地圖的基礎上,疊加一部分制作精美的建筑物效果圖,雖然是分開圖層添加,但是肉眼卻很難分辨。</p><p>  1.3.4 三維影像地圖</p><p>  和上一節(jié)提到的偽三維地圖不同,這節(jié)中的三維地圖是真正的三維

34、圖。它是將矢量數(shù)據(jù)、影像柵格數(shù)據(jù)、高程數(shù)據(jù)、地物紋理數(shù)據(jù)和三維模型數(shù)據(jù)等信息整合疊加起來,在經(jīng)過一些特定的處理,構(gòu)建成一個模擬現(xiàn)實世界的虛擬數(shù)字區(qū)域模型。</p><p>  現(xiàn)今,有一些地圖公司開發(fā)了一些這樣的三維地圖,比較有代表性的就是谷歌的地圖軟件——谷歌地球。</p><p>  2 在線地圖服務技術</p><p>  在線電子地圖服務是現(xiàn)今很多地圖服務公

35、司非常關注的一個領域,包括地圖的加載,以及在線地圖的存儲、注冊和管理,接下來,我們對此進行一些說明。</p><p>  2.1 在線電子地圖服務資源的注冊、存儲與管理方法</p><p>  從過去的十幾年到現(xiàn)在,地圖數(shù)據(jù)或者GIS數(shù)據(jù)的存儲形式一次經(jīng)歷了以下幾個階段的發(fā)展:第一階段,用文件存儲并且管理所有數(shù)據(jù);第二個階段:用文件存儲空間坐標數(shù)據(jù),用數(shù)據(jù)庫存儲屬性數(shù)據(jù);第三個階段:用關系

36、型數(shù)據(jù)庫存儲并且管理空間坐標數(shù)據(jù)庫和屬性數(shù)據(jù),但是空間數(shù)據(jù)和屬性數(shù)據(jù)在在結(jié)構(gòu)上分為多個表存儲;第四個階段:基于對象關系模型在數(shù)據(jù)庫中按面向?qū)ο蟮姆绞酱鎯臻g坐標數(shù)據(jù)和屬性數(shù)據(jù),顯然,最后一種方式的邏輯性和結(jié)構(gòu)性更強[2]。</p><p>  地理信息數(shù)據(jù)的存儲結(jié)構(gòu)分為地理數(shù)據(jù)存儲結(jié)構(gòu)、空間數(shù)據(jù)存儲方式和制圖輔助數(shù)據(jù)存儲結(jié)構(gòu)[5]。其中,地理數(shù)據(jù)一般來源于地圖或者其他測繪成果的數(shù)字化,不同的比例尺和不同的區(qū)域的數(shù)

37、據(jù)存儲的地方不相同,而同一圖幅中,根據(jù)幾何屬性的不同和地物類型的不同進行分層存儲。</p><p>  而空間數(shù)據(jù)的存儲方式是按照面向?qū)ο蟮乃枷耄織l記錄存儲的一個地物,都會包括它的一般屬性和空間屬性,即空間坐標[5]??臻g數(shù)據(jù)的存儲方式一般有倆種,第一種方法,就是借助軟件Oracle提供的支持空間的數(shù)據(jù)類型的插件Oracle Spatial中的數(shù)據(jù)結(jié)構(gòu)類型。而第二種就是利用Oracle軟件所提供的二進制的大對象

38、類型BLOB,它可以把開發(fā)者所制定的規(guī)則按照順序一個一個的存入一個類型為BLOB的字段中,當需要讀取這些數(shù)據(jù)的時候,可以再根據(jù)這些規(guī)則取出。</p><p>  制圖輔助數(shù)據(jù)包括符號數(shù)據(jù)和字體數(shù)據(jù),分別表示符號和注記倆部分[5]。其中符號部分包括符號庫和符號配置規(guī)則,而注記部分則包括字體庫和字體配置規(guī)則。</p><p>  總而言之,地圖數(shù)據(jù)一般都包括四個部分,地理數(shù)據(jù)、地物與符號對應的

39、信息,符號圖形數(shù)據(jù)和注記數(shù)據(jù)。其中,地理數(shù)據(jù)是地圖數(shù)據(jù)最基礎的部分。</p><p>  2.2 在線電子地圖服務特定區(qū)域地圖元數(shù)據(jù)的獲取方法</p><p>  目前,互聯(lián)網(wǎng)上已經(jīng)存在了很多的地圖網(wǎng)站,這些在線地圖網(wǎng)站的開發(fā)過程中都會涉及到一個最基本也是最重要的問題——如何獲取地圖的數(shù)據(jù)源。根據(jù)目前國內(nèi)外一些情況,一般只有一些國家機構(gòu)或者大公司才設有專門的機構(gòu)采集地理信息數(shù)據(jù),制作地圖,

40、但是其中一些主流的地圖網(wǎng)站都會提供開放式的地圖API,如谷歌地圖、百度地圖等等,這些開放的API為開發(fā)人員獲取地圖元數(shù)據(jù)提供了很大的便利,下面,簡單介紹一下API技術及其在獲取地圖元數(shù)據(jù)中的一些基本應用。</p><p>  2.2.1 地圖API技術</p><p>  近幾年來,基于互聯(lián)網(wǎng)的在線地圖服務越來越得到人們的關注,通過網(wǎng)絡,人們可以輕松、快捷、方便的使用地圖進行位置或者線路查

41、詢,而API左肋一個通用的網(wǎng)絡編程接口,在各種地圖類軟件或者網(wǎng)站中的開發(fā)得到了非常廣泛的使用。</p><p>  地圖 API 是一種通過 JavaScript(JSP)將地圖嵌入到網(wǎng)頁的 API。該API提供了大量實用工具用以處理地圖,并通過各種服務向地圖添加內(nèi)容,從而使開發(fā)者能夠在網(wǎng)站上創(chuàng)建功能全面的地圖應用程序[3]。</p><p>  地圖API為開發(fā)者提供了四種形式的接口,即

42、:iframe、JavaScript、http+xml、Web Service。</p><p>  這些接口可以滿足各種B/S或者C/S體系框架的基于網(wǎng)絡地圖服務的應用。據(jù)統(tǒng)計,調(diào)用地圖API的網(wǎng)站已經(jīng)超過百萬,當前主流的地圖API服務有Google Map API,Virtual Earth API,51 map API,Map-bar API,等[8]。</p><p>  每一個地

43、圖API服務商提供的地圖API都有大同小異的差別,但是總的看來地圖API提供的通用功能如下圖2-1所示:</p><p>  圖2-1 地圖API的基本功能</p><p>  由上圖可知,地圖API提供了網(wǎng)絡地圖所應該具備的全部服務功能,所以各類用戶可以直接訂制應用中的地理底圖、各種專題要素和查詢要素,這已經(jīng)成為了一種新型的服務共享和數(shù)據(jù)共享的方式。</p><p&g

44、t;  當前使用比較廣泛的Web3.0技術具有很強的優(yōu)勢,這種技術使用地圖API通常以“靜態(tài)瓦片地圖”、網(wǎng)頁緩存和AJAX技術為基礎,大大提高地圖訪問效率和顯示的效果,給WebGIS帶來了革命性的變化[5]?,F(xiàn)今最常用的地圖API的工作原理圖2-3所示:</p><p>  圖2-2 地圖API工作原理圖</p><p>  從上面的圖三可以看出,地圖數(shù)據(jù)的提供、處理和發(fā)布等一些列的服務都

45、是有對應的地圖API所提供的應用服務器和地圖服務器完成地。</p><p>  地圖網(wǎng)頁的各種請求的方式都以網(wǎng)頁文件的格式表達,即xml格式,這樣就可以讓第三方的網(wǎng)站通過編程調(diào)用數(shù)據(jù)庫中的信息,并且在網(wǎng)頁中嵌入一些地圖和網(wǎng)絡服務,而開發(fā)人員只需要使用JSP語言既可以輕松的將地圖API提供的網(wǎng)絡地圖嵌入自己的網(wǎng)頁中。</p><p>  2.2.2 基于API的在線地圖服務框架</p&

46、gt;<p>  地圖API是按照3層B/S的結(jié)構(gòu)搭建起來的網(wǎng)絡地圖服務平臺。而基于API的在線地圖服務框架可以直接使用谷歌或者百度等地圖API服務提供商所供給的三層架構(gòu)體系,然后根據(jù)自己所設計的架構(gòu)特點搭建第三方的地理信息數(shù)據(jù)庫,從而實現(xiàn)了利用地圖API平臺管理第三方的信息,最后需要注意的是,開發(fā)商必須根據(jù)用戶的習慣對地圖數(shù)據(jù)、屬性數(shù)據(jù)和其他的應用信息的查詢、標注、疊加顯示和多樣式輸出。具體框架結(jié)構(gòu)如下面的圖2-3所示:

47、</p><p>  圖2-3 API框架結(jié)構(gòu)</p><p>  由引用地圖API所制作的在線地圖,一般還需要有一些輔助的功能,為了這些功能的實現(xiàn),一般提供地圖API的主流的網(wǎng)站都會提供一些附屬的控件。這些基本功能包括:添加標注功能,地圖顯示,標注顯示,屬性查詢、空間查詢等等。</p><p>  2.3 電子地圖的加載方法</p><p>

48、;  如上文所說,制作在線電子地圖只要加載一些大型地圖服務商提供的地圖API就可以實現(xiàn),下文中以百度地圖API的加載為例子,具體闡述怎么實現(xiàn)地圖的加載方法。</p><p>  這里先簡單的介紹一下百度地圖API,百度題圖API是由JSP語言編寫的一個應用程序接口,可以在網(wǎng)站中構(gòu)建出一個交互性很強、構(gòu)建功能能豐富的地圖應用,并且支持移動終端和PC電腦終端的基于瀏覽器的地圖應用開發(fā),該整套的API完全是免費對外開放

49、,不過使用前需要申請密匙才可以使用,跟其他API接口不同的是,百度地圖的API接口是無數(shù)用次數(shù)的限制。百度地圖API的功能很全面,除了基本的地圖展示之外,還能夠進行本地檢索、周邊檢索、區(qū)域檢索、公交檢索等等。一個不帶任何控件的百度地圖API引用的基本源代碼如下面所示:</p><p>  <!DOCTYPE html></p><p><b>  <html&g

50、t;</b></p><p><b>  <head></b></p><p>  <script type="text/javascript" src="http://api.map.baidu.com/api?v=1.5&ak=您的密鑰"></script></p

51、><p>  <title>百度地圖的Hello, World</title></p><p><b>  </head></b></p><p><b>  <body></b></p><p>  <div id="allmap&quo

52、t;></div></p><p><b>  </body></b></p><p><b>  </html></b></p><p>  <script type="text/javascript"></p><p> 

53、 var map = new BMap.Map("allmap"); // 創(chuàng)建Map實例</p><p>  var point = new BMap.Point(116.404, 39.915); // 創(chuàng)建點坐標</p><p>  map.centerAndZoom(point,15); // 初始化地圖,設置中心點坐標和地圖級別。

54、</p><p><b>  </script></b></p><p>  在上述代碼中,需要引用百度地圖的API文件時候,需要使用自己申請的密匙,即掉第四行中的“您的密匙”。</p><p>  若需要自己使用該代碼時,需要把申請的密匙替換掉上述程序中的“您的密匙”。</p><p>  除了上面地圖的引

55、用之外,還需要創(chuàng)建地圖容器,命名空間,創(chuàng)建地圖實例,創(chuàng)建中心點坐標,最后實現(xiàn)地圖初始化等。</p><p>  為了滿足用戶的各種要求,還可以往地圖上添加一些控件,實現(xiàn)用戶與地圖的交互。百度地圖API提供了豐富的控件。用戶可以添加一些自定義控件,如平移縮放控件、縮略地圖控件、比例尺控件和版權(quán)控??梢允褂肂Map.Map.addControl()的方法向地圖上添加控件,可以同時添加多個控件。</p>

56、<p>  本文主要研究往一個災害防控系統(tǒng)——《天地空一體化對地觀測資源應急調(diào)度與任務規(guī)劃系統(tǒng)》里面添加定位的的功能,可以通過點擊地圖上的任何一點,任何自動生成該點的經(jīng)緯度,代碼如下:</p><p>  <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/

57、TR/html4/loose.dtd"></p><p><b>  <html></b></p><p><b>  <head></b></p><p>  <meta http-equiv="Content-Type" content="te

58、xt/html; charset=GB2312"></p><p>  <title>地圖顯示</title></p><p>  <script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script></p

59、><p>  <script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false&language=zh"> </script></p><p>  <link rel="stylesheet"

60、 type="text/css"</p><p>  href="http://serverapi.arcgisonline.com/jsapi/arcgis/1.2/js/dojo/dijit/themes/tundra/tundra.css"></p><p>  <script type="text/javascript&

61、quot;</p><p>  src="http://serverapi.arcgisonline.com/jsapi/arcgis/?v=1.2"></script></p><p>  <script type="text/javascript" src="../scripts/Position.js"

62、;></script></p><p>  <script type="text/javascript" src="http://ditu.google.cn/maps?file=api&v=2&key=AIzaSyAlbMveogsUANA5FKbz8KEbIVYRIYN2mo4"></script></p&

63、gt;<p>  <style type="text/css"></p><p>  html,body {</p><p>  margin: 0;</p><p>  padding: 0;</p><p>  border: 0;</p><p>  width: 1

64、00%;</p><p>  height: 100%;</p><p>  overflow: hidden;}</p><p><b>  </style></b></p><p>  <script type="text/javascript"></p>&

65、lt;p>  dojo.require("esri.map");//注冊map控件</p><p>  var myMap, myTiledMapServiceLayer;</p><p>  function init() {</p><p>  myMap = new esri.Map("mapDiv");</

66、p><p>  myTiledMapServiceLayer = new esri.layers.ArcGISTiledMapServiceLayer(</p><p>  "http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_StreetMap_World_2D/MapServer");</p>

67、<p>  myMap.addLayer(myTiledMapServiceLayer);</p><p>  myMap.isPan=true;</p><p><b>  }</b></p><p>  dojo.addOnLoad(init);</p><p>  // #region 繪制事故點<

68、;/p><p><b>  // 警示圖標</b></p><p>  varalertSymbol = new esri.symbol.PictureMarkerSymbol('../images/FlashR1.gif', 20,</p><p>  20);// 人員定位圖標</p><p>  va

69、rpersonSymbol = new esri.symbol.PictureMarkerSymbol('../images/person.png', 42,51);// 無人機</p><p>  varUAVSymbol = new esri.symbol.PictureMarkerSymbol('../images/Endflag.png', 20,20);</p

70、><p>  function Dingwei(rows)</p><p><b>  {</b></p><p>  for(var i=0;i<rows.length;i++)</p><p><b>  {</b></p><p>  var lat=rows[i].

71、WD;</p><p>  var long=rows[i].JD;</p><p>  DrawIPoint(lat,long);</p><p><b>  }}</b></p><p>  function DrawIPoint(lat,long) {</p><p>  var cPoi

72、nt = new esri.geometry.Point();</p><p>  cPoint.x = lat;</p><p>  cPoint.y = long;</p><p>  var ptGraphic = new esri.Graphic(cPoint, alertSymbol); </p><p>  myMa

73、p.graphics.add(ptGraphic);</p><p><b>  }</b></p><p><b>  //定位志愿者</b></p><p>  function Dingwei1(rows)</p><p><b>  {</b></p>

74、<p>  for(var i=0;i<rows.length;i++)</p><p><b>  {</b></p><p>  var r=rows[i].ZB;</p><p>  var biao=r.split(",");</p><p>  var x=biao[0];&

75、lt;/p><p>  var y=biao[1];</p><p>  DrawIPoint1(x,y);</p><p><b>  }</b></p><p><b>  }</b></p><p>  function DrawIPoint1(lat,long) {<

76、;/p><p>  var cPoint = new esri.geometry.Point();</p><p>  cPoint.x = lat;</p><p>  cPoint.y = long;</p><p>  var ptGraphic = new esri.Graphic(cPoint, personSymbol);</p

77、><p>  // var ptGraphic = new esri.Graphic(cPoint, defaultSymbol);</p><p>  myMap.graphics.add(ptGraphic);</p><p><b>  }</b></p><p><b>  //UAV 定位</b&

78、gt;</p><p>  function Dingwei2(rows)</p><p><b>  {</b></p><p>  for(var i=0;i<rows.length;i++)</p><p><b>  {</b></p><p>  //geoc

79、oder = new google.maps.Geocoder();</p><p>  //geocoder.geocode( { 'address': r}, function(results, status){</p><p>  //if (status == google.maps.GeocoderStatus.OK){</p><p> 

80、 //t=results[0].geometry.location.toString();</p><p>  //var biao=t.split(","); </p><p>  // var biao=t.split(",");</p><p>  //alert(biao[0]);</p><p

81、>  //var x=biao[0].substring(1);</p><p>  //var y=biao[1].substring(0,biao[1].indexOf(")"));</p><p>  var r=rows[i].ZB;</p><p>  var biao=r.split(",");</p&

82、gt;<p>  var x=biao[0];</p><p>  var y=biao[1];</p><p>  DrawIPoint2(x,y);</p><p><b>  //}</b></p><p><b>  //}); </b></p><p&g

83、t;<b>  }</b></p><p><b>  }</b></p><p>  function DrawIPoint2(lat,long) {</p><p>  var cPoint = new esri.geometry.Point();</p><p>  cPoint.x = pa

84、rseInt(lat);</p><p>  cPoint.y = parseInt(long);</p><p>  var ptGraphic = new esri.Graphic(cPoint, UAVSymbol);</p><p>  myMap.graphics.add(ptGraphic);</p><p><b>

85、;  }</b></p><p><b>  </script></b></p><p><b>  </head></b></p><p><b>  <body></b></p><p>  <div id="

86、mapDiv" class="tundra"</p><p>  style="width:100%;height:100%; border:0;"></div></p><p><b>  </body></b></p><p><b>  </h

87、tml></b></p><p>  由于空間有限,以上的代碼只是整個程序的一部分。</p><p>  這一部分程序載入的是一整張世界地圖,并且旁邊添加了一個縮放工具按鈕。根據(jù)情況轉(zhuǎn)動鼠標上面的滾輪,可以調(diào)整視窗顯示的地圖的比例尺,從而控制地圖的放大與縮小。除此之外,雙擊地圖也會起到放大的效果。這一部分程序只添加了一個很簡單的縮放控件,沒有具體的定位控件。</p&

88、gt;<p>  該代碼在火狐瀏覽器上的編譯如下圖2-4所示:</p><p><b>  圖2-4 運行結(jié)果</b></p><p>  上述的例子是后面提到的整個平臺的一小部分。通過上述的例子,可以大概的明白互聯(lián)網(wǎng)上的在線地圖一般是通過加載地圖API實現(xiàn)的。這樣的方法非常的方便和快捷,只需要我們申請一個密匙即可使用該地圖。除了國內(nèi)的百度地圖之外,國外

89、也有非常多類似的地圖服務商,如著名的谷歌公司,還有虛擬地球公司等等,他們都提供相類似的地圖API,免費供給大眾使用,但是使用地圖API也必須遵循相關公司的相關規(guī)定,不能把地圖應用于從事非法活動,否則提供地圖API的公司會根據(jù)密匙找到開發(fā)者,然后對其所申請的密匙進行鎖定,禁止其使用。、</p><p>  另一個值得一提的是實現(xiàn)該功能的編程語言——JSP,該語言屬于一種動態(tài)網(wǎng)頁編程語言,該語言比較簡單,通俗易懂,并

90、且一次編寫,可以到處運行。并且該語言編寫的系統(tǒng)能得到多平臺的支持,基本上可以在所有的平臺上的任意環(huán)境中開發(fā)使用,并且在任意的環(huán)境中擴展,這樣,給開發(fā)人員帶來了極大的便利,他們可以根據(jù)自己的需要,在網(wǎng)頁地圖上添加上新的空間和功能。</p><p>  3 《天地空一體化對地觀測資源應急調(diào)度系統(tǒng)》平臺開發(fā)</p><p>  一直以來,地質(zhì)災害、社會災害等災害一直困擾著人們的生活,像2013年

91、4月20日的雅安地震,導致很多人都在此喪失掉了生命,所以,為了能夠有個相應的系統(tǒng),能夠在災害發(fā)生前做出預測,或者在災害發(fā)生后能整合各地的有效資源,然后對其進行有效的調(diào)度和配置,達到最好的救災效果,本文作者和指導老師者根據(jù)實際情況,投入大量精力和資源,正在開發(fā)一個應急調(diào)度系統(tǒng),即《天地空一體化對地觀測資源應急調(diào)度》的系統(tǒng)。</p><p><b>  3.1 系統(tǒng)簡介</b></p>

92、;<p>  本系統(tǒng)面向重大地質(zhì)災害應急管理的對地觀測資源狀況,實現(xiàn)空天地一體化應急模式調(diào)度與任務規(guī)劃功能,包括(1)有效地組織天空地一體化對地觀測資源,形成高效的協(xié)同觀測網(wǎng)絡;(2)以地災事件為驅(qū)動,并在事件策略推理支持下,生成衛(wèi)星調(diào)度規(guī)劃方案;(3)收集與地災事件有關的志原者信息/空間位置,接收志原者通過移動終端就地災而產(chǎn)生的標報數(shù)據(jù);(4)地災數(shù)據(jù)的可視化管理與顯示。</p><p>  《空

93、天地一體化對地觀測資源調(diào)度平臺》的設計目標是平民化使用的系統(tǒng),可以供普通的志愿者使用,操作界面非常簡單,并且方便快捷,任何個人只要在個人電腦或者手機上裝有客戶端的話,都可以加入系統(tǒng)的對應的功能互動,也為救災工作帶來了極大的便利。</p><p>  系統(tǒng)從創(chuàng)建地災點開始啟動,在錄入完災情信息以后,系統(tǒng)將依據(jù)災情類型、分級、信息、影響程度等,將自動從地災應急響應策略庫中讀取并匹配相應策略;然后激活策略,進而進入衛(wèi)星

94、資源調(diào)度規(guī)劃、無人機調(diào)試規(guī)劃、VGI協(xié)調(diào)與數(shù)據(jù)采集等過程。該過程為異步執(zhí)行階段。</p><p>  該系統(tǒng)的運行與開發(fā)環(huán)境如下表所示:</p><p>  表3-1 開發(fā)與運行環(huán)境</p><p>  該軟件是在有網(wǎng)絡的情況下才能運行的軟件,既可以配置于移動終端,如手機或者其他手持設備等,又可以配置在個人電腦上。并且對運行環(huán)境要求不是很高。</p>

95、<p>  該階段所產(chǎn)生的調(diào)度任務數(shù)據(jù)和VGI采集數(shù)據(jù)將通過系統(tǒng)服務總線(Service Bus,SB)提交給應用服務器,進而存入數(shù)據(jù)庫中。</p><p>  系統(tǒng)活動過程如圖3-1所示。</p><p>  另外,該系統(tǒng)還處于開發(fā)測試的階段,并沒有完全的成熟,在今后一段時間里,開發(fā)人員和相關的學者還會繼續(xù)投入大量的人力物力,完成系統(tǒng)的開發(fā)。并且從目前評估的情況來看,該系統(tǒng)有非

96、常大的應用空間,能夠在以后的自然災害中起到非常大的作用。下面對其現(xiàn)有基本功能進行簡要介紹。</p><p>  圖3-1 系統(tǒng)活動過程</p><p>  3.2 系統(tǒng)界面及其功能</p><p>  該系統(tǒng)用JavaScript程序語言開發(fā),主要用MyEclipse 10軟件進行編譯,并且可以在瀏覽器中方便的顯示、調(diào)試。該平臺主要包括五個部分,即:用戶管理部分,

97、險情信息管理部分,無人機——志愿者管理部分,調(diào)度管理部分以及地圖資源管理。其運行界面如下圖3-2所示:</p><p><b>  圖3-2 運行界面</b></p><p>  該平臺需要注冊才能供個人或者公司使用權(quán),人們可以從用戶管理一欄里面進行注冊,注冊界面如下圖所示:</p><p><b>  圖3-3 注冊界面</b

98、></p><p>  險情信息管理部分的主要功能是負責各種災害的管理工作,并且工作人員可以把新的災害錄入系統(tǒng),對其進行編輯,并對其做一些分類處理。這部分的包括新災情的查看,災害地點查詢和災害的時間查詢。</p><p>  該部分的數(shù)據(jù)主要是有專門工作人員處理后再提供給用戶的,不支持用戶的自定義編輯,用戶只能進行查詢或者查看。界面如下圖所示:</p><p>

99、;<b>  圖3-4 查詢界面</b></p><p>  不過在無人機——志愿者管理部分,就允許客戶端的使用者進行數(shù)據(jù)的采集,并且為了保證數(shù)據(jù)的實時性,平臺管理部門還會定時派出專業(yè)的數(shù)據(jù)收集人員或者無人機在災區(qū)進行拍攝,獲取全面的數(shù)據(jù)。相對比之下,志愿者一般是采集數(shù)據(jù)的輔助手段。這一部分的運行界面如下圖所示:</p><p><b>  圖3-5 數(shù)據(jù)輸

100、入</b></p><p>  接下來的是調(diào)度管理部分,這一部分主要是由系統(tǒng)的使用管理人員操作進行的,主要功能是把錄入的數(shù)據(jù)進行處理后,然后根據(jù)災區(qū)的情況進行分析,調(diào)度各種可以利用的資源,并進行合理的配置,使得災害的救治過程能有條不紊的進行,而且還不會有資源的浪費。這一部分包括五個功能項,分別對應著不同資源的不同情況的調(diào)度使用,如無人機的調(diào)度使用、救災物資的調(diào)度使用、救災人員的調(diào)度等等。</p&

101、gt;<p>  最后是地圖資源管理部分,包括地圖服務的加載和一些元數(shù)據(jù)的加載等等。這一部分的功能主要是為救災中的定位服務的,不僅能使系統(tǒng)準確的提供災區(qū)的位置、地形情況,還可以據(jù)此對其他工作進行部署。</p><p><b>  4.結(jié)束語</b></p><p>  本文從開篇分析了在線電子地圖的現(xiàn)狀,闡述了現(xiàn)今互聯(lián)網(wǎng)上的各種電子地圖與傳統(tǒng)的紙質(zhì)地圖的

102、區(qū)別,在兩者的對比之下,說明了現(xiàn)在的電子地圖的優(yōu)勢;進而又簡述了在線電子地圖服務的技術,地圖的靜態(tài)瓦片數(shù)據(jù)獲取的原理以及普通網(wǎng)頁加載地圖的方法,并且對實現(xiàn)該技術的編程語言進行了簡略的介紹,最后對《天地空一體化對地資源應急調(diào)度》系統(tǒng)做了簡明扼要的說明,大概介紹了系統(tǒng)的開發(fā)環(huán)境和系統(tǒng)的運行方法,使讀者能夠?qū)υ撓到y(tǒng)粗略的有個了解,并且對各部分的功能進行大概描述。不過由于該系統(tǒng)正處于開發(fā)階段,各項功能還處于測試階段,暫時還不能使用,也不能把全部

103、的功能展示給大家。 </p><p><b>  致 謝</b></p><p>  最后,經(jīng)過了三個月的學習與實踐,終于明白了在線電子地圖的加載和使用的原理與相對應程序的編寫方法,為了能夠完成《天地空一體化對地資源應急調(diào)度》系統(tǒng)相應部分的編程工作打下了堅實的基礎。在整個設計完成的過程中,遇到了很多各種各樣的困難,但是每當出現(xiàn)這樣或者那樣的難題時,總會有老師或者

104、同學幫助著順利的度過難關,我非常感謝老師和各位同學的真誠幫助,并且在這樣的一些困難中,我深刻的體會到做畢業(yè)設計本身也是一個學習的過程,就像從剛開始對于加載地圖認識很模糊,經(jīng)過一些學習和實踐,最后終于能夠明白整個在線電子地圖服務的注冊與訪問的全部過程。</p><p>  總而言之,通過這個畢業(yè)設計,我非常感謝指導老師和同學的幫助,讓我深刻的體會到了要做好一件完整的事情,必需要有嚴密的邏輯思維和完善的方法,并且要有

105、堅強的意志和堅持不懈的精神,對待要解決的問題,首先要耐心,要充分應用自己的所學來理解問題,如果不行,可以網(wǎng)上查找相應的資料或者咨詢老師,得出問題的答案。同時,我也深刻的認識到,對待一個新鮮的事物,一定要從整體考慮,制作一個完整的計劃,然后依照計劃一步一步的完成,這樣做,才更加有效。</p><p><b>  參考文獻</b></p><p>  [1] 李哲,姜占華

106、,秦俊等.在線電子地圖服務系統(tǒng)的研究與實現(xiàn)[C].計算機工程與設計,2011,32(7):2344-2347</p><p>  [2] 高峰,談俊忠.JavaScript在基于SVG的網(wǎng)絡地圖中的應用[J].江西師范大學學報,2004,28(3):262-265</p><p>  [3] 杜傳明.百度地圖API在小型地理信息系統(tǒng)中的應用[J].測繪與空間地理信息,2011,34(2):

107、152-156</p><p>  [4] 胡錢錢,李莉.導航電子地圖的更新機制與技術方法[J].地理信息世界,2008,6(1):78-79</p><p>  [5] 楊勇,李霖,鄭新燕.地圖制圖系統(tǒng)數(shù)據(jù)庫存儲結(jié)構(gòu)設計[J].測繪科學,2008,33(2):830-833</p><p>  [6] 毛忠民.互聯(lián)網(wǎng)時代的在線地圖公共服務探討[J].測繪與空間地理

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論