Code Monkey home page Code Monkey logo

leaflet-area-select's Introduction

leaflet-area-select npm version CircleCI

Control to just select an area and provide bbox for it

Include

Browserify, Webpack

npm install --save leaflet-area-select
var SelectArea = require('leaflet-area-select');
// or
import SelectArea from 'leaflet-area-select';

Browser

<script type="text/javascript" src="path/to/Map.SelectArea.min.js"></script>

Usage

Including the handler into the project will automatically add it to the L.Map, so to enable/disable it you can use methods:

let map = new L.Map('map', {
  selectArea: true // will enable it by default
});

// or
map.selectArea.enable();

map.on('areaselected', (e) => {
  console.log(e.bounds.toBBoxString()); // lon, lat, lon, lat
});

// You can restrict selection area like this:
const bounds = map.getBounds().pad(-0.25); // save current map bounds as restriction area
// check restricted area on start and move
map.selectArea.setValidate((layerPoint) => {
  return bounds.contains(
    this._map.layerPointToLatLng(layerPoint)
  );
});

// now switch it off
map.selectArea.setValidate();

Key-strokes

// dragging will be enabled and you can 
// start selecting with Ctrl key pressed
map.selectArea.setCtrlKey(true); 

// box-zoom will be disabled and you can 
// start selecting with Shift key pressed
map.selectArea.setCtrlKey(true); 

License

MIT

leaflet-area-select's People

Contributors

w8r avatar rumax avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.