Quaternion
-
class
Quaternion
Public Functions
-
inline bool
Equals
(Quaternion const &q, int in_tolerance = HPS::Float::default_tolerance) const
-
inline Quaternion
Exp
() const
-
inline Quaternion
Lerp
(Quaternion const &in_right, float in_fraction) const
-
inline Quaternion
Log
() const
-
inline float
Norm
() const
-
inline Quaternion const &
Normalize
()
-
inline bool
operator!=
(Quaternion const &q) const
-
inline Quaternion
operator*
(float in_right) const
-
inline Quaternion
operator*
(Quaternion const &in_right) const
-
inline Quaternion
operator+
(Quaternion const &in_right) const
-
inline Quaternion
operator-
(Quaternion const &in_right) const
-
inline Quaternion
operator/
(float in_right) const
-
inline bool
operator==
(Quaternion const &q) const
-
inline
Quaternion
()
-
inline
Quaternion
(float in_w, float in_x, float in_y, float in_z)
-
inline
Quaternion
(Quaternion const &that)
-
inline Quaternion
Slerp
(Quaternion const &in_right, float in_fraction, bool in_shortest_path_only = true) const
-
inline Quaternion
Spline
(Quaternion const &in_previous, Quaternion const &in_next) const Calculate a control point to be used in spline interpolation
Parameters: - in_previous – The control point before this
- in_next – The control point after this
Returns: Resultant spline control point
-
inline Quaternion
Squad
(Quaternion const &in_right, Quaternion const &in_control1, Quaternion const &in_control2, float in_fraction) const Spherical cubic interpolation between two Quaternions
Parameters: - in_right – The Quaternion for interpolation.
- in_control1 – The first control point.
- in_control2 – The second control point.
- in_fraction – Interpolation distance (0 - 1).
Returns: Result of interpolation.
Public Static Functions
-
static inline Quaternion
ComputeRotation
(float in_degrees, HPS::Vector const &in_axis) Computes a quaternion from a rotation about an axis.
Parameters: - in_degrees – The angle in degrees to rotate.
- in_axis – The axis to rotate about.
Returns: The resulting Quaternion object.
-
static inline Quaternion
ComputeRotation
(float in_x, float in_y, float in_z) Computes a quaternion from a rotation around the primary axes.
Parameters: - in_x – The number of degrees to rotate around the x-axis.
- in_y – The number of degrees to rotate around the y-axis.
- in_z – The number of degrees to rotate around the z-axis.
Returns: The resulting Quaternion object.
Friends
-
inline friend Quaternion
operator*
(float in_left, Quaternion const &in_right)
-
inline bool