A spline that linearly interpolates over an array of weight values used by morph targets.
Name | Type | Description | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
options |
Object |
Object with the following properties:
|
Throws:
-
DeveloperError : weights.length must be greater than or equal to 2.
-
DeveloperError : times.length must be a factor of weights.length.
Example:
var times = [ 0.0, 1.5, 3.0, 4.5, 6.0 ];
var weights = [0.0, 1.0, 0.25, 0.75, 0.5, 0.5, 0.75, 0.25, 1.0, 0.0]; //Two targets
var spline = new Cesium.WeightSpline({
times : times,
weights : weights
});
var p0 = spline.evaluate(times[0]);
See:
Members
-
An array of times for the control weights.
-
An array of floating-point array control weights.
Methods
-
Clamps the given time to the period covered by the spline.
Name Type Description time
Number The time. Returns:
The time, clamped to the animation period. -
Evaluates the curve at a given time.
Name Type Description time
Number The time at which to evaluate the curve. result
Array.<Number> optional The object onto which to store the result. Returns:
The modified result parameter or a new instance of the point on the curve at the given time.Throws:
-
DeveloperError : time must be in the range
[t0, tn]
, wheret0
is the first element in the arraytimes
andtn
is the last element in the arraytimes
.
-
-
Finds an index
i
intimes
such that the parametertime
is in the interval[times[i], times[i + 1]]
.Name Type Description time
Number The time. Returns:
The index for the element at the start of the interval.Throws:
-
DeveloperError : time must be in the range
[t0, tn]
, wheret0
is the first element in the arraytimes
andtn
is the last element in the arraytimes
.
-
-
Wraps the given time to the period covered by the spline.
Name Type Description time
Number The time. Returns:
The time, wrapped around to the updated animation.