![]() |
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)
Here is the caller graph for this function:Expects "Quat(x,y,z,w)" or a Matrix3 constructor.
Here is the call graph for this function:
|
inline |
Defaults to a pure vector quaternion
Returns the angle in radians between this and other, assuming both are unit quaternions.
Here is the call graph for this function:
|
inline |
Here is the call graph for this function:
|
inline |
Negates the imaginary part.
Here is the call graph for this function:
Here is the caller graph for this function:| void G3D::Quat::deserialize | ( | class BinaryInput & | b | ) |
Here is the call graph for this function:
Here is the caller graph for this function:
Here is the caller graph for this function:
|
inline |
exp q = [sin(A) * v, cos(A)] where q = [Av, 0]. Only defined for pure-vector quaternions
Here is the call graph for this function:
Here is the caller graph for this function:q = [sin(angle/2)*axis, cos(angle/2)]
Here is the call graph for this function:Note: two quats can represent the Quat::sameRotation and not be equal.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
|
inline |
Note that q-1 = q.conj() for a unit quaternion. [Dam99] page 13
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Is the magnitude nearly 1.0?
Here is the call graph for this function:
|
inline |
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Here is the call graph for this function:
Here is the caller graph for this function:Rotates towards other by at most maxAngle.
Here is the call graph for this function:
Here is the caller graph for this function:Rotates towards other by at most maxAngle.
Here is the call graph for this function:
Here is the caller graph for this function:Normalized linear interpolation of quaternion components.
Here is the call graph for this function:
Here is the caller graph for this function:
|
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.
Here is the call graph for this function:
|
inline |
Here is the call graph for this function:Quaternion multiplication (composition of rotations). Note that this does not commute.
Here is the call graph for this function:
|
inline |
Here is the call graph for this function:
|
inline |
Here is the call graph for this function:
Here is the call graph for this function:
|
inline |
Here is the call graph for this function: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
Here is the call graph for this function:
Here is the caller graph for this function:
|
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).
Here is the call graph for this function:| void G3D::Quat::serialize | ( | class BinaryOutput & | b | ) | const |
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
| maxAngle | Maximum angle of rotation allowed. If a larger rotation is required, the angle of rotation applied is clamped to maxAngle |
Here is the call graph for this function:
Here is the caller graph for this function: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. |
Here is the call graph for this function:
|
inline |
Here is the caller graph for this function:| Any G3D::Quat::toAny | ( | ) | const |
Here is the call graph for this function:| 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)])
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Here is the call graph for this function:| Matrix3 G3D::Quat::toRotationMatrix | ( | ) | const |
Here is the call graph for this function:
Here is the caller graph for this function:| void G3D::Quat::toRotationMatrix | ( | Matrix3 & | rot | ) | const |
|
inline |
Returns a unit quaterion obtained by dividing through by the magnitude.
Here is the call graph for this function:
|
inline |
Make unit length in place
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Generate uniform random unit quaternion (i.e. random "direction") [From] "Uniform Random Rotations", Ken Shoemake, Graphics Gems III.
Here is the call graph for this function:| 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 |
1.8.8