百度地圖API開發(fā)指南課件_第1頁
百度地圖API開發(fā)指南課件_第2頁
百度地圖API開發(fā)指南課件_第3頁
百度地圖API開發(fā)指南課件_第4頁
百度地圖API開發(fā)指南課件_第5頁
已閱讀5頁,還剩49頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

百度地圖API開發(fā)指南Michael1百度地圖API開發(fā)指南Michael1簡(jiǎn)介基礎(chǔ)知識(shí)控件覆蓋物事件地圖圖層工具服務(wù)坐標(biāo)轉(zhuǎn)換演示目錄

2簡(jiǎn)介目錄

2百度地圖API是一套由JavaScript語言編寫的應(yīng)用程序接口,它能夠幫助您在網(wǎng)站中構(gòu)建功能豐富、交互性強(qiáng)的地圖應(yīng)用程序。百度地圖API不僅包含構(gòu)建地圖的基本功能接口,還提供了諸如本地搜索、路線規(guī)劃等數(shù)據(jù)服務(wù)。簡(jiǎn)介

什么是百度地圖API?

3百度地圖API是一套由JavaScript語言編寫的應(yīng)用程序通過地址/api

加載API:<scriptsrc="/api?key=您的API密鑰&v=版本&services=true或者false"type="text/javascript"></script>其中參數(shù)key為密鑰,參數(shù)v為當(dāng)前API的版本號(hào),目前最新版本為1.0,services參數(shù)表示是否加載服務(wù)部分,true表示加載,false表示不加載。簡(jiǎn)介

獲取API

4通過地址/地址/api?v=1.0中的參數(shù)v表示您加載API的版本,例如當(dāng)前API的最新版本為1.0,則您可在地址中添加v=1.0。當(dāng)API升級(jí)后,如果已有接口在使用、命名等方面發(fā)生了變化,我們會(huì)為其增加一個(gè)新的版本號(hào)(比如1.1),這不會(huì)對(duì)您現(xiàn)有的應(yīng)用造成任何影響。如果升級(jí)只是修改一些bug或者在不影響現(xiàn)有功能的前提下增加接口,則版本號(hào)不會(huì)發(fā)生變化。簡(jiǎn)介

版本說明

5地址/ap瀏覽器:IE6.0+、Firefox3.0+、Opera9.0+、Safari3.0+、Chrome操作系統(tǒng):Windows、Mac、Linux簡(jiǎn)介

兼容性

6瀏覽器:IE6.0+、Firefox3.0+、Opera一、引用百度地圖API文件當(dāng)您引用地圖API文件時(shí),需要使用自己申請(qǐng)的API密鑰。<script

type="text/javascript"

src="/api?key=46ce9d0614bf7aefe0ba562f8cf87194&v=1.0&services=false"></script>

二、創(chuàng)建地圖容器元素<div

style="width:520px;height:340px;border:1px

solid

#000"

id="container"></div>

地圖需要一個(gè)HTML元素作為容器,這樣才能展現(xiàn)到頁面上。這里我們創(chuàng)建了一個(gè)div元素并制定它的大小地圖會(huì)根據(jù)容器大小調(diào)整自身尺寸。基礎(chǔ)知識(shí)

百度地圖的“Hello,World”

7一、引用百度地圖API文件基礎(chǔ)知識(shí)

百度地圖的“Hello,三、命名空間API使用BMap作為命名空間,所有類均在該命名空間之下,比如:BMap.Map、BMap.Control、BMap.Overlay。四、創(chuàng)建地圖實(shí)例var

map

=

new

BMap.Map("container");

位于BMap命名空間下的Map類表示地圖,通過new操作符可以創(chuàng)建一個(gè)地圖實(shí)例。其參數(shù)可以是元素id也可以是元素對(duì)象。

注意在調(diào)用此構(gòu)造函數(shù)時(shí)應(yīng)確保容器元素已經(jīng)添加到地圖上?;A(chǔ)知識(shí)

百度地圖的“Hello,World”

8三、命名空間基礎(chǔ)知識(shí)

百度地圖的“Hello,World”五、創(chuàng)建點(diǎn)坐標(biāo)var

point

=

new

BMap.Point(116.404,

39.915);

