1.0.0 • Published 2 years ago
geolerp v1.0.0
geolerp
interpolation for longitude and latitude over a great circle route
based on the "Intermediate points on a great circle" formulas by Ed Williams
example
var geolerp = require('geolerp')
var A = [-149.90028, +61.21806] // anchorage
var B = [+ 18.06490, +59.33258] // stockholm
var n = 11
for (var i = 0; i < n; i++) {
var t = i/(n-1)
var p = geolerp([], A, B, t)
console.log(t.toFixed(2), p)
}
output:
0.00 [ -149.90028000000004, 61.218059999999994 ]
0.10 [ -148.02326517042718, 67.07073470324161 ]
0.20 [ -144.95103502175792, 72.88727336181891 ]
0.30 [ -138.88071262672753, 78.61205934240031 ]
0.40 [ -121.62880605578731, 83.97735527020662 ]
0.50 [ -50.62617353252053, 86.44928993941012 ]
0.60 [ -2.5383284052353283, 82.33897460341065 ]
0.70 [ 9.096207391534282, 76.78928143661163 ]
0.80 [ 13.838681211676628, 71.0236549041225 ]
0.90 [ 16.419723094160904, 65.19223668904056 ]
1.00 [ 18.064900000000005, 59.332580000000014 ]
api
var geolerp = require('geolerp')
geolerp(out, A, B, t)
Interpolate the [lon,lat]
points A
and B
by t
.
As t
varies from 0.0
to 1.0
, the output traces the great circle from A
to B
.
Sets of points that have the same difference in t
will have approximately the same haversine
distance (see example/distance.js
).
license
bsd
install
npm install geolerp
1.0.0
2 years ago