HDK
|
#include <quatd.h>
Public Types | |
typedef double | ScalarType |
typedef GfVec3d | ImaginaryType |
Public Member Functions | |
GfQuatd () | |
Default constructor leaves the quaternion undefined. More... | |
GfQuatd (double realVal) | |
GfQuatd (double real, double i, double j, double k) | |
Initialize the real and imaginary coefficients. More... | |
GfQuatd (double real, const GfVec3d &imaginary) | |
Initialize the real and imaginary coefficients. More... | |
GF_API | GfQuatd (class GfQuatf const &other) |
Implicitly convert from GfQuatf. More... | |
GF_API | GfQuatd (class GfQuath const &other) |
Implicitly convert from GfQuath. More... | |
double | GetReal () const |
Return the real coefficient. More... | |
void | SetReal (double real) |
Set the real coefficient. More... | |
const GfVec3d & | GetImaginary () const |
Return the imaginary coefficient. More... | |
void | SetImaginary (const GfVec3d &imaginary) |
Set the imaginary coefficients. More... | |
void | SetImaginary (double i, double j, double k) |
Set the imaginary coefficients. More... | |
double | GetLength () const |
Return geometric length of this quaternion. More... | |
GfQuatd | GetNormalized (double eps=GF_MIN_VECTOR_LENGTH) const |
GF_API double | Normalize (double eps=GF_MIN_VECTOR_LENGTH) |
GfQuatd | GetConjugate () const |
GfQuatd | GetInverse () const |
GF_API GfVec3d | Transform (const GfVec3d &point) const |
GfQuatd | operator- () const |
Component-wise negation. More... | |
bool | operator== (const GfQuatd &q) const |
bool | operator!= (const GfQuatd &q) const |
GF_API GfQuatd & | operator*= (const GfQuatd &q) |
Post-multiply quaternion q into this quaternion. More... | |
GfQuatd & | operator*= (double s) |
Multiply this quaternion's coefficients by s . More... | |
GfQuatd & | operator/= (double s) |
Divide this quaternion's coefficients by s . More... | |
GfQuatd & | operator+= (const GfQuatd &q) |
Add quaternion q to this quaternion. More... | |
GfQuatd & | operator-= (const GfQuatd &q) |
Component-wise unary difference operator. More... | |
Static Public Member Functions | |
static GfQuatd | GetZero () |
static GfQuatd | GetIdentity () |
Friends | |
size_t | hash_value (const GfQuatd &q) |
Hash. More... | |
GfQuatd | operator+ (const GfQuatd &q1, const GfQuatd &q2) |
Component-wise binary sum operator. More... | |
GfQuatd | operator- (const GfQuatd &q1, const GfQuatd &q2) |
Component-wise binary difference operator. More... | |
GfQuatd | operator* (const GfQuatd &q1, const GfQuatd &q2) |
Returns the product of quaternions q1 and q2 . More... | |
GfQuatd | operator* (const GfQuatd &q, double s) |
Returns the product of quaternion q and scalar s . More... | |
GfQuatd | operator* (double s, const GfQuatd &q) |
Returns the product of quaternion q and scalar s . More... | |
GfQuatd | operator/ (const GfQuatd &q, double s) |
Returns the product of quaternion q and scalar 1 / s . More... | |
Basic type: a quaternion, a complex number with a real coefficient and three imaginary coefficients, stored as a 3-vector.
typedef GfVec3d GfQuatd::ImaginaryType |
typedef double GfQuatd::ScalarType |
|
inline |
|
inlineexplicit |
|
inline |
|
inline |
|
inline |
|
inlinestatic |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlinestatic |
GF_API double GfQuatd::Normalize | ( | double | eps = GF_MIN_VECTOR_LENGTH | ) |
Normalizes this quaternion in place to unit length, returning the length before normalization. If the length of this quaternion is smaller than eps
, this sets the quaternion to identity.
|
inline |
Post-multiply quaternion q
into this quaternion.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |