百度地圖API 自定義標註圖示
阿新 • • 發佈:2018-12-20
通過Icon類可實現自定義標註的圖示,下面示例通過引數MarkerOptions的icon屬性進行設定, 也可以使用marker.setIcon()方法。
<script type="text/javascript"> // 百度地圖API功能 var map = new BMap.Map("allmap"); // 建立Map例項 map.centerAndZoom(new BMap.Point(116.323066,39.989956), 16); // 初始化地圖,設定中心點座標和地圖級別 map.addControl(new BMap.MapTypeControl()); //新增地圖型別控制元件 map.setCurrentCity("北京"); // 設定地圖顯示的城市 此項是必須設定的 map.enableScrollWheelZoom(true); //開啟滑鼠滾輪縮放 var points = [ [116.316967,39.990748], [116.323938,39.989919], [116.328896,39.988039], [116.321135,39.987072], [116.332453,39.989007], [116.324045,39.987984 ], [116.322285,39.988316], [116.322608,39.986381] ]; // 向地圖新增標註 for( var i = 0;i < points.length; i++){ var myIcon = new BMap.Icon("http://7xic1p.com1.z0.glb.clouddn.com/markers.png", new BMap.Size(23, 25), { // 指定定位位置 offset: new BMap.Size(10, 25), // 當需要從一幅較大的圖片中擷取某部分作為標註圖示時,需要指定大圖的偏移位置 imageOffset: new BMap.Size(0, 0 - i * 25) // 設定圖片偏移 }); var point = new BMap.Point(points[i][0],points[i][1]); // 建立標註物件並新增到地圖 var marker = new BMap.Marker(point,{icon: myIcon}); map.addOverlay(marker); };</script>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
所使用圖片:
演示地址:點選