This is a fork of leaflet-measure-path, which seems to no longer be maintained. It fixes some issues from the outstanding Pull Requests of that project, updates the version of leaflet used in the tests and example, and updates the tests.
Load leaflet-measure-path.js
and leaflet-measure-path.css
. Then, to enable measurements on a path:
var polygon = L.polygon([ ... ])
.addTo(map)
.showMeasurements();
To later hide measurements:
var polygon = L.polygon([ ... ])
.addTo(map)
.hideMeasurements();
The simplest way to enable measurements for a path is to pass the option showMeasurements: true
when
creating the path. To control the measurement options, you can also pass measurementOptions
, see options below.
The plugin also adds the methods listed below to Leaflet's L.Polyline
, L.Polygon
and L.Circle
classes.
Enables measurements. You can also overide the defaults by passing an options object.
showOnHover: Boolean
(defaultfalse
): iftrue
, the measurements will only show when the user hovers the cursor over the pathshowTotalDistance: Boolean
(defaulttrue
): iffalse
, the total length of polyline will not be shownminPixelDistance: Number
(default30
): the minimum pixel length a line segment in the feature must have for a measurement label to be addedformatDistance: Function
: allows to override the built-in function that formats a distance in meters to the string shown in the mapformatArea: Function
: allows to override the built-in function that formats an area in square meters to the string shown in the map
Disables measurements.
Updates the measurements displayed. Normally, this method is called automatically if the path's geometry is changed using setLatLngs
, spliceLatLngs
or when the map is zoomed. If the geometry is somehow changed by other means, this method can be called to force the measurements to update.