检查标记是否在视图中(地图)- mapbox
Check if marker is in view (map) - mapbox
我想检查标记是在地图视图上还是在地图之外。
我正在放置地图标记,但无法检查它是否在 currentView 上。我试过下面的代码。
this.map.getBounds().包含(e.layer.getLatLng());
但它让我回归真实。
地图正在返回其旧的经纬度,即边界(我认为是)
map.getBounds().contains(myMarker.getLatLng())
map.getBounds()
: Returns 当前地图视图的 LatLngBounds。
latLngBounds.contains()
: Returns true
如果矩形包含给定的点。
myMarker.getLatLng()
:Returns标记的当前地理位置。
另请参阅:area estimation in viewpoint of map using leaflet
我使用自定义函数:
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;
}
map.getBounds().contains(myMarker.getLatLng())
map.getBounds()
: Returns 当前地图视图的 LatLngBounds。latLngBounds.contains()
: Returnstrue
如果矩形包含给定的点。myMarker.getLatLng()
:Returns标记的当前地理位置。
另请参阅:area estimation in viewpoint of map using leaflet
我使用自定义函数:
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;
}