這里我們使用BMap命名空間下的Point類來創(chuàng)建一個(gè)坐標(biāo)點(diǎn)。Point類描述了一個(gè)地理坐標(biāo)點(diǎn),其中116.404表示經(jīng)度,39.915表示緯度。六、地圖初始化map.centerAndZoom(point,15);

在創(chuàng)建地圖實(shí)例后,我們需要對(duì)其進(jìn)行初始化,BMap.Map.centerAndZoom()方法要求設(shè)置中心點(diǎn)坐標(biāo)和地圖級(jí)別。

地圖必須經(jīng)過初始化才可以執(zhí)行其他操作?;A(chǔ)知識(shí)

百度地圖的“Hello,World”

9五、創(chuàng)建點(diǎn)坐標(biāo)基礎(chǔ)知識(shí)

百度地圖的“Hello,World五、創(chuàng)建點(diǎn)坐標(biāo)var

point

=

new

BMap.Point(116.404,

39.915);

這里我們使用BMap命名空間下的Point類來創(chuàng)建一個(gè)坐標(biāo)點(diǎn)。Point類描述了一個(gè)地理坐標(biāo)點(diǎn),其中116.404表示經(jīng)度,39.915表示緯度。六、地圖初始化map.centerAndZoom(point,15);

在創(chuàng)建地圖實(shí)例后,我們需要對(duì)其進(jìn)行初始化,BMap.Map.centerAndZoom()方法要求設(shè)置中心點(diǎn)坐標(biāo)和地圖級(jí)別。

地圖必須經(jīng)過初始化才可以執(zhí)行其他操作?;A(chǔ)知識(shí)

百度地圖的“Hello,World”

10五、創(chuàng)建點(diǎn)坐標(biāo)基礎(chǔ)知識(shí)

百度地圖的“Hello,World基礎(chǔ)知識(shí)

百度地圖的“Hello,World”

11基礎(chǔ)知識(shí)

百度地圖的“Hello,World”

11百度地圖上負(fù)責(zé)與地圖交互的UI元素稱為控件。百度地圖API中提供了豐富的控件,您還可以通過BMap.Control來實(shí)現(xiàn)自定義控件。地圖API中提供的控件有:Control:控件的抽象基類,所有控件均繼承此類的方法、屬性。通過此類您可實(shí)現(xiàn)自定義控件。NavigationControl:地圖平移縮放控件,默認(rèn)位于地圖左上方,它包含控制地圖的平移和縮放的功能。OverviewMapControl:縮略地圖控件,默認(rèn)位于地圖右下方,是一個(gè)可折疊的縮略地圖。ScaleControl:比例尺控件,默認(rèn)位于地圖左下方,顯示地圖的比例關(guān)系。CopyrightControl:版權(quán)控件,默認(rèn)位于地圖左下方。所有這些控件都基于BMap.Control類??丶?/p>

地圖控件概述

12百度地圖上負(fù)責(zé)與地圖交互的UI元素稱為控件。百度地圖API中可以使用BMap.Map.addControl()方法向地圖添加控件也可以向地圖添加多個(gè)控件。在本例中我們向地圖添加一個(gè)平移縮放控件、一個(gè)比例尺控件和一個(gè)縮略圖控件在地圖中添加控件后,它們即刻生效。map.addControl(new

BMap.NavigationControl());

map.addControl(new

BMap.ScaleControl());

map.addControl(new

BMap.OverviewMapControl());

控件

向地圖添加控件

13可以使用BMap.Map.addControl()方法向地圖控件

向地圖添加控件

14控件

向地圖添加控件

14所有疊加或覆蓋到地圖的內(nèi)容,我們統(tǒng)稱為地圖覆蓋物。如標(biāo)注、矢量圖形元素(包括:折線和多邊形)、信息窗口等。覆蓋物擁有自己的地理坐標(biāo),當(dāng)您拖動(dòng)或縮放地圖時(shí),它們會(huì)相應(yīng)的移動(dòng)。地圖API提供了如下幾種覆蓋物:Overlay:覆蓋物的抽象基類,此類不可實(shí)例化,所有的覆蓋物均繼承此類的方法。Marker:標(biāo)注表示地圖上的點(diǎn),可自定義標(biāo)注的圖標(biāo)。Label:表示地圖上的文本標(biāo)注,您可以自定義標(biāo)注的文本內(nèi)容。Polyline:表示地圖上的折線。Polygon:表示地圖上的多邊形。多邊形類似于閉合的折線,另外您也可以為其添加填充顏色。InfoWindow:信息窗口也是一種特殊的覆蓋物。注意:同一時(shí)刻只能有一個(gè)信息窗口在地圖上打開。可以使用BMap.Map.addOverlay()方法向地圖添加覆蓋物,使用BMap.Map.removeOverlay()方法移除覆蓋物,注意此方法不適用于InfoWindow。覆蓋物

