成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

詳解百度地圖API之自定義地圖類型

開發 前端
本文將給大家介紹如何利用地圖API實現自定義地圖。百度地圖API目前默認支持兩種地圖類型(map type):普通圖和三維圖。

今天的文章主要介紹如何利用地圖API實現自定義地圖。

  百度地圖API目前默認支持兩種地圖類型(map type):普通圖和三維圖,它們分別通過常量BMAP_NORMAL_MAP和BMAP_PERSPECTIVE_MAP來表示,在1.2版本中這兩個常量實際上是MapType對象的實例。當然開發者也可以自己實例化一個MapType從而實現一個自定義的地圖。

  切圖工具的使用

  我們先從切圖工具的使用開始,接著再分析該工具產生的代碼來詳細了解自定義地圖的方法。切圖工具放在了github上,具體地址為:https://github.com/jiazheng/BaiduMapTileCutter,進入后請下載TileCutter.exe:

  注意,該工具是基于.NET平臺開發的,所以要求有.NET Framework 4 以上的版本。

  啟動這個exe后會出現這個界面:

首先我們要做的就是選擇一張圖片作為地圖的底圖(圖片下載自這里):

點擊下一步后需要設置輸出的目錄,這里我們直接選擇桌面:

  繼續下一步,這里要設置輸出類型,我們使用默認值,即圖塊和相關代碼都由工具生成:

  坐標設置我們使用默認值,即圖片的中心點所在的位置。由于我們制作的是獨立的地圖類型,所以中心點設置為0, 0即可。

  級別范圍設置:我們使用自定義,將范圍設置為5到10級,原圖放置在第10級,這樣5到9級工具就會自動縮小圖片。建議原圖所在級別與最大級別一致,否則高于原圖所在級別的時候圖片會發虛(因為工具會將圖片進行放大處理)。

設置地圖類型的名稱:

  一切就緒,最后可以確認所有的信息是否正確。然后就可以點擊“開始切圖”了。

完成了:

  這時我們會發現桌面多了一個index.html和一個tiles文件夾。我們打開index.html會看到結果:

源代碼解析

  現在再來看看這個頁面的代碼部分:

  1.   <!DOCTYPE html> 
  2.   <html> 
  3.   <head> 
  4.   <title>自定義地圖類型</title> 
  5.   <meta http-equiv="Content-Type"content="text/html; charset=utf-8"/> 
  6.   <script type="text/javascript"src="http://api.map.baidu.com/api?v=1.2"></script> 
  7. </head> 
  8.   <body> 
  9.   <div id="map"style="width:800px;height:540px"></div> 
  10.   <script type="text/javascript"> 
  11.   vartileLayer =newBMap.TileLayer();  
  12.   tileLayer.getTilesUrl =function(tileCoord, zoom) {varx =tileCoord.x;vary =tileCoord.y;return'tiles/'+zoom +'/tile'+x +'_'+y +'.png';  
  13.   }varMyMap =newBMap.MapType('MyMap', tileLayer, {minZoom: 5, maxZoom: 10});varmap =newBMap.Map('map', {mapType: MyMap});  
  14.   map.addControl(newBMap.NavigationControl());  
  15.   map.centerAndZoom(newBMap.Point(0, 0), 10);</script> 
  16.   </body> 
  17.   </html> 

  代碼先創建了一個TileLayer實例,它代表一個圖層,接著實現getTilesUrl方法提供圖片的路徑。getTilesUrl方法由API在鋪圖的時候進行調用,調用時會提供圖塊編號和級別信息,開發者要做的就是根據圖塊編號和級別信息返回正確圖片地址(有關坐標和圖塊編號的內容可以閱讀此文)。

  下面代碼創建一個MapType實例,第一個參數為地圖類型的名字,第二個參數為地圖類型所對應的圖層,這里我們直接傳遞之前創建的TileLayer實例,后面是一些可選的配置參數,這里指定了最小級別和最大級別。

  后面的代碼就很簡單了,創建map實例,并通過配置參數指定地圖類型為MyMap。

  如果大家有月球或火星的圖片,那么創建一個月球地圖或者火星地圖也就不是一件難事了。

原文鏈接:http://www.cnblogs.com/jz1108/archive/2011/10/08/2202239.html

【編輯推薦】

  1. 詳解百度地圖API之地圖標注
  2. 百度地圖API之如何制作駕車導航
  3. 架構師 如何從夢想變成現實?
  4. 談談對于企業級系統架構的理解
  5. 怎么成為一個軟件架構師
責任編輯:彭凡 來源: 博客園
相關推薦

2011-09-29 11:00:54

百度地圖API

2011-09-26 10:05:19

百度地圖API

2011-09-16 10:37:42

地圖API

2011-10-21 09:11:41

百度地圖API

2011-09-16 14:39:02

百度地圖API

2011-10-24 14:01:29

API

2011-10-21 10:16:25

百度地圖API

2011-10-21 09:28:25

百度地圖API

2013-04-08 14:59:54

Android學習筆記百度地圖Overlay

2021-06-15 14:33:00

高德百度騰訊

2012-02-01 09:33:36

百度地圖API

2022-03-27 10:04:23

Angular8項目vue

2011-05-25 14:36:17

2012-02-03 14:01:15

地圖

2013-04-08 14:46:42

Android學習筆記百度地圖

2011-12-29 16:18:14

API

2020-12-11 22:02:00

百度地圖Apollo

2020-11-26 15:09:49

數據安全百度地圖機器學習

2010-09-03 09:28:30

2012-03-08 14:20:05

HTML 5
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 中文字幕在线观看第一页 | 91九色视频 | www.久| 国产在线h | 一区二区三区av | 亚洲综合色丁香婷婷六月图片 | 一级黄色av电影 | 久久久久久久久久久福利观看 | 三级视频国产 | 成人午夜精品 | 伊人久久综合 | 成人在线视频观看 | av网站免费在线观看 | 欧美伊人久久久久久久久影院 | av片在线观看 | 91看片在线观看 | 这里有精品| 免费av电影网站 | 成人免费视频在线观看 | 在线永久看片免费的视频 | 99久久免费精品视频 | 国产高清视频一区二区 | 欧美一级欧美三级在线观看 | 色吊丝在线 | 亚洲狠狠丁香婷婷综合久久久 | 精品久久一 | 久久久精品日本 | 国产成人亚洲精品自产在线 | 精品日韩 | 午夜av一区二区 | 国产精品久久精品 | a欧美 | 成人免费观看男女羞羞视频 | 一区二区久久 | 国产在线中文 | 91精品久久久久久久久久入口 | 欧美成人一区二区 | 午夜爽爽爽男女免费观看影院 | 欧美在线日韩 | 国产欧美在线视频 | 亚洲一区二区三区视频 |