Leaflet / Leaflet.draw

Vector drawing and editing plugin for Leaflet
https://leaflet.github.io/Leaflet.draw/docs/leaflet-draw-latest.html
MIT License
1.96k stars 992 forks source link

Add startDraw to Draw.Rectangle #1048

Open Jesperi02 opened 2 years ago

Jesperi02 commented 2 years ago

I needed to skip first click event of drawing a rectangle, because i wanted to start drawing from the maps right click event. I added a "startDraw" function to Draw.Rectangle, so i could do that. It's pretty much the _onMouseDown event of Draw.SimpleShape copy pasted. This works great on my machine, hope it work for others aswell.

Here is how i use it:

map.on('contextmenu', function(event) {
    let rectangle = new L.Draw.Rectangle(map, {
        shapeOptions: {
            color: '#3388ff',
            fillColor: '#3388ff',
            weight: 3,
            opacity: 1,
            fillOpacity: 0.2,
        },
        showArea: false
    });
        rectangle.enable();
    rectangle.startDraw(event.latlng);
});