地圖覆蓋物概述

15所有疊加或覆蓋到地圖的內(nèi)容,我們統(tǒng)稱為地圖覆蓋物。如標(biāo)注、矢覆蓋物

地圖覆蓋物概述

16覆蓋物

地圖覆蓋物概述

16百度地圖API中的每一個(gè)對(duì)象都含有addEventListener方法,您可以通過該方法來監(jiān)聽對(duì)象事件。例如,BMap.Map包含click、dblclick等事件。在特定環(huán)境下這些事件會(huì)被觸發(fā),同時(shí)監(jiān)聽函數(shù)會(huì)得到相應(yīng)的事件參數(shù)e,比如當(dāng)用戶點(diǎn)擊地圖時(shí),e參數(shù)會(huì)包含鼠標(biāo)所對(duì)應(yīng)的地理位置point。有關(guān)地圖API對(duì)象的事件,請(qǐng)參考完整的API參考文檔。addEventListener方法有兩個(gè)參數(shù):監(jiān)聽的事件名稱和事件觸發(fā)時(shí)調(diào)用的函數(shù)。事件

事件的監(jiān)聽

17百度地圖API中的每一個(gè)對(duì)象都含有addEventListe地圖可以包含一個(gè)或多個(gè)圖層,每個(gè)圖層在每個(gè)級(jí)別都是由若干張圖塊組成的,它們覆蓋了地球的整個(gè)表面。在最低的縮放級(jí)別(級(jí)別1)中,整個(gè)地球由4張圖塊組成。隨著級(jí)別的增長(zhǎng),地圖所使用的圖塊個(gè)數(shù)也隨之增多。地圖圖層

地圖圖層概念

18地圖可以包含一個(gè)或多個(gè)圖層,每個(gè)圖層在每個(gè)級(jí)別都是由若干張圖百度地圖中提供一個(gè)BMap.TileLayer類,可以實(shí)現(xiàn)用戶自定義圖層功能??梢栽诎俣鹊貓D上疊加一層自定義的圖塊。以下代碼在每個(gè)圖塊的所有縮放級(jí)別上顯示一個(gè)簡(jiǎn)單的透明疊加層,使用浮動(dòng)紅色小水滴表示圖塊的輪廓。var

map

=

new

BMap.Map("container");//

創(chuàng)建地圖實(shí)例

var

point

=

new

BMap.Point(116.404,

39.915);//

創(chuàng)建點(diǎn)坐標(biāo)

map.centerAndZoom(point,15);

//

初始化地圖,設(shè)置中心點(diǎn)坐標(biāo)和地圖級(jí)別

var

tilelayer

=

new

BMap.TileLayer();

//

創(chuàng)建地圖層實(shí)例

tilelayer.getTilesUrl=function(){

//

設(shè)置圖塊路徑

return

"layer.gif";

};

map.addTileLayer(tilelayer);

//

將圖層添加到地圖上

地圖圖層

自定義圖層

19百度地圖中提供一個(gè)BMap.TileLayer類,可以實(shí)現(xiàn)用地圖圖層

自定義圖層

20地圖圖層

自定義圖層

20百度地圖提供了交互功能更為復(fù)雜的“工具”,它包括PushpinTool:標(biāo)注工具。通過此工具用戶可在地圖任意區(qū)域添加標(biāo)注。DistanceTool:測(cè)距工具。通過此工具用戶可測(cè)量地圖上任意位置之間的距離。DragAndZoomTool:區(qū)域縮放工具。此工具將根據(jù)用戶拖拽繪制的矩形區(qū)域大小對(duì)地圖進(jìn)行放大或縮小操作。工具類在初始化時(shí)需要提供地圖實(shí)例參數(shù),以便使工具在該地圖上生效。您可以在地圖上添加多個(gè)工具,但同一時(shí)刻只能有一個(gè)工具處于開啟狀態(tài)。標(biāo)注工具和測(cè)距工具在完成一次操作后將自動(dòng)退出開啟狀態(tài),而區(qū)域縮放工具可以自行配置是否自動(dòng)關(guān)閉。工具

