Class Slerp
java.lang.Object
org.apache.commons.numbers.quaternion.Slerp
- All Implemented Interfaces:
DoubleFunction<Quaternion>
Perform spherical linear interpolation (Slerp).
The Slerp algorithm is designed to interpolate smoothly between
two rotations/orientations, producing a constant-speed motion along an arc.
The original purpose of this algorithm was to animate 3D rotations. All output
quaternions are in positive polar form, meaning a unit quaternion with a positive
scalar component.
-
Constructor Summary
Constructors -
Method Summary
-
Constructor Details
-
Slerp
Create an instance.- Parameters:
start- Start of the interpolation.end- End of the interpolation.
-
-
Method Details
-
apply
Performs the interpolation. The rotation returned by this method is controlled by the interpolation parameter,t. All other values are interpolated (or extrapolated iftis outside of the[0, 1]range). The returned quaternion is in positive polar form, meaning that it is a unit quaternion with a positive scalar component.- Specified by:
applyin interfaceDoubleFunction<Quaternion>- Parameters:
t- Interpolation control parameter. Whent = 0, a rotation equal to the start instance is returned. Whent = 1, a rotation equal to the end instance is returned.- Returns:
- an interpolated quaternion in positive polar form.
-