成人免费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-10-24 14:01:29

API

2011-09-16 14:39:02

百度地圖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

2013-04-08 14:46:42

Android學習筆記百度地圖

2011-05-25 14:36:17

2012-02-03 14:01:15

地圖

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技術棧公眾號

主站蜘蛛池模板: 毛片国产| 国产精品99久久久久久久久久久久 | 国产一区二区久久久 | 成人在线电影在线观看 | 日韩免费毛片 | 插插宗合网 | 国产午夜一级 | 91精品国产一区二区三区动漫 | 日韩亚洲视频 | 精品国产一区二区三区性色av | 国产一区二区 | 区一区二在线观看 | 伊人网站在线观看 | 亚洲电影中文字幕 | 成人久久 | 在线观看国产 | 一级毛片视频在线 | 久久机热 | 国产精品久久久久久久久久久免费看 | 99视频免费 | 欧美精品福利视频 | 午夜成人在线视频 | av中文字幕在线观看 | 国产精品久久久久久久久久久免费看 | 天天操夜夜艹 | 精品熟人一区二区三区四区 | 密室大逃脱第六季大神版在线观看 | 人妖videosex高潮另类 | 欧美日韩国产一区二区三区 | 亚洲精品国产综合区久久久久久久 | 亚洲精品日韩欧美 | 久久久久一区 | 日韩欧美在线免费观看 | 日操操| 久久久久国产精品一区二区 | 国产成人精品久久二区二区 | 本道综合精品 | 国产美女在线免费观看 | 美女视频一区 | 亚洲 精品 综合 精品 自拍 | 久久久免费在线观看 |