地圖工具概述

21百度地圖提供了交互功能更為復(fù)雜的“工具”,它包括工具

地圖工var

map

=

new

BMap.Map("container");

map.centerAndZoom(new

BMap.Point(116.404,

39.915),

15);

var

myDis

=

new

BMap.DistanceTool(map);

myDis.open();工具

向地圖添加工具

22var

map

=

new

BMap.Map("contai地圖服務(wù)是指那些提供數(shù)據(jù)信息的接口,比如本地搜索、路線規(guī)劃等等。百度地圖API提供的服務(wù)有:LocalSearch:本地搜索,提供某一特定地區(qū)的位置搜索服務(wù)比如在北京市搜索“公園”。TransitRoute:公交導(dǎo)航,提供某一特定地區(qū)的公交出行方案的搜索服務(wù)。DrivingRoute:駕車導(dǎo)航,提供駕車出行方案的搜索服務(wù)。WalkingRoute:步行導(dǎo)航,提供步行出行方案的搜索服務(wù)。Geocoder:地址解析,提供將地址信息轉(zhuǎn)換為坐標(biāo)點(diǎn)信息的服務(wù)。LocalCity:本地城市,提供自動(dòng)判斷您所在城市的服務(wù)。TrafficControl:實(shí)時(shí)路況控件,提供實(shí)時(shí)和歷史路況信息服務(wù)。搜索類的服務(wù)接口需要指定一個(gè)搜索范圍,否則接口將不能工作。服務(wù)

地圖服務(wù)概述

23地圖服務(wù)是指那些提供數(shù)據(jù)信息的接口,比如本地搜索、路線規(guī)劃等服務(wù)

結(jié)果面板

24服務(wù)

結(jié)果面板

24因目前各家地圖API服務(wù)商都沿用不同的坐標(biāo)體系,故客戶在更換API服務(wù)商或?qū)Ω骷褹PI性能進(jìn)行測(cè)試的時(shí)候會(huì)遇到較大的障礙。因此百度地圖提供坐標(biāo)轉(zhuǎn)換工具,使您可以方便地將不同的坐標(biāo)體系轉(zhuǎn)換為百度地圖標(biāo)準(zhǔn)坐標(biāo)。極大地降低您更換API服務(wù)的成本,同時(shí)擴(kuò)大了可選擇范圍和自由度。目前百度地圖坐標(biāo)轉(zhuǎn)換工具支持以下API服務(wù)商所采用的坐標(biāo)體系:MapbarMapabc51ditu谷歌坐標(biāo)轉(zhuǎn)換

坐標(biāo)轉(zhuǎn)換概述25因目前各家地圖API服務(wù)商都沿用不同的坐標(biāo)體系,故客戶在更換請(qǐng)求接口中有四個(gè)參數(shù):from:被轉(zhuǎn)換的坐標(biāo)體系to:轉(zhuǎn)換到這個(gè)坐標(biāo)體系x:經(jīng)度y:緯度接口應(yīng)答中有三個(gè)key:(應(yīng)答格式如:{"error":0,"x":116.2610991221,"y":29.820560874846})error:值為0時(shí),則為成功,非0時(shí),則為失敗x:目的經(jīng)度,即百度坐標(biāo)經(jīng)度y:目的緯度,即百度坐標(biāo)緯度接口的使用示例谷歌/ag/coord/convert?from=gcj02ll&to=bd09ll&x=116.254615&y=29.814476

51地圖:51地圖的坐標(biāo),先要除10^5,然后再調(diào)用url

/ag/coord/convert?from=gcj02ll&to=bd09ll&x=116.254615&y=29.814476坐標(biāo)轉(zhuǎn)換

坐標(biāo)轉(zhuǎn)換接口說明26請(qǐng)求接口中有四個(gè)參數(shù):坐標(biāo)轉(zhuǎn)換

坐標(biāo)轉(zhuǎn)換接口說明26謝謝!

27謝謝!

27百度地圖API開發(fā)指南Michael28百度地圖API開發(fā)指南Michael1簡(jiǎn)介基礎(chǔ)知識(shí)控件覆蓋物事件地圖圖層工具服務(wù)坐標(biāo)轉(zhuǎn)換演示目錄

