destination
Quick answer
destination solves the direct geodesic problem: given an origin Point, a distance and an initial bearing, it returns the destination Point along the great circle. Distances use the units option, defaulting to kilometers, and bearings are degrees clockwise from true north.
turf. destination ( origin , distance , bearing , options ?) → Feature<Point>
Key points
- Signature is turf.destination(origin, distance, bearing, {units}).
- Bearing runs from 0 to 360 degrees clockwise from north.
- turf.circle calls destination repeatedly to build its ring.
Example
var start = turf.point([116.391263, 39.907359]);
var north = turf.destination(start, 2, 0, { units: 'kilometers' });
var east = turf.destination(start, 2, 90, { units: 'kilometers' });
console.log(north.geometry.coordinates);
console.log(east.geometry.coordinates);var bearings = [
{ name: '北', deg: 0 },
{ name: '东北', deg: 45 },
{ name: '东', deg: 90 },
{ name: '南', deg: 180 },
{ name: '西', deg: -90 }
];
var ring = bearings.map(function (b) {
return turf.destination(start, 5, b.deg, { units: 'kilometers' });
});
Notes
- Long distances ignore ellipsoid flattening, so expect drift at continent scale.
- Passing a negative distance reverses travel while keeping the bearing.
English edition written for Atlaslog. Code is taken from the original Chinese page and runs unchanged.
Atlaslog (2026). destination. https://www.jingweizhi.com/en/turf/api/destination.html (accessed 2026-11-03).