turf中有几个关于角度、距离、方位的方法,可用于计算点位置。
一、rhumbBearing
计算(p1、p2)和正北方向的夹角,如图地图指向正北方向,p1、p2和正北方向的夹角是66.63
let p1 = [113.389, 38.094669];
let p2 = [113.390968, 38.095338];
let t1 = turf.point(p1);
let t2 = turf.point(p2);
// p1、p2和正北方向的夹角
let bearing = turf.rhumbBearing(t1, t2);
二、distance
计算(p1、p2)的距离
let length = turf.distance(t1, t2, { units: 'miles' });
三、destination
已知一个点,根据到这个点的距离、这个点和正北方向的夹角,计算出目标点的位置
用上面的p1+length+bearing,可验证p2的位置
let dest1 = turf.destination(p1, length, bearing, { units: 'miles' })