29簡(jiǎn)介目錄

2百度地圖API是一套由JavaScript語言編寫的應(yīng)用程序接口,它能夠幫助您在網(wǎng)站中構(gòu)建功能豐富、交互性強(qiáng)的地圖應(yīng)用程序。百度地圖API不僅包含構(gòu)建地圖的基本功能接口,還提供了諸如本地搜索、路線規(guī)劃等數(shù)據(jù)服務(wù)。簡(jiǎn)介

什么是百度地圖API?

30百度地圖API是一套由JavaScript語言編寫的應(yīng)用程序通過地址/api

加載API:<scriptsrc="/api?key=您的API密鑰&v=版本&services=true或者false"type="text/javascript"></script>其中參數(shù)key為密鑰,參數(shù)v為當(dāng)前API的版本號(hào),目前最新版本為1.0,services參數(shù)表示是否加載服務(wù)部分,true表示加載,false表示不加載。簡(jiǎn)介

獲取API

31通過地址/地址/api?v=1.0中的參數(shù)v表示您加載API的版本,例如當(dāng)前API的最新版本為1.0,則您可在地址中添加v=1.0。當(dāng)API升級(jí)后,如果已有接口在使用、命名等方面發(fā)生了變化,我們會(huì)為其增加一個(gè)新的版本號(hào)(比如1.1),這不會(huì)對(duì)您現(xiàn)有的應(yīng)用造成任何影響。如果升級(jí)只是修改一些bug或者在不影響現(xiàn)有功能的前提下增加接口,則版本號(hào)不會(huì)發(fā)生變化。簡(jiǎn)介

版本說明

32地址/ap瀏覽器:IE6.0+、Firefox3.0+、Opera9.0+、Safari3.0+、Chrome操作系統(tǒng):Windows、Mac、Linux簡(jiǎn)介

兼容性

33瀏覽器:IE6.0+、Firefox3.0+、Opera一、引用百度地圖API文件當(dāng)您引用地圖API文件時(shí),需要使用自己申請(qǐng)的API密鑰。<script

type="text/javascript"

src="/api?key=46ce9d0614bf7aefe0ba562f8cf87194&v=1.0&services=false"></script>

二、創(chuàng)建地圖容器元素<div

style="width:520px;height:340px;border:1px

solid

#000"

id="container"></div>

地圖需要一個(gè)HTML元素作為容器,這樣才能展現(xiàn)到頁面上。這里我們創(chuàng)建了一個(gè)div元素并制定它的大小地圖會(huì)根據(jù)容器大小調(diào)整自身尺寸?;A(chǔ)知識(shí)

百度地圖的“Hello,World”

34一、引用百度地圖API文件基礎(chǔ)知識(shí)

百度地圖的“Hello,三、命名空間API使用BMap作為命名空間,所有類均在該命名空間之下,比如:BMap.Map、BMap.Control、BMap.Overlay。四、創(chuàng)建地圖實(shí)例var

map

=

new

BMap.Map("container");

位于BMap命名空間下的Map類表示地圖,通過new操作符可以創(chuàng)建一個(gè)地圖實(shí)例。其參數(shù)可以是元素id也可以是元素對(duì)象。

注意在調(diào)用此構(gòu)造函數(shù)時(shí)應(yīng)確保容器元素已經(jīng)添加到地圖上?;A(chǔ)知識(shí)

百度地圖的“Hello,World”

35三、命名空間基礎(chǔ)知識(shí)

百度地圖的“Hello,World”五、創(chuàng)建點(diǎn)坐標(biāo)var

point

=

new

BMap.Point(116.404,

39.915);

這里我們使用BMap命名空間下的Point類來創(chuàng)建一個(gè)坐標(biāo)點(diǎn)。Point類描述了一個(gè)地理坐標(biāo)點(diǎn),其中116.404表示經(jīng)度,39.915表示緯度。六、地圖初始化map.centerAndZoom(point,15);

在創(chuàng)建地圖實(shí)例后,我們需要對(duì)其進(jìn)行初始化,BMap.Map.centerAndZoom()方法要求設(shè)置中心點(diǎn)坐標(biāo)和地圖級(jí)別。

