CatmullRomSpline
A Catmull-Rom spline is a cubic spline where the tangent at control points, except the first and last, are computed using the previous and next control points. Catmull-Rom splines are in the class C1.
// spline above the earth from Philadelphia to Los Angeles
const spline = new CatmullRomSpline({
times : [ 0.0, 1.5, 3.0, 4.5, 6.0 ],
points : [
new Cartesian3(1235398.0, -4810983.0, 4146266.0),
new Cartesian3(1372574.0, -5345182.0, 4606657.0),
new Cartesian3(-757983.0, -5542796.0, 4514323.0),
new Cartesian3(-2821260.0, -5248423.0, 4021290.0),
new Cartesian3(-2539788.0, -4724797.0, 3620093.0)
]
});
const p0 = spline.evaluate(times[i]); // equal to positions[i]
const p1 = spline.evaluate(times[i] + delta); // interpolated value when delta < times[i + 1] - times[i]
Content copied to clipboard
See also
Types
Link copied to clipboard
interface ConstructorOptions
Properties
Link copied to clipboard
The tangent at the first control point.
Link copied to clipboard
The tangent at the last control point.
Link copied to clipboard
An array of Cartesian3 control points.
Link copied to clipboard
An array of times for the control points.