问题
I want to check if marker is on mapview or out of the map. I am putting marker of the map and not able to check if it on currentView or not. I have tried below code. this.map.getBounds().contains(e.layer.getLatLng()); but it is returning me true. map is returning its old lat lng i.e bounds (I think so)
回答1:
map.getBounds().contains(myMarker.getLatLng())
map.getBounds(): Returns the LatLngBounds of the current map view.
latLngBounds.contains(): Returns
trueif the rectangle contains the given point.myMarker.getLatLng(): Returns the current geographical position of the marker.
See also: area estimation in viewpoint of map using leaflet
回答2:
I use custom function:
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;
}
来源:https://stackoverflow.com/questions/37269764/check-if-marker-is-in-view-map-mapbox