leaflet-locationfilter
Provides a location filter for Leaflet. In short, the location filter is a draggable/resizable rectangle. It is integrated with your application through a set of callbacks that are called when the user interacts with the filter.
leaflet-locationfilter is developed by Tripbirds.com. You may see it in action here.
Another similar plugin is Leaflet.AreaSelect, which solves the same problem, but with a fixed and centered rectangle, that can't be moved, and that has support for locking the aspect ratio of the selection.
Usage
Create a new LocationFilter and add it to the map:
var locationFilter = ;
Bind some events:
locationFilter; locationFilter; locationFilter;
Get the current bounds:
var bounds = locationFilter;
Check if the location filter is enabled:
var isEnabled = locationFilter;
Options
bounds (optional): The initial bounds for the location filter. Defaults to the maps own bounds.
enable (optional): Set to true to enable the filter as soon as it is added to the map. Defaults to false.
buttonPosition: Set to position the associated buttons on the map. Defaults to 'topleft'.
Events
change: Fired when the location filter changes size or position.
enabled:: Fired when the location filter gets enabled.
disabled: Fired when the location filter gets disabled.
enableClick: Fired when the user clicks the enable button.
disableClick: Fired when the user clicks the disable button.
adjustToZoomClick: Fired when the user clicks the adjust button.
License
leaflet-locationfilter is free software, and may be redistributed under the MIT-LICENSE.