Urho3D::Quaternion Class Reference
Urho3D::Quaternion Class Reference
Rotation represented as a four-dimensional normalized vector. More...
#include <Urho3D/Math/Quaternion.h>
Collaboration diagram for Urho3D::Quaternion:
Public Member Functions | |
| Quaternion () noexcept | |
| Construct an identity quaternion. | |
| Quaternion (const Quaternion &quat) noexcept | |
| Copy-construct from another quaternion. | |
| Quaternion (float w, float x, float y, float z) noexcept | |
| Construct from values. | |
| Quaternion (const float *data) noexcept | |
| Construct from a float array. | |
| Quaternion (float angle, const Vector3 &axis) noexcept | |
| Construct from an angle (in degrees) and axis. | |
| Quaternion (float angle) noexcept | |
| Construct from an angle (in degrees, for Urho2D). | |
| Quaternion (float x, float y, float z) noexcept | |
| Construct from Euler angles (in degrees). Equivalent to Y*X*Z. | |
| Quaternion (const Vector3 &angles) noexcept | |
| Construct from Euler angles (in degrees). | |
| Quaternion (const Vector3 &start, const Vector3 &end) noexcept | |
| Construct from the rotation difference between two direction vectors. | |
| Quaternion (const Vector3 &xAxis, const Vector3 &yAxis, const Vector3 &zAxis) noexcept | |
| Construct from orthonormal axes. | |
| Quaternion (const Matrix3 &matrix) noexcept | |
| Construct from a rotation matrix. | |
| Quaternion & | operator= (const Quaternion &rhs) noexcept |
| Assign from another quaternion. | |
| Quaternion & | operator+= (const Quaternion &rhs) |
| Add-assign a quaternion. | |
| Quaternion & | operator*= (float rhs) |
| Multiply-assign a scalar. | |
| bool | operator== (const Quaternion &rhs) const |
| Test for equality with another quaternion without epsilon. | |
| bool | operator!= (const Quaternion &rhs) const |
| Test for inequality with another quaternion without epsilon. | |
| Quaternion | operator* (float rhs) const |
| Multiply with a scalar. | |
| Quaternion | operator- () const |
| Return negation. | |
| Quaternion | operator+ (const Quaternion &rhs) const |
| Add a quaternion. | |
| Quaternion | operator- (const Quaternion &rhs) const |
| Subtract a quaternion. | |
| Quaternion | operator* (const Quaternion &rhs) const |
| Multiply a quaternion. | |
| Vector3 | operator* (const Vector3 &rhs) const |
| Multiply a Vector3. | |
| void | FromAngleAxis (float angle, const Vector3 &axis) |
| Define from an angle (in degrees) and axis. | |
| void | FromEulerAngles (float x, float y, float z) |
| Define from Euler angles (in degrees). Equivalent to Y*X*Z. | |
| void | FromRotationTo (const Vector3 &start, const Vector3 &end) |
| Define from the rotation difference between two direction vectors. | |
| void | FromAxes (const Vector3 &xAxis, const Vector3 &yAxis, const Vector3 &zAxis) |
| Define from orthonormal axes. | |
| void | FromRotationMatrix (const Matrix3 &matrix) |
| Define from a rotation matrix. | |
| bool | FromLookRotation (const Vector3 &direction, const Vector3 &up=Vector3::UP) |
| Define from a direction to look in and an up direction. Return true if successful, or false if would result in a NaN, in which case the current value remains. | |
| void | Normalize () |
| Normalize to unit length. | |
| Quaternion | Normalized () const |
| Return normalized to unit length. | |
| Quaternion | Inverse () const |
| Return inverse. | |
| float | LengthSquared () const |
| Return squared length. | |
| float | DotProduct (const Quaternion &rhs) const |
| Calculate dot product. | |
| bool | Equals (const Quaternion &rhs) const |
| Test for equality with another quaternion with epsilon. | |
| bool | IsNaN () const |
| Return whether any element is NaN. | |
| bool | IsInf () const |
| Return whether any element is Inf. | |
| Quaternion | Conjugate () const |
| Return conjugate. | |
| Vector3 | EulerAngles () const |
| float | YawAngle () const |
| float | PitchAngle () const |
| float | RollAngle () const |
| Vector3 | Axis () const |
| float | Angle () const |
| Matrix3 | RotationMatrix () const |
| Quaternion | Slerp (const Quaternion &rhs, float t) const |
| Spherical interpolation with another quaternion. | |
| Quaternion | Nlerp (const Quaternion &rhs, float t, bool shortestPath=false) const |
| Normalized linear interpolation with another quaternion. | |
| const float * | Data () const |
| Return float data. | |
| String | ToString () const |
| Return as string. | |
Public Attributes | |
| float | w_ |
| W coordinate. | |
| float | x_ |
| X coordinate. | |
| float | y_ |
| Y coordinate. | |
| float | z_ |
| Z coordinate. | |
Static Public Attributes | |
| static const Quaternion | IDENTITY |
| Identity quaternion. | |
Detailed Description
Rotation represented as a four-dimensional normalized vector.
Member Function Documentation
◆ Angle()
| float Urho3D::Quaternion::Angle | ( | ) | const |
Return rotation angle.
Here is the call graph for this function:
◆ Axis()
| Urho3D::Vector3 Urho3D::Quaternion::Axis | ( | ) | const |
Return rotation axis.
◆ EulerAngles()
| Vector3 Urho3D::Quaternion::EulerAngles | ( | ) | const |
Return Euler angles in degrees.
Here is the caller graph for this function:
◆ PitchAngle()
| float Urho3D::Quaternion::PitchAngle | ( | ) | const |
Return pitch angle in degrees.
Here is the call graph for this function:
◆ RollAngle()
| float Urho3D::Quaternion::RollAngle | ( | ) | const |
Return roll angle in degrees.
Here is the call graph for this function:
◆ RotationMatrix()
| Matrix3 Urho3D::Quaternion::RotationMatrix | ( | ) | const |
Return the rotation matrix that corresponds to this quaternion.
Here is the caller graph for this function:
◆ YawAngle()
| float Urho3D::Quaternion::YawAngle | ( | ) | const |
Return yaw angle in degrees.
Here is the call graph for this function:
The documentation for this class was generated from the following files:
- Source/Urho3D/Math/Quaternion.h
- Source/Urho3D/Math/Quaternion.cpp