地圖必須經(jīng)過初始化才可以執(zhí)行其他操作?;A(chǔ)知識(shí)

百度地圖的“Hello,World”

36五、創(chuàng)建點(diǎn)坐標(biāo)基礎(chǔ)知識(shí)

百度地圖的“Hello,World五、創(chuàng)建點(diǎn)坐標(biāo)var

point

=

new

BMap.Point(116.404,

39.915);

這里我們使用BMap命名空間下的Point類來創(chuàng)建一個(gè)坐標(biāo)點(diǎn)。Point類描述了一個(gè)地理坐標(biāo)點(diǎn),其中116.404表示經(jīng)度,39.915表示緯度。六、地圖初始化map.centerAndZoom(point,15);

在創(chuàng)建地圖實(shí)例后,我們需要對(duì)其進(jìn)行初始化,BMap.Map.centerAndZoom()方法要求設(shè)置中心點(diǎn)坐標(biāo)和地圖級(jí)別。

地圖必須經(jīng)過初始化才可以執(zhí)行其他操作?;A(chǔ)知識(shí)

百度地圖的“Hello,World”

37五、創(chuàng)建點(diǎn)坐標(biāo)基礎(chǔ)知識(shí)

百度地圖的“Hello,World基礎(chǔ)知識(shí)

百度地圖的“Hello,World”

38基礎(chǔ)知識(shí)

百度地圖的“Hello,World”

11百度地圖上負(fù)責(zé)與地圖交互的UI元素稱為控件。百度地圖API中提供了豐富的控件,您還可以通過BMap.Control來實(shí)現(xiàn)自定義控件。地圖API中提供的控件有:Control:控件的抽象基類,所有控件均繼承此類的方法、屬性。通過此類您可實(shí)現(xiàn)自定義控件。NavigationControl:地圖平移縮放控件,默認(rèn)位于地圖左上方,它包含控制地圖的平移和縮放的功能。OverviewMapControl:縮略地圖控件,默認(rèn)位于地圖右下方,是一個(gè)可折疊的縮略地圖。ScaleControl:比例尺控件,默認(rèn)位于地圖左下方,顯示地圖的比例關(guān)系。CopyrightControl:版權(quán)控件,默認(rèn)位于地圖左下方。所有這些控件都基于BMap.Control類??丶?/p>

地圖控件概述

39百度地圖上負(fù)責(zé)與地圖交互的UI元素稱為控件。百度地圖API中可以使用BMap.Map.addControl()方法向地圖添加控件也可以向地圖添加多個(gè)控件。在本例中我們向地圖添加一個(gè)平移縮放控件、一個(gè)比例尺控件和一個(gè)縮略圖控件在地圖中添加控件后,它們即刻生效。map.addControl(new

BMap.NavigationControl());

map.addControl(new

BMap.ScaleControl());

map.addControl(new

BMap.OverviewMapControl());

控件

向地圖添加控件

40可以使用BMap.Map.addControl()方法向地圖控件

向地圖添加控件

41控件

向地圖添加控件

14所有疊加或覆蓋到地圖的內(nèi)容,我們統(tǒng)稱為地圖覆蓋物。如標(biāo)注、矢量圖形元素(包括:折線和多邊形)、信息窗口等。覆蓋物擁有自己的地理坐標(biāo),當(dāng)您拖動(dòng)或縮放地圖時(shí),它們會(huì)相應(yīng)的移動(dòng)。地圖API提供了如下幾種覆蓋物:Overlay:覆蓋物的抽象基類,此類不可實(shí)例化,所有的覆蓋物均繼承此類的方法。Marker:標(biāo)注表示地圖上的點(diǎn),可自定義標(biāo)注的圖標(biāo)。Label:表示地圖上的文本標(biāo)注,您可以自定義標(biāo)注的文本內(nèi)容。Polyline:表示地圖上的折線。Polygon:表示地圖上的多邊形。多邊形類似于閉合的折線,另外您也可以為其添加填充顏色。InfoWindow:信息窗口也是一種特殊的覆蓋物。注意:同一時(shí)刻只能有一個(gè)信息窗口在地圖上打開??梢允褂肂Map.Map.addOverlay()方法向地圖添加覆蓋物,使用BMap.Map.removeOverlay()方法移除覆蓋物,注意此方法不適用于InfoWindow。覆蓋物

