A spline that uses spherical linear (slerp) interpolation to create a quaternion curve.
The generated curve is in the class C1.
Name | Type | Description | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
options |
Object |
Object with the following properties:
|
Throws:
-
DeveloperError : points.length must be greater than or equal to 2.
-
DeveloperError : times.length must be equal to points.length.
Members
-
readonlypoints : Array.<Quaternion>
-
An array of
Quaternion
control points. -
An array of times for the control points.
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. -
evaluate(time, result) → Quaternion
-
Evaluates the curve at a given time.
Name Type Description time
Number The time at which to evaluate the curve. result
Quaternion 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.