Reputation: 1127
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)
Upvotes: 8
Views: 14819
Reputation: 1268
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;
}
Upvotes: 8
Reputation: 53290
map.getBounds().contains(myMarker.getLatLng())
map.getBounds()
: Returns the LatLngBounds of the current map view.
latLngBounds.contains()
: Returns true
if 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
Upvotes: 25