地圖覆蓋物概述

42所有疊加或覆蓋到地圖的內(nèi)容,我們統(tǒng)稱為地圖覆蓋物。如標(biāo)注、矢覆蓋物

地圖覆蓋物概述

43覆蓋物

地圖覆蓋物概述

16百度地圖API中的每一個(gè)對(duì)象都含有addEventListener方法,您可以通過該方法來監(jiān)聽對(duì)象事件。例如,BMap.Map包含click、dblclick等事件。在特定環(huán)境下這些事件會(huì)被觸發(fā),同時(shí)監(jiān)聽函數(shù)會(huì)得到相應(yīng)的事件參數(shù)e,比如當(dāng)用戶點(diǎn)擊地圖時(shí),e參數(shù)會(huì)包含鼠標(biāo)所對(duì)應(yīng)的地理位置point。有關(guān)地圖API對(duì)象的事件,請(qǐng)參考完整的API參考文檔。addEventListener方法有兩個(gè)參數(shù):監(jiān)聽的事件名稱和事件觸發(fā)時(shí)調(diào)用的函數(shù)。事件

事件的監(jiān)聽

44百度地圖API中的每一個(gè)對(duì)象都含有addEventListe地圖可以包含一個(gè)或多個(gè)圖層,每個(gè)圖層在每個(gè)級(jí)別都是由若干張圖塊組成的,它們覆蓋了地球的整個(gè)表面。在最低的縮放級(jí)別(級(jí)別1)中,整個(gè)地球由4張圖塊組成。隨著級(jí)別的增長(zhǎng),地圖所使用的圖塊個(gè)數(shù)也隨之增多。地圖圖層

地圖圖層概念

45地圖可以包含一個(gè)或多個(gè)圖層,每個(gè)圖層在每個(gè)級(jí)別都是由若干張圖百度地圖中提供一個(gè)BMap.TileLayer類,可以實(shí)現(xiàn)用戶自定義圖層功能??梢栽诎俣鹊貓D上疊加一層自定義的圖塊。以下代碼在每個(gè)圖塊的所有縮放級(jí)別上顯示一個(gè)簡(jiǎn)單的透明疊加層,使用浮動(dòng)紅色小水滴表示圖塊的輪廓。var

map

=

new

BMap.Map("container");//

創(chuàng)建地圖實(shí)例

var

point

=

new

BMap.Point(116.404,

39.915);//

創(chuàng)建點(diǎn)坐標(biāo)

map.centerAndZoom(point,15);

//

初始化地圖,設(shè)置中心點(diǎn)坐標(biāo)和地圖級(jí)別

var

tilelayer

=

new

BMap.TileLayer();

//

創(chuàng)建地圖層實(shí)例

tilelayer.getTilesUrl=function(){

//

設(shè)置圖塊路徑

return

"layer.gif";

};

map.addTileLayer(tilelayer);

//

將圖層添加到地圖上

地圖圖層

自定義圖層

46百度地圖中提供一個(gè)BMap.TileLayer類,可以實(shí)現(xiàn)用地圖圖層

自定義圖層

47地圖圖層

自定義圖層

20百度地圖提供了交互功能更為復(fù)雜的“工具”,它包括PushpinTool:標(biāo)注工具。通過此工具用戶可在地圖任意區(qū)域添加標(biāo)注。DistanceTool:測(cè)距工具。通過此工具用戶可測(cè)量地圖上任意位置之間的距離。DragAndZoomTool:區(qū)域縮放工具。此工具將根據(jù)用戶拖拽繪制的矩形區(qū)域大小對(duì)地圖進(jìn)行放大或縮小操作。工具類在初始化時(shí)需要提供地圖實(shí)例參數(shù),以便使工具在該地圖上生效。您可以在地圖上添加多個(gè)工具,但同一時(shí)刻只能有一個(gè)工具處于開啟狀態(tài)。標(biāo)注工具和測(cè)距工具在完成一次操作后將自動(dòng)退出開啟狀態(tài),而區(qū)域縮放工具可以自行配置是否自動(dòng)關(guān)閉。工具

地圖工具概述

48百度地圖提供了交互功能更為復(fù)雜的“工具”,它包括工具

地圖工var

map

=

new

BMap.Map("container");

map.centerAndZoom(new

BMap.Point(116.40

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論