|
| __init__ () |
|
| __init__ (const LQuaternionf) |
|
| __init__ (const LVecBase4f copy) |
|
| __init__ (float r, const LVecBase3f copy) |
|
| __init__ (float r, float i, float j, float k) |
|
LQuaternionf | __pow__ (float) |
| Returns a new quaternion that represents this quaternion raised to the given power.
|
|
bool | almostEqual (const LQuaternionf other) |
| Returns true if two quaternions are memberwise equal within a default tolerance based on the numeric type.
|
|
bool | almostEqual (const LQuaternionf other, float threshold) |
| Returns true if two quaternions are memberwise equal within a specified tolerance.
|
|
bool | almostSameDirection (const LQuaternionf other, float threshold) |
| Returns true if two quaternions represent the same rotation within a specified tolerance.
|
|
float | angleDeg (const LQuaternionf other) |
| Returns the angle between the orientation represented by this quaternion and the other one, expressed in degrees.
|
|
float | angleRad (const LQuaternionf other) |
| Returns the angle between the orientation represented by this quaternion and the other one, expressed in radians.
|
|
LQuaternionf | conjugate () |
| Returns the complex conjugate of this quat.
|
|
bool | conjugateFrom (const LQuaternionf other) |
| Computes the conjugate of the other quat, and stores the result in this quat.
|
|
bool | conjugateInPlace () |
| Sets this to be the conjugate of the current quat.
|
|
| extractToMatrix (LMatrix3f m) |
| Based on the quat lib from VRPN.
|
|
| extractToMatrix (LMatrix4f m) |
| Based on the quat lib from VRPN.
|
|
float | getAngle () |
| This, along with get_axis(), returns the rotation represented by the quaternion as an angle about an arbitrary axis.
|
|
float | getAngleRad () |
| This, along with get_axis(), returns the rotation represented by the quaternion as an angle about an arbitrary axis.
|
|
LVector3f | getAxis () |
| This, along with get_angle(), returns the rotation represented by the quaternion as an angle about an arbitrary axis.
|
|
LVector3f | getAxisNormalized () |
| This, along with get_angle(), returns the rotation represented by the quaternion as an angle about an arbitrary axis.
|
|
LVector3f | getForward (CoordinateSystem cs) |
| Returns the orientation represented by this quaternion, expressed as a forward vector.
|
|
LVecBase3f | getHpr (CoordinateSystem cs) |
| Extracts the equivalent Euler angles from the unit quaternion.
|
|
float | getI () |
|
float | getJ () |
|
float | getK () |
|
float | getR () |
|
LVector3f | getRight (CoordinateSystem cs) |
| Returns the orientation represented by this quaternion, expressed as a right vector.
|
|
LVector3f | getUp (CoordinateSystem cs) |
| Returns the orientation represented by this quaternion, expressed as an up vector.
|
|
bool | invertFrom (const LQuaternionf other) |
| Computes the inverse of the other quat, and stores the result in this quat.
|
|
bool | invertInPlace () |
| Inverts the current quat.
|
|
bool | isAlmostIdentity (float tolerance) |
| Returns true if this quaternion represents the identity transformation within a given tolerance.
|
|
bool | isIdentity () |
| Returns true if this quaternion represents the identity transformation: no rotation.
|
|
bool | isSameDirection (const LQuaternionf other) |
| Returns true if two quaternions represent the same rotation within a default tolerance based on the numeric type.
|
|
LQuaternionf | multiply (const LQuaternionf rhs) |
| actual multiply call (non virtual)
|
|
bool | normalize () |
|
LMatrix3f | operator* (const LMatrix3f) |
|
LMatrix4f | operator* (const LMatrix4f) |
|
LQuaternionf | operator* (const LQuaternionf) |
|
LQuaternionf | operator* (float scalar) |
|
LQuaternionf | operator*= (const LQuaternionf) |
|
LQuaternionf | operator+ (const LQuaternionf other) |
|
LQuaternionf | operator- () |
|
LQuaternionf | operator- (const LQuaternionf other) |
|
LQuaternionf | operator/ (float scalar) |
|
| output (Ostream) |
|
| setFromAxisAngle (float angle_deg, const LVector3f axis) |
| angle_deg is the angle about the axis in degrees.
|
|
| setFromAxisAngleRad (float angle_rad, const LVector3f axis) |
| angle_rad is the angle about the axis in radians.
|
|
| setFromMatrix (const LMatrix3f m) |
| Sets the quaternion according to the rotation represented by the matrix.
|
|
| setFromMatrix (const LMatrix4f m) |
|
| setHpr (const LVecBase3f hpr, CoordinateSystem cs) |
| Sets the quaternion as the unit quaternion that is equivalent to these Euler angles.
|
|
| setI (float i) |
|
| setJ (float j) |
|
| setK (float k) |
|
| setR (float r) |
|
LVecBase3f | xform (const LVecBase3f v) |
| Transforms a 3-d vector by the indicated rotation.
|
|
LVecBase4f | xform (const LVecBase4f v) |
| Transforms a 4-d vector by the indicated rotation.
|
|
Public Member Functions inherited from LVecBase4f |
object | __ceil__ () |
|
object | __floor__ () |
|
object | __floordiv__ (float scalar) |
|
object | __getattr__ (str attr_name) |
|
object | __ifloordiv__ (float scalar) |
|
| __init__ () |
|
| __init__ (const LPoint3f point) |
| Constructs an LVecBase4 from an LPoint3.
|
|
| __init__ (const LVecBase3f copy, float w) |
|
| __init__ (const LVecBase4f) |
|
| __init__ (const LVector3f vector) |
| Constructs an LVecBase4 from an LVector3.
|
|
| __init__ (const UnalignedLVecBase4f copy) |
|
| __init__ (float fill_value) |
|
| __init__ (float x, float y, float z, float w) |
|
object | __ipow__ (float exponent) |
|
object | __pow__ (float exponent) |
|
object | __reduce__ () |
|
str | __repr__ () |
|
object | __round__ () |
|
int | __setattr__ (str attr_name, object assign) |
|
int | addHash (int hash) |
| Adds the vector into the running hash.
|
|
int | addHash (int hash, float threshold) |
| Adds the vector into the running hash.
|
|
| addToCell (int i, float value) |
|
| addW (float value) |
|
| addX (float value) |
|
| addY (float value) |
|
| addZ (float value) |
|
bool | almostEqual (const LVecBase4f other) |
| Returns true if two vectors are memberwise equal within a default tolerance based on the numeric type.
|
|
bool | almostEqual (const LVecBase4f other, float threshold) |
| Returns true if two vectors are memberwise equal within a specified tolerance.
|
|
int | compareTo (const LVecBase4f other) |
| This flavor of compare_to uses a default threshold value based on the numeric type.
|
|
int | compareTo (const LVecBase4f other, float threshold) |
| Sorts vectors lexicographically, componentwise.
|
|
| componentwiseMult (const LVecBase4f other) |
|
float | dot (const LVecBase4f other) |
|
| fill (float fill_value) |
| Sets each element of the vector to the indicated fill_value.
|
|
LVecBase4f | fmax (const LVecBase4f other) |
|
LVecBase4f | fmin (const LVecBase4f other) |
|
| generateHash (ChecksumHashGenerator hashgen) |
| Adds the vector to the indicated hash generator.
|
|
| generateHash (ChecksumHashGenerator hashgen, float threshold) |
| Adds the vector to the indicated hash generator.
|
|
float | getCell (int i) |
|
| getData () |
| Returns the address of the first of the four data elements in the vector.
|
|
int | getHash () |
| Returns a suitable hash for phash_map.
|
|
int | getHash (float threshold) |
| Returns a suitable hash for phash_map.
|
|
float | getW () |
|
float | getX () |
|
LVecBase2f | getXy () |
| Returns the x and y component of this vector.
|
|
LVecBase3f | getXyz () |
| Returns the x, y and z component of this vector.
|
|
float | getY () |
|
float | getZ () |
|
bool | isNan () |
| Returns true if any component of the vector is not-a-number, false otherwise.
|
|
float | length () |
| Returns the length of the vector, by the Pythagorean theorem.
|
|
float | lengthSquared () |
| Returns the square of the vector's length, cheap and easy.
|
|
bool | normalize () |
| Normalizes the vector in place.
|
|
LVecBase4f | normalized () |
| Normalizes the vector and returns the normalized vector as a copy.
|
|
| operator new (int size) |
|
bool | operator!= (const LVecBase4f other) |
|
LVecBase4f | operator* (float scalar) |
|
LVecBase4f | operator*= (float scalar) |
|
LVecBase4f | operator+ (const LVecBase4f other) |
|
LVecBase4f | operator+= (const LVecBase4f other) |
|
LVecBase4f | operator- () |
|
LVecBase4f | operator- (const LVecBase4f other) |
|
LVecBase4f | operator-= (const LVecBase4f other) |
|
LVecBase4f | operator/ (float scalar) |
|
LVecBase4f | operator/= (float scalar) |
|
bool | operator< (const LVecBase4f other) |
|
LVecBase4f | operator= (const LVecBase4f copy) |
|
LVecBase4f | operator= (float fill_value) |
|
bool | operator== (const LVecBase4f other) |
|
float | operator[] (int i) |
|
| operator[] (int i, float assign_val) |
|
| output (Ostream out) |
|
LVecBase4f | project (const LVecBase4f onto) |
| Returns a new vector representing the projection of this vector onto another one.
|
|
| readDatagram (DatagramIterator source) |
| Reads the vector from the Datagram using get_stdfloat().
|
|
| readDatagramFixed (DatagramIterator source) |
| Reads the vector from the Datagram using get_float32() or get_float64().
|
|
| set (float x, float y, float z, float w) |
|
| setCell (int i, float value) |
|
| setW (float value) |
|
| setX (float value) |
|
| setY (float value) |
|
| setZ (float value) |
|
| writeDatagram (Datagram destination) |
| Writes the vector to the Datagram using add_stdfloat().
|
|
| writeDatagramFixed (Datagram destination) |
| Writes the vector to the Datagram using add_float32() or add_float64(), depending on the type of floats in the vector, regardless of the setting of Datagram::set_stdfloat_double().
|
|
This is the base quaternion class.