0.7.0 • Published 6 years ago

leaflet-switch-scale-control v0.7.0

Weekly downloads
42
License
MIT
Repository
github
Last release
6 years ago

Leaflet-Switch-Scale-Control

Leaflet switch scale control is used to select and display map scale from dropdown list. Depends on:

DEMO

API

Install

npm install leaflet-switch-scale-control

Usage

map.addControl(new L.Control.SwitchScaleControl(options));

Options

Specified below values are default

    position: 'bottomleft',  // Leaflet control position.
    dropdownDirection: 'upward', // Specifies direction of dropdown's openning.
    className: 'map-control-scalebar', // Control's wrapper class.
    updateWhenIdle: false, // Control's wrapper class.
    ratio: false, // Flag: whether to display ratio prefix.
    ratioPrefix: '1:', // Ratio prefix text.
    ratioCustomItemText: '1: Entrez une valeur', // Custom ratio text.
    customScaleTitle: 'Entrez une valeur et appuyez sur Entrée', // Custom scale title text.
    ratioMenu: true,
    // If recalcOnZoomChange is false, then recalcOnPositionChange is always false.
    recalcOnPositionChange: false, // Flag: whether to recalc scale on map position change.
    recalcOnZoomChange: true, // Flag: whether to recalc scale on map zoom change.
    scales: [500, 1000, 2000, 5000, 10000, 25000, 50000, 100000, 200000, 500000, 1000000, 2500000, 5000000, 10000000], // Array of available to select scales
    roundScales: null,// Array of available to display rounded scales
    adjustScales: false, // Flag: whether to adjust custom scale to max of scales
    splitScale: false, // if true 1:1500000 => 1:1'500'000 in scale display
    pixelsInMeterWidth: function,
    getMapWidthForLanInMeters: function

pixelsInMeterWidth: returns pixels per meter; needed if ratio: true.

    pixelsInMeterWidth: function () {
      var div = document.createElement("div");
      div.style.cssText = "position: absolute;  left: -100%;  top: -100%;  width: 100cm;";
      document.body.appendChild(div);
      var px = div.offsetWidth;
      document.body.removeChild(div);
      return px;
    }

getMapWidthForLanInMeters: returns width of map in meters on specified latitude.

    getMapWidthForLanInMeters: function (currentLan) {
      return 6378137 * 2 * Math.PI * Math.cos(currentLan * Math.PI / 180);
    }
0.7.0

6 years ago

0.6.9

6 years ago

0.6.6

6 years ago

0.6.5

6 years ago

0.6.4

6 years ago

0.6.3

6 years ago

0.6.2

6 years ago

0.6.1

6 years ago

0.6.0

6 years ago

0.5.2

6 years ago

0.5.1

6 years ago

0.5.0

6 years ago

0.4.4

6 years ago

0.4.3

6 years ago

0.4.2

6 years ago

0.4.1

6 years ago

0.4.0

6 years ago

0.3.1

6 years ago

0.3.0

6 years ago

0.2.0

6 years ago

0.1.0

6 years ago