Enables snapping of draggable markers to polylines and other layers !
Check out the demo !
It depends on Leaflet.GeometryUtil.
For Polyline edition snapping it also depends on Leaflet.draw.
- Add
leaflet.snap.js
andleaflet.geometryutil.js
(optionallyleaflet.draw.js
for polyline edition)
For markers :
var guideLayer = ...;
var marker = L.marker([48.488, 1.395]).addTo(map);
marker.snapediting = new L.Handler.MarkerSnap(map, marker);
marker.snapediting.addGuideLayer(guideLayer);
marker.snapediting.enable();
For polylines :
var polyline = L.polyline(...).addTo(map);
polyline.snapediting = new L.Handler.PolylineSnap(map, polyline);
polyline.snapediting.addGuideLayer(guideLayer);
polyline.snapediting.enable();
Events:
snap ( layer, latlng ) : fired when snapped to layer
at latlng
unsnap ( layer ) : fired when unsnapped from layer
- Add init hooks to simplify initialization