百度地图获取可视区域及回调事件的用法简介
百度地图获取可视区域及回调事件的用法简介
记录使用百度地图获取可视区域、回调事件的用法。
可视区域
使用百度地图获取可视区域的坐标点的方法:
原理:通过地图状态方法的接口getBounds()可获取到Bounds对象,包含东北和西南角的坐标点。
// 获取地图可视化区域的坐标点
function getViewAreaPoint(map) {
var bounds = map.getBounds();
console.log(bounds);
var swPoint = bounds.getSouthWest();
var nePoint = bounds.getNorthEast();
var nwPoint = new BMap.Point(swPoint.lng, nePoint.lat);
var sePoint = new BMap.Point(nePoint.lng, swPoint.lat);
console.log(swPoint);
console.log(nePoint);
console.log(nwPoint);
console.log(sePoint);
}
事件监听
原理:定义事件回调函数,添加事件的监听。
以click事件为例:
map.addEventListener("click", showInfo);
function showInfo(e) {
console.debug(e);
console.debug(e.type);
console.debug(e.target);
console.debug(e.point);
console.debug(e.pixel);
console.debug(e.overlay);
// console.debug(e.point.lng + ", " + e.point.lat);
}
百度地图的JavaScript类参考中列举click事件的说明: 事件: click 参数:(type, target, point, pixel, overlay) 描述:左键单击地图时触发此事件。
参数的说明: type: 事件类型(“onclick”) target: 地图实例 point: 经纬度坐标点Point对象 pixel: 像素坐标 overlay: 覆盖物对象
【以上】