#include <FXQuatf.h>
Public Member Functions | |
FXQuatf () | |
FXQuatf (const FXQuatf &q) | |
FXQuatf (FXfloat xx, FXfloat yy, FXfloat zz, FXfloat ww) | |
FXQuatf (const FXfloat v[]) | |
FXQuatf (const FXVec3f &axis, FXfloat phi=0.0f) | |
FXQuatf (FXfloat roll, FXfloat pitch, FXfloat yaw) | |
FXQuatf (const FXVec3f &fr, const FXVec3f &to) | |
FXQuatf (const FXVec3f &ex, const FXVec3f &ey, const FXVec3f &ez) | |
FXQuatf (const FXMat3f &mat) | |
FXQuatf & | adjust () |
void | setAxisAngle (const FXVec3f &axis, FXfloat phi=0.0f) |
void | getAxisAngle (FXVec3f &axis, FXfloat &phi) const |
void | setRollPitchYaw (FXfloat roll, FXfloat pitch, FXfloat yaw) |
void | getRollPitchYaw (FXfloat &roll, FXfloat &pitch, FXfloat &yaw) const |
void | setYawPitchRoll (FXfloat yaw, FXfloat pitch, FXfloat roll) |
void | getYawPitchRoll (FXfloat &yaw, FXfloat &pitch, FXfloat &roll) const |
void | setRollYawPitch (FXfloat roll, FXfloat yaw, FXfloat pitch) |
void | getRollYawPitch (FXfloat &roll, FXfloat &yaw, FXfloat &pitch) const |
void | setPitchRollYaw (FXfloat pitch, FXfloat roll, FXfloat yaw) |
void | getPitchRollYaw (FXfloat &pitch, FXfloat &roll, FXfloat &yaw) const |
void | setPitchYawRoll (FXfloat pitch, FXfloat yaw, FXfloat roll) |
void | getPitchYawRoll (FXfloat &pitch, FXfloat &yaw, FXfloat &roll) const |
void | setYawRollPitch (FXfloat yaw, FXfloat roll, FXfloat pitch) |
void | getYawRollPitch (FXfloat &yaw, FXfloat &roll, FXfloat &pitch) const |
void | setAxes (const FXVec3f &ex, const FXVec3f &ey, const FXVec3f &ez) |
void | getAxes (FXVec3f &ex, FXVec3f &ey, FXVec3f &ez) const |
FXVec3f | getXAxis () const |
FXVec3f | getYAxis () const |
FXVec3f | getZAxis () const |
FXQuatf | exp () const |
FXQuatf | log () const |
FXQuatf | invert () const |
FXQuatf | unitinvert () const |
FXQuatf | conj () const |
FXQuatf & | arc (const FXVec3f &a, const FXVec3f &b) |
FXQuatf & | lerp (const FXQuatf &u, const FXQuatf &v, FXfloat f) |
FXQuatf | operator* (const FXQuatf &q) const |
FXVec3f | operator* (const FXVec3f &v) const |
FXfloat & | operator[] (FXint i) |
const FXfloat & | operator[] (FXint i) const |
FXVec4f & | set (const FXVec4f &v) |
FXVec4f & | set (const FXfloat v[]) |
FXVec4f & | set (FXfloat xx, FXfloat yy, FXfloat zz, FXfloat ww) |
FXVec4f & | operator*= (FXfloat n) |
FXVec4f & | operator/= (FXfloat n) |
FXVec4f & | operator+= (const FXVec4f &v) |
FXVec4f & | operator-= (const FXVec4f &v) |
operator FXfloat * () | |
operator const FXfloat * () const | |
operator FXVec3f & () | |
operator const FXVec3f & () const | |
operator FXColor () const | |
FXVec4f | operator+ () const |
FXVec4f | operator+ (const FXVec4f &v) const |
FXVec4f | operator- () const |
FXVec4f | operator- (const FXVec4f &v) const |
FXVec4f | operator* (const FXMat4f &m) const |
FXfloat | operator* (const FXVec4f &v) const |
bool | operator! () const |
bool | operator== (const FXVec4f &v) const |
bool | operator!= (const FXVec4f &v) const |
bool | operator< (const FXVec4f &v) const |
bool | operator<= (const FXVec4f &v) const |
bool | operator> (const FXVec4f &v) const |
bool | operator>= (const FXVec4f &v) const |
FXfloat | length2 () const |
FXfloat | length () const |
FXVec4f & | clamp (FXfloat lo, FXfloat hi) |
FXfloat | vecdistance (const FXVec3f &p) const |
bool | veccrosses (const FXVec3f &a, const FXVec3f &b) const |
Public Attributes | |
FXfloat | x |
FXfloat | y |
FXfloat | z |
FXfloat | w |
Friends | |
FXVec4f | operator* (const FXVec4f &a, FXfloat n) |
FXVec4f | operator* (FXfloat n, const FXVec4f &a) |
FXVec4f | operator/ (const FXVec4f &a, FXfloat n) |
FXVec4f | operator/ (FXfloat n, const FXVec4f &a) |
bool | operator== (const FXVec4f &a, FXfloat n) |
bool | operator== (FXfloat n, const FXVec4f &a) |
bool | operator!= (const FXVec4f &a, FXfloat n) |
bool | operator!= (FXfloat n, const FXVec4f &a) |
bool | operator< (const FXVec4f &a, FXfloat n) |
bool | operator< (FXfloat n, const FXVec4f &a) |
bool | operator<= (const FXVec4f &a, FXfloat n) |
bool | operator<= (FXfloat n, const FXVec4f &a) |
bool | operator> (const FXVec4f &a, FXfloat n) |
bool | operator> (FXfloat n, const FXVec4f &a) |
bool | operator>= (const FXVec4f &a, FXfloat n) |
bool | operator>= (FXfloat n, const FXVec4f &a) |
FXVec4f | veclo (const FXVec4f &a, const FXVec4f &b) |
FXVec4f | vechi (const FXVec4f &a, const FXVec4f &b) |
FXAPI FXVec4f | vecplane (const FXVec4f &vec) |
FXAPI FXVec4f | vecplane (const FXVec3f &vec, FXfloat dist) |
FXAPI FXVec4f | vecplane (const FXVec3f &vec, const FXVec3f &p) |
FXAPI FXVec4f | vecplane (const FXVec3f &a, const FXVec3f &b, const FXVec3f &c) |
FXAPI FXVec4f | vecnormalize (const FXVec4f &v) |
FXAPI FXStream & | operator<< (FXStream &store, const FXVec4f &v) |
FXAPI FXStream & | operator>> (FXStream &store, FXVec4f &v) |
FX::FXQuatf::FXQuatf | ( | ) | [inline] |
Construct.
FX::FXQuatf::FXQuatf | ( | const FXQuatf & | q | ) | [inline] |
Copy constructor.
FX::FXQuatf::FXQuatf | ( | FXfloat | xx, | |
FXfloat | yy, | |||
FXfloat | zz, | |||
FXfloat | ww | |||
) | [inline] |
Construct from components.
FX::FXQuatf::FXQuatf | ( | const FXfloat | v[] | ) | [inline] |
Construct from array of floats.
FX::FXQuatf::FXQuatf | ( | const FXVec3f & | axis, | |
FXfloat | phi = 0.0f | |||
) |
Construct from axis and angle.
FX::FXQuatf::FXQuatf | ( | FXfloat | roll, | |
FXfloat | pitch, | |||
FXfloat | yaw | |||
) |
Construct from euler angles yaw (z), pitch (y), and roll (x).
Construct quaternion from two unit vectors.
Construct quaternion from three axes.
FX::FXQuatf::FXQuatf | ( | const FXMat3f & | mat | ) |
Construct quaternion from 3x3 matrix.
FXQuatf& FX::FXQuatf::adjust | ( | ) |
Adjust quaternion length.
void FX::FXQuatf::setAxisAngle | ( | const FXVec3f & | axis, | |
FXfloat | phi = 0.0f | |||
) |
Set quaternion from axis and angle.
void FX::FXQuatf::getAxisAngle | ( | FXVec3f & | axis, | |
FXfloat & | phi | |||
) | const |
Obtain axis and angle from quaternion.
void FX::FXQuatf::setRollPitchYaw | ( | FXfloat | roll, | |
FXfloat | pitch, | |||
FXfloat | yaw | |||
) |
Set quaternion from roll (x), pitch (y), yaw (z).
void FX::FXQuatf::setYawPitchRoll | ( | FXfloat | yaw, | |
FXfloat | pitch, | |||
FXfloat | roll | |||
) |
Set quaternion from yaw (z), pitch (y), roll (x).
void FX::FXQuatf::setRollYawPitch | ( | FXfloat | roll, | |
FXfloat | yaw, | |||
FXfloat | pitch | |||
) |
Set quaternion from roll (x), yaw (z), pitch (y).
void FX::FXQuatf::setPitchRollYaw | ( | FXfloat | pitch, | |
FXfloat | roll, | |||
FXfloat | yaw | |||
) |
Set quaternion from pitch (y), roll (x),yaw (z).
void FX::FXQuatf::setPitchYawRoll | ( | FXfloat | pitch, | |
FXfloat | yaw, | |||
FXfloat | roll | |||
) |
Set quaternion from pitch (y), yaw (z), roll (x).
void FX::FXQuatf::setYawRollPitch | ( | FXfloat | yaw, | |
FXfloat | roll, | |||
FXfloat | pitch | |||
) |
Set quaternion from yaw (z), roll (x), pitch (y).
Set quaternion from axes.
FXVec3f FX::FXQuatf::getXAxis | ( | ) | const |
Obtain local x axis.
FXVec3f FX::FXQuatf::getYAxis | ( | ) | const |
Obtain local y axis.
FXVec3f FX::FXQuatf::getZAxis | ( | ) | const |
Obtain local z axis.
FXQuatf FX::FXQuatf::exp | ( | ) | const |
Exponentiate quaternion.
FXQuatf FX::FXQuatf::log | ( | ) | const |
Take logarithm of quaternion.
FXQuatf FX::FXQuatf::invert | ( | ) | const |
Invert quaternion.
FXQuatf FX::FXQuatf::unitinvert | ( | ) | const |
Invert unit quaternion.
FXQuatf FX::FXQuatf::conj | ( | ) | const |
Conjugate quaternion.
Construct quaternion from arc a->b on unit sphere.
FXfloat& FX::FXVec4f::operator[] | ( | FXint | i | ) | [inline, inherited] |
Return a non-const reference to the ith element.
const FXfloat& FX::FXVec4f::operator[] | ( | FXint | i | ) | const [inline, inherited] |
Return a const reference to the ith element.
FXVec4f& FX::FXVec4f::set | ( | const FXfloat | v[] | ) | [inline, inherited] |
Set value from array of floats.
FXVec4f& FX::FXVec4f::set | ( | FXfloat | xx, | |
FXfloat | yy, | |||
FXfloat | zz, | |||
FXfloat | ww | |||
) | [inline, inherited] |
Set value from components.
FXVec4f& FX::FXVec4f::operator*= | ( | FXfloat | n | ) | [inline, inherited] |
Assigning operators.
FX::FXVec4f::operator FXfloat * | ( | ) | [inline, inherited] |
Conversion.
FX::FXVec4f::operator FXColor | ( | ) | const [inherited] |
Convert to color.
FXVec4f FX::FXVec4f::operator+ | ( | ) | const [inline, inherited] |
Unary.
FXfloat FX::FXVec4f::operator* | ( | const FXVec4f & | v | ) | const [inline, inherited] |
bool FX::FXVec4f::operator! | ( | ) | const [inline, inherited] |
Test if zero.
bool FX::FXVec4f::operator== | ( | const FXVec4f & | v | ) | const [inline, inherited] |
bool FX::FXVec4f::operator< | ( | const FXVec4f & | v | ) | const [inline, inherited] |
FXfloat FX::FXVec4f::length2 | ( | ) | const [inline, inherited] |
Length and square of length.
FXVec4f& FX::FXVec4f::clamp | ( | FXfloat | lo, | |
FXfloat | hi | |||
) | [inline, inherited] |
Clamp values of vector between limits.
FXfloat FX::FXVec4f::vecdistance | ( | const FXVec3f & | p | ) | const [inherited] |
Signed distance normalized plane and point.
Return true if edge a-b crosses plane.
Lowest or highest components.
Compute normalized plane equation ax+by+cz+d=0.
Save to a stream.
Load from a stream.