TrinityCore
|
#include <Quat.h>
Static Public Member Functions | |
static Quat | fromAxisAngleRotation (const Vector3 &axis, float angle) |
static Quat | unitRandom () |
Public Attributes | |
float | x |
float | y |
float | z |
float | w |
Private Member Functions | |
bool | operator< (const Quat &) const |
bool | operator> (const Quat &) const |
bool | operator<= (const Quat &) const |
bool | operator>= (const Quat &) const |
Quat | slerp (const Quat &other, float alpha, float threshold, float maxAngle) const |
Friends | |
Quat | operator* (float s, const Quat &q) |
Arbitrary quaternion (not necessarily unit).
Unit quaternions (aka versors) are used in computer graphics to represent rotation about an axis. Any 3x3 rotation matrix can be stored as a quaternion.
A quaternion represents the sum of a real scalar and an imaginary vector: ix + jy + kz + w. A unit quaternion representing a rotation by A about axis v has the form [sin(A/2)*v, cos(A/2)]. For a unit quaternion, q.conj() == q.inverse() is a rotation by -A about v. -q is the same rotation as q (negate both the axis and angle).
A non-unit quaterion q represents the same rotation as q.unitize() (Dam98 pg 28).
Although quaternion-vector operations (eg. Quat + Vector3) are well defined, they are not supported by this class because they typically are bugs when they appear in code.
Do not subclass.
BETA API – subject to change [Erik] B. Dam, Martin Koch, Martin Lillholm, Quaternions, Interpolation and Animation. Technical Report DIKU-TR-98/5, Department of Computer Science, University of Copenhagen, Denmark. 1998.
|
inline |
Initializes to a zero degree rotation, (0,0,0,1)
Expects "Quat(x,y,z,w)" or a Matrix3 constructor.
|
inline |
Defaults to a pure vector quaternion
Returns the angle in radians between this and other, assuming both are unit quaternions.
|
inline |
|
inline |
Negates the imaginary part.
void G3D::Quat::deserialize | ( | class BinaryInput & | b | ) |
|
inline |
exp q = [sin(A) * v, cos(A)] where q = [Av, 0]. Only defined for pure-vector quaternions
q = [sin(angle/2)*axis, cos(angle/2)]
Note: two quats can represent the Quat::sameRotation and not be equal.
|
inline |
|
inline |
Note that q-1 = q.conj() for a unit quaternion. [Dam99] page 13
|
inline |
Is the magnitude nearly 1.0?
|
inline |
|
inline |
Rotates towards other by at most maxAngle.
Rotates towards other by at most maxAngle.
Normalized linear interpolation of quaternion components.
|
inline |
The linear algebra 2-norm, sqrt(q dot q). This matches the value used in Dam's 1998 tech report but differs from the n(q) value used in Eberly's 1999 paper, which is the square of the norm.
|
inline |
Quaternion multiplication (composition of rotations). Note that this does not commute.
|
inline |
|
inline |
|
inline |
True if the components are exactly equal. Note that two quaternations may be unequal but map to the same rotation.
|
inline |
|
inline |
|
inline |
Raise this quaternion to a power. For a rotation, this is the effect of rotating x times as much as the original quaterion.
Note that q.pow(a).pow(b) == q.pow(a + b) [Dam98] pg 21
|
inline |
The real part of the quaternion.
|
inline |
True if these quaternions represent the same rotation (note that every rotation is represented by two values; q and -q).
void G3D::Quat::serialize | ( | class BinaryOutput & | b | ) | const |
|
private |
maxAngle | Maximum angle of rotation allowed. If a larger rotation is required, the angle of rotation applied is clamped to maxAngle |
Spherical linear interpolation: linear interpolation along the shortest (3D) great-circle route between two quaternions.
Assumes that both arguments are unit quaternions.
Note: Correct rotations are expected between 0 and PI in the right order.
[Based] on Game Physics – David Eberly pg 538-540
threshold | Critical angle between between rotations (in radians) at which the algorithm switches to normalized lerp, which is more numerically stable in those situations. 0.0 will always slerp. |
|
inline |
Any G3D::Quat::toAny | ( | ) | const |
void G3D::Quat::toAxisAngleRotation | ( | Vector3 & | axis, |
double & | angle | ||
) | const |
Returns the axis and angle of rotation represented by this quaternion (i.e. q = [sin(angle/2)*axis, cos(angle/2)])
|
inline |
Matrix3 G3D::Quat::toRotationMatrix | ( | ) | const |
void G3D::Quat::toRotationMatrix | ( | Matrix3 & | rot | ) | const |
|
inline |
Returns a unit quaterion obtained by dividing through by the magnitude.
|
inline |
Make unit length in place
|
static |
Generate uniform random unit quaternion (i.e. random "direction") [From] "Uniform Random Rotations", Ken Shoemake, Graphics Gems III.
Vector2 G3D::Quat::ww | ( | ) | const |
Vector3 G3D::Quat::www | ( | ) | const |
Vector4 G3D::Quat::wwww | ( | ) | const |
Vector4 G3D::Quat::wwwx | ( | ) | const |
Vector4 G3D::Quat::wwwy | ( | ) | const |
Vector4 G3D::Quat::wwwz | ( | ) | const |
Vector3 G3D::Quat::wwx | ( | ) | const |
Vector4 G3D::Quat::wwxw | ( | ) | const |
Vector4 G3D::Quat::wwxx | ( | ) | const |
Vector4 G3D::Quat::wwxy | ( | ) | const |
Vector4 G3D::Quat::wwxz | ( | ) | const |
Vector3 G3D::Quat::wwy | ( | ) | const |
Vector4 G3D::Quat::wwyw | ( | ) | const |
Vector4 G3D::Quat::wwyx | ( | ) | const |
Vector4 G3D::Quat::wwyy | ( | ) | const |
Vector4 G3D::Quat::wwyz | ( | ) | const |
Vector3 G3D::Quat::wwz | ( | ) | const |
Vector4 G3D::Quat::wwzw | ( | ) | const |
Vector4 G3D::Quat::wwzx | ( | ) | const |
Vector4 G3D::Quat::wwzy | ( | ) | const |
Vector4 G3D::Quat::wwzz | ( | ) | const |
Vector2 G3D::Quat::wx | ( | ) | const |
Vector3 G3D::Quat::wxw | ( | ) | const |
Vector4 G3D::Quat::wxww | ( | ) | const |
Vector4 G3D::Quat::wxwx | ( | ) | const |
Vector4 G3D::Quat::wxwy | ( | ) | const |
Vector4 G3D::Quat::wxwz | ( | ) | const |
Vector3 G3D::Quat::wxx | ( | ) | const |
Vector4 G3D::Quat::wxxw | ( | ) | const |
Vector4 G3D::Quat::wxxx | ( | ) | const |
Vector4 G3D::Quat::wxxy | ( | ) | const |
Vector4 G3D::Quat::wxxz | ( | ) | const |
Vector3 G3D::Quat::wxy | ( | ) | const |
Vector4 G3D::Quat::wxyw | ( | ) | const |
Vector4 G3D::Quat::wxyx | ( | ) | const |
Vector4 G3D::Quat::wxyy | ( | ) | const |
Vector4 G3D::Quat::wxyz | ( | ) | const |
Vector3 G3D::Quat::wxz | ( | ) | const |
Vector4 G3D::Quat::wxzw | ( | ) | const |
Vector4 G3D::Quat::wxzx | ( | ) | const |
Vector4 G3D::Quat::wxzy | ( | ) | const |
Vector4 G3D::Quat::wxzz | ( | ) | const |
Vector2 G3D::Quat::wy | ( | ) | const |
Vector3 G3D::Quat::wyw | ( | ) | const |
Vector4 G3D::Quat::wyww | ( | ) | const |
Vector4 G3D::Quat::wywx | ( | ) | const |
Vector4 G3D::Quat::wywy | ( | ) | const |
Vector4 G3D::Quat::wywz | ( | ) | const |
Vector3 G3D::Quat::wyx | ( | ) | const |
Vector4 G3D::Quat::wyxw | ( | ) | const |
Vector4 G3D::Quat::wyxx | ( | ) | const |
Vector4 G3D::Quat::wyxy | ( | ) | const |
Vector4 G3D::Quat::wyxz | ( | ) | const |
Vector3 G3D::Quat::wyy | ( | ) | const |
Vector4 G3D::Quat::wyyw | ( | ) | const |
Vector4 G3D::Quat::wyyx | ( | ) | const |
Vector4 G3D::Quat::wyyy | ( | ) | const |
Vector4 G3D::Quat::wyyz | ( | ) | const |
Vector3 G3D::Quat::wyz | ( | ) | const |
Vector4 G3D::Quat::wyzw | ( | ) | const |
Vector4 G3D::Quat::wyzx | ( | ) | const |
Vector4 G3D::Quat::wyzy | ( | ) | const |
Vector4 G3D::Quat::wyzz | ( | ) | const |
Vector2 G3D::Quat::wz | ( | ) | const |
Vector3 G3D::Quat::wzw | ( | ) | const |
Vector4 G3D::Quat::wzww | ( | ) | const |
Vector4 G3D::Quat::wzwx | ( | ) | const |
Vector4 G3D::Quat::wzwy | ( | ) | const |
Vector4 G3D::Quat::wzwz | ( | ) | const |
Vector3 G3D::Quat::wzx | ( | ) | const |
Vector4 G3D::Quat::wzxw | ( | ) | const |
Vector4 G3D::Quat::wzxx | ( | ) | const |
Vector4 G3D::Quat::wzxy | ( | ) | const |
Vector4 G3D::Quat::wzxz | ( | ) | const |
Vector3 G3D::Quat::wzy | ( | ) | const |
Vector4 G3D::Quat::wzyw | ( | ) | const |
Vector4 G3D::Quat::wzyx | ( | ) | const |
Vector4 G3D::Quat::wzyy | ( | ) | const |
Vector4 G3D::Quat::wzyz | ( | ) | const |
Vector3 G3D::Quat::wzz | ( | ) | const |
Vector4 G3D::Quat::wzzw | ( | ) | const |
Vector4 G3D::Quat::wzzx | ( | ) | const |
Vector4 G3D::Quat::wzzy | ( | ) | const |
Vector4 G3D::Quat::wzzz | ( | ) | const |
Vector2 G3D::Quat::xw | ( | ) | const |
Vector3 G3D::Quat::xww | ( | ) | const |
Vector4 G3D::Quat::xwww | ( | ) | const |
Vector4 G3D::Quat::xwwx | ( | ) | const |
Vector4 G3D::Quat::xwwy | ( | ) | const |
Vector4 G3D::Quat::xwwz | ( | ) | const |
Vector3 G3D::Quat::xwx | ( | ) | const |
Vector4 G3D::Quat::xwxw | ( | ) | const |
Vector4 G3D::Quat::xwxx | ( | ) | const |
Vector4 G3D::Quat::xwxy | ( | ) | const |
Vector4 G3D::Quat::xwxz | ( | ) | const |
Vector3 G3D::Quat::xwy | ( | ) | const |
Vector4 G3D::Quat::xwyw | ( | ) | const |
Vector4 G3D::Quat::xwyx | ( | ) | const |
Vector4 G3D::Quat::xwyy | ( | ) | const |
Vector4 G3D::Quat::xwyz | ( | ) | const |
Vector3 G3D::Quat::xwz | ( | ) | const |
Vector4 G3D::Quat::xwzw | ( | ) | const |
Vector4 G3D::Quat::xwzx | ( | ) | const |
Vector4 G3D::Quat::xwzy | ( | ) | const |
Vector4 G3D::Quat::xwzz | ( | ) | const |
Vector2 G3D::Quat::xx | ( | ) | const |
Vector3 G3D::Quat::xxw | ( | ) | const |
Vector4 G3D::Quat::xxww | ( | ) | const |
Vector4 G3D::Quat::xxwx | ( | ) | const |
Vector4 G3D::Quat::xxwy | ( | ) | const |
Vector4 G3D::Quat::xxwz | ( | ) | const |
Vector3 G3D::Quat::xxx | ( | ) | const |
Vector4 G3D::Quat::xxxw | ( | ) | const |
Vector4 G3D::Quat::xxxx | ( | ) | const |
Vector4 G3D::Quat::xxxy | ( | ) | const |
Vector4 G3D::Quat::xxxz | ( | ) | const |
Vector3 G3D::Quat::xxy | ( | ) | const |
Vector4 G3D::Quat::xxyw | ( | ) | const |
Vector4 G3D::Quat::xxyx | ( | ) | const |
Vector4 G3D::Quat::xxyy | ( | ) | const |
Vector4 G3D::Quat::xxyz | ( | ) | const |
Vector3 G3D::Quat::xxz | ( | ) | const |
Vector4 G3D::Quat::xxzw | ( | ) | const |
Vector4 G3D::Quat::xxzx | ( | ) | const |
Vector4 G3D::Quat::xxzy | ( | ) | const |
Vector4 G3D::Quat::xxzz | ( | ) | const |
Vector2 G3D::Quat::xy | ( | ) | const |
Vector3 G3D::Quat::xyw | ( | ) | const |
Vector4 G3D::Quat::xyww | ( | ) | const |
Vector4 G3D::Quat::xywx | ( | ) | const |
Vector4 G3D::Quat::xywy | ( | ) | const |
Vector4 G3D::Quat::xywz | ( | ) | const |
Vector3 G3D::Quat::xyx | ( | ) | const |
Vector4 G3D::Quat::xyxw | ( | ) | const |
Vector4 G3D::Quat::xyxx | ( | ) | const |
Vector4 G3D::Quat::xyxy | ( | ) | const |
Vector4 G3D::Quat::xyxz | ( | ) | const |
Vector3 G3D::Quat::xyy | ( | ) | const |
Vector4 G3D::Quat::xyyw | ( | ) | const |
Vector4 G3D::Quat::xyyx | ( | ) | const |
Vector4 G3D::Quat::xyyy | ( | ) | const |
Vector4 G3D::Quat::xyyz | ( | ) | const |
Vector3 G3D::Quat::xyz | ( | ) | const |
Vector4 G3D::Quat::xyzw | ( | ) | const |
Vector4 G3D::Quat::xyzx | ( | ) | const |
Vector4 G3D::Quat::xyzy | ( | ) | const |
Vector4 G3D::Quat::xyzz | ( | ) | const |
Vector2 G3D::Quat::xz | ( | ) | const |
Vector3 G3D::Quat::xzw | ( | ) | const |
Vector4 G3D::Quat::xzww | ( | ) | const |
Vector4 G3D::Quat::xzwx | ( | ) | const |
Vector4 G3D::Quat::xzwy | ( | ) | const |
Vector4 G3D::Quat::xzwz | ( | ) | const |
Vector3 G3D::Quat::xzx | ( | ) | const |
Vector4 G3D::Quat::xzxw | ( | ) | const |
Vector4 G3D::Quat::xzxx | ( | ) | const |
Vector4 G3D::Quat::xzxy | ( | ) | const |
Vector4 G3D::Quat::xzxz | ( | ) | const |
Vector3 G3D::Quat::xzy | ( | ) | const |
Vector4 G3D::Quat::xzyw | ( | ) | const |
Vector4 G3D::Quat::xzyx | ( | ) | const |
Vector4 G3D::Quat::xzyy | ( | ) | const |
Vector4 G3D::Quat::xzyz | ( | ) | const |
Vector3 G3D::Quat::xzz | ( | ) | const |
Vector4 G3D::Quat::xzzw | ( | ) | const |
Vector4 G3D::Quat::xzzx | ( | ) | const |
Vector4 G3D::Quat::xzzy | ( | ) | const |
Vector4 G3D::Quat::xzzz | ( | ) | const |
Vector2 G3D::Quat::yw | ( | ) | const |
Vector3 G3D::Quat::yww | ( | ) | const |
Vector4 G3D::Quat::ywww | ( | ) | const |
Vector4 G3D::Quat::ywwx | ( | ) | const |
Vector4 G3D::Quat::ywwy | ( | ) | const |
Vector4 G3D::Quat::ywwz | ( | ) | const |
Vector3 G3D::Quat::ywx | ( | ) | const |
Vector4 G3D::Quat::ywxw | ( | ) | const |
Vector4 G3D::Quat::ywxx | ( | ) | const |
Vector4 G3D::Quat::ywxy | ( | ) | const |
Vector4 G3D::Quat::ywxz | ( | ) | const |
Vector3 G3D::Quat::ywy | ( | ) | const |
Vector4 G3D::Quat::ywyw | ( | ) | const |
Vector4 G3D::Quat::ywyx | ( | ) | const |
Vector4 G3D::Quat::ywyy | ( | ) | const |
Vector4 G3D::Quat::ywyz | ( | ) | const |
Vector3 G3D::Quat::ywz | ( | ) | const |
Vector4 G3D::Quat::ywzw | ( | ) | const |
Vector4 G3D::Quat::ywzx | ( | ) | const |
Vector4 G3D::Quat::ywzy | ( | ) | const |
Vector4 G3D::Quat::ywzz | ( | ) | const |
Vector2 G3D::Quat::yx | ( | ) | const |
Vector3 G3D::Quat::yxw | ( | ) | const |
Vector4 G3D::Quat::yxww | ( | ) | const |
Vector4 G3D::Quat::yxwx | ( | ) | const |
Vector4 G3D::Quat::yxwy | ( | ) | const |
Vector4 G3D::Quat::yxwz | ( | ) | const |
Vector3 G3D::Quat::yxx | ( | ) | const |
Vector4 G3D::Quat::yxxw | ( | ) | const |
Vector4 G3D::Quat::yxxx | ( | ) | const |
Vector4 G3D::Quat::yxxy | ( | ) | const |
Vector4 G3D::Quat::yxxz | ( | ) | const |
Vector3 G3D::Quat::yxy | ( | ) | const |
Vector4 G3D::Quat::yxyw | ( | ) | const |
Vector4 G3D::Quat::yxyx | ( | ) | const |
Vector4 G3D::Quat::yxyy | ( | ) | const |
Vector4 G3D::Quat::yxyz | ( | ) | const |
Vector3 G3D::Quat::yxz | ( | ) | const |
Vector4 G3D::Quat::yxzw | ( | ) | const |
Vector4 G3D::Quat::yxzx | ( | ) | const |
Vector4 G3D::Quat::yxzy | ( | ) | const |
Vector4 G3D::Quat::yxzz | ( | ) | const |
Vector2 G3D::Quat::yy | ( | ) | const |
Vector3 G3D::Quat::yyw | ( | ) | const |
Vector4 G3D::Quat::yyww | ( | ) | const |
Vector4 G3D::Quat::yywx | ( | ) | const |
Vector4 G3D::Quat::yywy | ( | ) | const |
Vector4 G3D::Quat::yywz | ( | ) | const |
Vector3 G3D::Quat::yyx | ( | ) | const |
Vector4 G3D::Quat::yyxw | ( | ) | const |
Vector4 G3D::Quat::yyxx | ( | ) | const |
Vector4 G3D::Quat::yyxy | ( | ) | const |
Vector4 G3D::Quat::yyxz | ( | ) | const |
Vector3 G3D::Quat::yyy | ( | ) | const |
Vector4 G3D::Quat::yyyw | ( | ) | const |
Vector4 G3D::Quat::yyyx | ( | ) | const |
Vector4 G3D::Quat::yyyy | ( | ) | const |
Vector4 G3D::Quat::yyyz | ( | ) | const |
Vector3 G3D::Quat::yyz | ( | ) | const |
Vector4 G3D::Quat::yyzw | ( | ) | const |
Vector4 G3D::Quat::yyzx | ( | ) | const |
Vector4 G3D::Quat::yyzy | ( | ) | const |
Vector4 G3D::Quat::yyzz | ( | ) | const |
Vector2 G3D::Quat::yz | ( | ) | const |
Vector3 G3D::Quat::yzw | ( | ) | const |
Vector4 G3D::Quat::yzww | ( | ) | const |
Vector4 G3D::Quat::yzwx | ( | ) | const |
Vector4 G3D::Quat::yzwy | ( | ) | const |
Vector4 G3D::Quat::yzwz | ( | ) | const |
Vector3 G3D::Quat::yzx | ( | ) | const |
Vector4 G3D::Quat::yzxw | ( | ) | const |
Vector4 G3D::Quat::yzxx | ( | ) | const |
Vector4 G3D::Quat::yzxy | ( | ) | const |
Vector4 G3D::Quat::yzxz | ( | ) | const |
Vector3 G3D::Quat::yzy | ( | ) | const |
Vector4 G3D::Quat::yzyw | ( | ) | const |
Vector4 G3D::Quat::yzyx | ( | ) | const |
Vector4 G3D::Quat::yzyy | ( | ) | const |
Vector4 G3D::Quat::yzyz | ( | ) | const |
Vector3 G3D::Quat::yzz | ( | ) | const |
Vector4 G3D::Quat::yzzw | ( | ) | const |
Vector4 G3D::Quat::yzzx | ( | ) | const |
Vector4 G3D::Quat::yzzy | ( | ) | const |
Vector4 G3D::Quat::yzzz | ( | ) | const |
Vector2 G3D::Quat::zw | ( | ) | const |
Vector3 G3D::Quat::zww | ( | ) | const |
Vector4 G3D::Quat::zwww | ( | ) | const |
Vector4 G3D::Quat::zwwx | ( | ) | const |
Vector4 G3D::Quat::zwwy | ( | ) | const |
Vector4 G3D::Quat::zwwz | ( | ) | const |
Vector3 G3D::Quat::zwx | ( | ) | const |
Vector4 G3D::Quat::zwxw | ( | ) | const |
Vector4 G3D::Quat::zwxx | ( | ) | const |
Vector4 G3D::Quat::zwxy | ( | ) | const |
Vector4 G3D::Quat::zwxz | ( | ) | const |
Vector3 G3D::Quat::zwy | ( | ) | const |
Vector4 G3D::Quat::zwyw | ( | ) | const |
Vector4 G3D::Quat::zwyx | ( | ) | const |
Vector4 G3D::Quat::zwyy | ( | ) | const |
Vector4 G3D::Quat::zwyz | ( | ) | const |
Vector3 G3D::Quat::zwz | ( | ) | const |
Vector4 G3D::Quat::zwzw | ( | ) | const |
Vector4 G3D::Quat::zwzx | ( | ) | const |
Vector4 G3D::Quat::zwzy | ( | ) | const |
Vector4 G3D::Quat::zwzz | ( | ) | const |
Vector2 G3D::Quat::zx | ( | ) | const |
Vector3 G3D::Quat::zxw | ( | ) | const |
Vector4 G3D::Quat::zxww | ( | ) | const |
Vector4 G3D::Quat::zxwx | ( | ) | const |
Vector4 G3D::Quat::zxwy | ( | ) | const |
Vector4 G3D::Quat::zxwz | ( | ) | const |
Vector3 G3D::Quat::zxx | ( | ) | const |
Vector4 G3D::Quat::zxxw | ( | ) | const |
Vector4 G3D::Quat::zxxx | ( | ) | const |
Vector4 G3D::Quat::zxxy | ( | ) | const |
Vector4 G3D::Quat::zxxz | ( | ) | const |
Vector3 G3D::Quat::zxy | ( | ) | const |
Vector4 G3D::Quat::zxyw | ( | ) | const |
Vector4 G3D::Quat::zxyx | ( | ) | const |
Vector4 G3D::Quat::zxyy | ( | ) | const |
Vector4 G3D::Quat::zxyz | ( | ) | const |
Vector3 G3D::Quat::zxz | ( | ) | const |
Vector4 G3D::Quat::zxzw | ( | ) | const |
Vector4 G3D::Quat::zxzx | ( | ) | const |
Vector4 G3D::Quat::zxzy | ( | ) | const |
Vector4 G3D::Quat::zxzz | ( | ) | const |
Vector2 G3D::Quat::zy | ( | ) | const |
Vector3 G3D::Quat::zyw | ( | ) | const |
Vector4 G3D::Quat::zyww | ( | ) | const |
Vector4 G3D::Quat::zywx | ( | ) | const |
Vector4 G3D::Quat::zywy | ( | ) | const |
Vector4 G3D::Quat::zywz | ( | ) | const |
Vector3 G3D::Quat::zyx | ( | ) | const |
Vector4 G3D::Quat::zyxw | ( | ) | const |
Vector4 G3D::Quat::zyxx | ( | ) | const |
Vector4 G3D::Quat::zyxy | ( | ) | const |
Vector4 G3D::Quat::zyxz | ( | ) | const |
Vector3 G3D::Quat::zyy | ( | ) | const |
Vector4 G3D::Quat::zyyw | ( | ) | const |
Vector4 G3D::Quat::zyyx | ( | ) | const |
Vector4 G3D::Quat::zyyy | ( | ) | const |
Vector4 G3D::Quat::zyyz | ( | ) | const |
Vector3 G3D::Quat::zyz | ( | ) | const |
Vector4 G3D::Quat::zyzw | ( | ) | const |
Vector4 G3D::Quat::zyzx | ( | ) | const |
Vector4 G3D::Quat::zyzy | ( | ) | const |
Vector4 G3D::Quat::zyzz | ( | ) | const |
Vector2 G3D::Quat::zz | ( | ) | const |
Vector3 G3D::Quat::zzw | ( | ) | const |
Vector4 G3D::Quat::zzww | ( | ) | const |
Vector4 G3D::Quat::zzwx | ( | ) | const |
Vector4 G3D::Quat::zzwy | ( | ) | const |
Vector4 G3D::Quat::zzwz | ( | ) | const |
Vector3 G3D::Quat::zzx | ( | ) | const |
Vector4 G3D::Quat::zzxw | ( | ) | const |
Vector4 G3D::Quat::zzxx | ( | ) | const |
Vector4 G3D::Quat::zzxy | ( | ) | const |
Vector4 G3D::Quat::zzxz | ( | ) | const |
Vector3 G3D::Quat::zzy | ( | ) | const |
Vector4 G3D::Quat::zzyw | ( | ) | const |
Vector4 G3D::Quat::zzyx | ( | ) | const |
Vector4 G3D::Quat::zzyy | ( | ) | const |
Vector4 G3D::Quat::zzyz | ( | ) | const |
Vector3 G3D::Quat::zzz | ( | ) | const |
Vector4 G3D::Quat::zzzw | ( | ) | const |
Vector4 G3D::Quat::zzzx | ( | ) | const |
Vector4 G3D::Quat::zzzy | ( | ) | const |
Vector4 G3D::Quat::zzzz | ( | ) | const |
float G3D::Quat::w |
float G3D::Quat::x |
q = [sin(angle / 2) * axis, cos(angle / 2)]
In Watt & Watt's notation, s = w, v = (x, y, z) In the Real-Time Rendering notation, u = (x, y, z), w = w
float G3D::Quat::y |
float G3D::Quat::z |