百度地图之根据地图上的点确定地图的放缩比例

第一:以当前坐标为中心 按一定比例显示(map.centerAndZoom(pointLocation, 5);根据设置后面的参数)
        var pointLocation = new BMap.Point(location.longitude, location.latitude);  //创建点坐标 当前位置
        map.centerAndZoom(pointLocation, 5);
        addMapControl();//向地图添加控件
        var markerLocation = new BMap.Marker(pointLocation);//标注
        map.addOverlay(markerLocation);
        //自定义覆盖物
        var CircleLocation = new BMap.Circle(pointLocation, 600, {
          strokeColor: "blue",
          strokeWeight: 1,
          strokeOpacity: 0.5
        });
        map.addOverlay(CircleLocation);
第二:根据两点的位置来确定地图的放缩比例
var pointLocation = new BMap.Point(location.longitude, location.latitude);  // 创建点坐标 当前位置
var pointCustomer = new BMap.Point(customerLocation.longitude, customerLocation.latitude);  // 创建点坐标 客户
var points = [pointLocation, pointCustomer];
var view = map.getViewport(eval(points));
var mapZoom = view.zoom;
var centerPoint = view.center;
map.centerAndZoom(centerPoint, mapZoom);
addMapControl();//向地图添加控件
//标注
var markerLocation = new BMap.Marker(pointLocation);
var markerCustomer = new BMap.Marker(pointCustomer);
map.addOverlay(markerLocation);
map.addOverlay(markerCustomer);
markerCustomer.addEventListener("click", function () { //点击标注时触发事件
   map.openInfoWindow(infoWindow, pointCustomer);
});
//信息框
var infoWindow = new BMap.InfoWindow("地址:" + customerLocation.street, opts);
map.openInfoWindow(infoWindow, pointCustomer);
//自定义覆盖物
var circleCustomer = new BMap.Circle(pointCustomer, 40, {
   strokeColor: "red",
   strokeWeight: 1,
   strokeOpacity: 1
});
var CircleLocation = new BMap.Circle(pointLocation, 200, {
   strokeColor: "blue",
   strokeWeight: 1,
   strokeOpacity: 0.5
});
map.addOverlay(circleCustomer);
map.addOverlay(CircleLocation);
 

转载于:https://my.oschina.net/666666hq/blog/703930

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值