s-haversine

Get distance between any two latitute/longitude coordinates

Usage no npm install needed!

``````<script type="module">
import sHaversine from 'https://cdn.skypack.dev/s-haversine';
</script>``````

s-haversine

This module calculates the distance between two points on Earth using lat/long coordinates. It is based on the haversine formula and includes a utility to convert from degrees/minutes/seconds to the signed decimal degrees format needed for the formula to work.

This can be used with the web Geolocation API, which provides lat/long coordinates.

Usage

Get a pair of latitude/longitude coordinates then use them as the arguments for the `distance` method. Example:

``````import haversine from 's-haversine';

// ---------- [latitude, longitude];
const coords1 = [36.151829, -115.143296];
const coords2 = [36.151465, -115.146284];

haversine.distance(coords1, coords2); // 271.314... (meters)
``````

Converting deg/min/sec to decimal

This module requires coordinates to be in a signed decimal format. If you have coordinates in degrees/minutes/seconds (DMS) format, use the `dmsToDecimal` method to convert them. For example, an input such as `40 20 50W` or `40°20'50" S` will return roughly `-40.34722`.

``````havesine.dmsToDecimal('40 20 50W'); // -40.34722... (degrees)
``````

The math involved in the haversine formula depends on knowledge of the Earth's radius. This is configured by default as `6371000` (in meters). If you need to fine tune this or use another radius, you can configure this by setting `haversine.earthRadius` to a number before calling the distance method.