检查标记是否在视图中(地图) - mapbox

时间:2016-05-17 07:29:06

标签: javascript leaflet mapbox

enter image description here我想检查标记是在mapview上还是在地图外。 我正在放置地图的标记,无法检查它是否在currentView上。我试过下面的代码。      this.map.getBounds()包含(e.layer.getLatLng())。 但它让我回归真实。 map正在返回它的旧lat lng,即边界(我想是这样)

2 个答案:

答案 0 :(得分:9)

map.getBounds().contains(myMarker.getLatLng())

另请参阅:area estimation in viewpoint of map using leaflet

答案 1 :(得分:3)

我使用自定义功能:

function inBounds(point, bounds) {
  var lng = (point.lng - bounds._ne.lng) * (point.lng - bounds._sw.lng) < 0;
  var lat = (point.lat - bounds._ne.lat) * (point.lat - bounds._sw.lat) < 0;
  return lng && lat;
}