Geographic Point
GeoPoint represents a geographic point for node.js and the browser, and provides distance between points and radius bounding box calculations.
Installation
npm install geopoint
Usage
var GeoPoint = require('geopoint'),
statueOfLiberty = new GeoPoint(40.689604, -74.04455);
Constructor options
latitude
: Latitudelongitude
: LongitudeinRadians
:true
if the latitude and longitude are in radians, defaults tofalse
Methods
.latitude(inRadians)
: Return the point's latitude. By default, the latitude is in degrees, unlessinRadians
istrue
.longitude(inRadians)
: Return the point's longitude. By default, the longitude is in degrees, unlessinRadians
istrue
.distanceTo(point, inKilometers)
: Calculate the distance to anotherGeoPoint
instance. By default, the distance is calculated in miles, unlessinKilometers
istrue
.boundingCoordinates(distance, radius, inKilometers)
: Calculates the bounding coordinates ofdistance
from the point and returns an array with the SW and NE points of the bounding box . Ifradius
is not provided, the radius of the Earth will be used. The distance is calculated in miles unlessinKilometers
istrue
Static Methods
GeoPoint.degreesToRadians(value)
: Convertsvalue
in degrees to radiansGeoPoint.radiansToDegrees(value)
: Convertsvalue
in radians to degreesGeoPoint.milesToKilometers(value)
: Convertsvalue
in miles to kilometersGeoPoint.kilometersToMiles(value)
: Convertsvalue
in kilometers to miles
Browser Support
The GeoPoint
constructor is exposed via window.GeoPoint
.
Running Tests
Cachetree tests require Mocha and can be run with either npm test
. You can specify Mocha options, such as the reporter, by adding a mocha.opts file, which is ignored by git, to the test
directory.
Credits
This library is derived from the code presented in Finding Points Within a Distance of a Latitude/Longitude Using Bounding Coordinates by Jan Philip Matuschek.