第一:以当前坐标为中心 按一定比例显示(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);