ndarray-linear-interpolate
v1.0.0
Published
Multilinear interplation for ndarrays
Downloads
264,066
Readme
ndarray-linear-interpolate
Multilinear (ie bilinear/trilinear) interpolation for ndarrays.
Example
var ndarray = require("ndarray")
var interp = require("ndarray-linear-interpolate")
var x = ndarray(new Float32Array(9), [3, 3])
x.set(1, 1, 1.0)
for(var u=0.0, u<=3.0; u+=0.25) {
var row = []
for(var v=0.0; v<=3.0; v+=0.25) {
row.push(interp(x, u, v))
}
console.log(row.join(" "))
}
//Prints out:
//
// 0 0 0 0 0 0 0 0 0 0 0 0 0
// 0 0.0625 0.125 0.1875 0.25 0.1875 0.125 0.0625 0 0 0 0 0
// 0 0.125 0.25 0.375 0.5 0.375 0.25 0.125 0 0 0 0 0
// 0 0.1875 0.375 0.5625 0.75 0.5625 0.375 0.1875 0 0 0 0 0
// 0 0.25 0.5 0.75 1 0.75 0.5 0.25 0 0 0 0 0
// 0 0.1875 0.375 0.5625 0.75 0.5625 0.375 0.1875 0 0 0 0 0
// 0 0.125 0.25 0.375 0.5 0.375 0.25 0.125 0 0 0 0 0
// 0 0.0625 0.125 0.1875 0.25 0.1875 0.125 0.0625 0 0 0 0 0
// 0 0 0 0 0 0 0 0 0 0 0 0 0
// 0 0 0 0 0 0 0 0 0 0 0 0 0
// 0 0 0 0 0 0 0 0 0 0 0 0 0
// 0 0 0 0 0 0 0 0 0 0 0 0 0
// 0 0 0 0 0 0 0 0 0 0 0 0 0
//
Install
npm install ndarray-linear-interpolate
require("ndarray-linear-interpolate")(array, x, y, z, ...)
Interpolates values on an ndarray.
array
the array to interpolate fromx, y, z...
the coordinate to evaluate the interpolated grid at
Returns The multilinearly interpolated value
Note To avoid the overhead of variable arguments, special interfaces are available for 1, 2 and 3 dimensions. You can access these using:
require("ndarray-linear-interpolate").d1
require("ndarray-linear-interpolate").d2
require("ndarray-linear-interpolate").d3
Credits
(c) 2013 Mikola Lysenko. MIT License