What is @turf/destination?
@turf/destination is a module from the Turf.js library that allows you to calculate the destination point given a starting point, distance, and bearing. It is useful for geospatial analysis and manipulation, particularly in applications involving mapping, navigation, and geographic data processing.
What are @turf/destination's main functionalities?
Calculate Destination Point
This feature allows you to calculate the destination point from a given starting point, distance, and bearing. The code sample demonstrates how to use the @turf/destination module to find a point 50 miles east of the starting point.
const turf = require('@turf/turf');
const start = turf.point([-75.343, 39.984]);
const distance = 50;
const bearing = 90;
const options = {units: 'miles'};
const destination = turf.destination(start, distance, bearing, options);
console.log(destination);
Other packages similar to @turf/destination
geolib
Geolib is a library for geospatial calculations in JavaScript. It provides similar functionalities to @turf/destination, such as calculating distances, bearings, and destination points. However, Geolib is a more general-purpose library for geospatial calculations, whereas @turf/destination is part of the Turf.js library, which is specifically designed for advanced geospatial analysis.
geodesy
Geodesy is a library for geodesic calculations in JavaScript. It offers functionalities for calculating distances, bearings, and destination points, similar to @turf/destination. Geodesy focuses on precise geodesic calculations, making it suitable for applications requiring high accuracy. In comparison, @turf/destination is part of the Turf.js library, which provides a broader range of geospatial analysis tools.
@turf/destination
destination
Takes a Point and calculates the location of a destination point given a distance in degrees, radians, miles, or kilometers; and bearing in degrees. This uses the Haversine formula to account for global curvature.
Parameters
from
Feature<Point> starting pointdistance
number distance from the starting pointbearing
number ranging from -180 to 180units
[string] miles, kilometers, degrees, or radians (optional, default kilometers
)
Examples
var point = {
"type": "Feature",
"properties": {
"marker-color": "#0f0"
},
"geometry": {
"type": "Point",
"coordinates": [-75.343, 39.984]
}
};
var distance = 50;
var bearing = 90;
var units = 'miles';
var destination = turf.destination(point, distance, bearing, units);
destination.properties['marker-color'] = '#f00';
var result = {
"type": "FeatureCollection",
"features": [point, destination]
};
Returns Feature<Point> destination point
This module is part of the Turfjs project, an open source
module collection dedicated to geographic algorithms. It is maintained in the
Turfjs/turf repository, where you can create
PRs and issues.
Installation
Install this module individually:
$ npm install @turf/destination
Or install the Turf module that includes it as a function:
$ npm install @turf/turf