百度地图之修改起点和终点的icon

修改起点和终点的icon图标是有区别的,区别在于你有没有途经点,如果你的项目中只有起点和终点的话,那么你可以用第一种方法,如果有途经点的话,那么就要用第二种方法,当然第二种方法也可用于没有途径点的情况下,这个就是随君喜欢了;

1.在没有途径点的情况下修改起点和终点的icon

 

var map = new BMap.Map("allmap");
map.centerAndZoom(new BMap.Point(116.404, 39.915), 11);
map.enableScrollWheelZoom(true);
 
var p1 = new BMap.Point(116.301934,39.977552);
var p2 = new BMap.Point(116.508328,39.919141);
 
var driving = new BMap.DrivingRoute(map, {renderOptions:{map: map, autoViewport: true}});  
driving.search(p1, p2);//waypoints表示途经点
var startIcon=new BMap.Icon("../img/startIcon.png", new BMap.Size(40,50));
var endIcon = new BMap.Icon("../img/endIcon.png", new BMap.Size(40,50));
  driving.setMarkersSetCallback(function(result){
  result[0].marker.setIcon(startIcon);
  result[1].marker.setIcon(endIcon);
  })

 

2.在有途径点的情况下修改icon。如果把上面的方法用在有途经点的情况下的话,那么你的地图上的就会报出如下错误:

var map = new BMap.Map("allmap");
map.centerAndZoom(new BMap.Point(116.404, 39.915), 11);
map.enableScrollWheelZoom(true);
 
var p1 = new BMap.Point(116.301934,39.977552);
var p2 = new BMap.Point(116.508328,39.919141);
 
var myIcon = new BMap.Icon("../img/startIcon.png", new BMap.Size(40,50));
var marker2 = new BMap.Marker(p1,{icon:myIcon});  // 创建标注
map.addOverlay(marker2);
var myIcon1 = new BMap.Icon("../img/endIcon.png", new BMap.Size(40,50));
var marker3 = new BMap.Marker(p2,{icon:myIcon1});  // 创建标注
map.addOverlay(marker3);
var driving = new BMap.DrivingRoute(map, {renderOptions:{map: map, autoViewport: true},
            onPolylinesSet:function(routes) {
                searchRoute = routes[0].getPolyline();//导航路线
                map.addOverlay(searchRoute);
            },
            onMarkersSet:function(routes) {           
            map.removeOverlay(routes[0].marker); //删除起点
               map.removeOverlay(routes[routes.length-1].marker); //删除终点
            }
        });
        driving.setSearchCompleteCallback(function(){
         var plan = driving.getResults().getPlan(0);
    
        })
        driving.search(p1, p2,{waypoints:["北京科技大学","北京国际会议中心"]});//waypoints表示途经点

 

 

 

效果展示:

 

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值