Public Types |
|
typedef const double * | const_iterator |
|
typedef const double * | iterator |
Public Member Functions |
|
| LVecBase3d (const LVecBase3d ©) |
|
| LVecBase3d (const EVector3 &v) |
|
| LVecBase3d (double fill_value) |
|
| LVecBase3d (double x, double y, double z) |
| size_t | add_hash (size_t hash) const |
| | Adds the vector into the running hash.
|
| size_t | add_hash (size_t hash, double threshold) const |
| | Adds the vector into the running hash.
|
|
void | add_to_cell (int i, double value) |
|
void | add_x (double value) |
|
void | add_y (double value) |
|
void | add_z (double value) |
| bool | almost_equal (const LVecBase3d &other, double threshold) const |
| | Returns true if two vectors are memberwise equal within a specified tolerance.
|
| bool | almost_equal (const LVecBase3d &other) const |
| | Returns true if two vectors are memberwise equal within a default tolerance based on the numeric type.
|
| iterator | begin () |
| | Returns an iterator that may be used to traverse the elements of the matrix, STL-style.
|
| const_iterator | begin () const |
| | Returns an iterator that may be used to traverse the elements of the matrix, STL-style.
|
| int | compare_to (const LVecBase3d &other) const |
| | This flavor of compare_to uses a default threshold value based on the numeric type.
|
| int | compare_to (const LVecBase3d &other, double threshold) const |
| | Sorts vectors lexicographically, componentwise.
|
|
LVecBase3d | cross (const LVecBase3d &other) const |
|
void | cross_into (const LVecBase3d &other) |
|
double | dot (const LVecBase3d &other) const |
| iterator | end () |
| | Returns an iterator that may be used to traverse the elements of the matrix, STL-style.
|
| const_iterator | end () const |
| | Returns an iterator that may be used to traverse the elements of the matrix, STL-style.
|
| void | fill (double fill_value) |
| | Sets each element of the vector to the indicated fill_value.
|
|
LVecBase3d | fmax (const LVecBase3d &other) |
|
LVecBase3d | fmin (const LVecBase3d &other) |
| void | generate_hash (ChecksumHashGenerator &hashgen) const |
| | Adds the vector to the indicated hash generator.
|
| void | generate_hash (ChecksumHashGenerator &hashgen, double threshold) const |
| | Adds the vector to the indicated hash generator.
|
|
double | get_cell (int i) const |
| const double * | get_data () const |
| | Returns the address of the first of the three data elements in the vector.
|
| size_t | get_hash () const |
| | Returns a suitable hash for phash_map.
|
| size_t | get_hash (double threshold) const |
| | Returns a suitable hash for phash_map.
|
| int | get_num_components () const |
| | Returns the number of elements in the vector, three.
|
| LVecBase3d | get_standardized_hpr () const |
| | Try to un-spin the hpr to a standard form.
|
|
double | get_x () const |
| LVecBase2d | get_xy () const |
| | Returns a 2-component vector that shares just the first two components of this vector.
|
| LVecBase2d | get_xz () const |
| | Returns a 2-component vector that shares just the first and last components of this vector.
|
|
double | get_y () const |
| LVecBase2d | get_yz () const |
| | Returns a 2-component vector that shares just the last two components of this vector.
|
|
double | get_z () const |
| bool | is_nan () const |
| | Returns true if any component of the vector is not-a-number, false otherwise.
|
| double | length () const |
| | Returns the length of the vector, by the Pythagorean theorem.
|
| double | length_squared () const |
| | Returns the square of the vector's length, cheap and easy.
|
| bool | normalize () |
| | Normalizes the vector in place.
|
|
bool | operator!= (const LVecBase3d &other) const |
|
LVecBase3d | operator* (double scalar) const |
|
void | operator*= (double scalar) |
|
LVecBase3d | operator+ (const LVecBase3d &other) const |
|
void | operator+= (const LVecBase3d &other) |
|
LVecBase3d | operator- () const |
|
LVecBase3d | operator- (const LVecBase3d &other) const |
|
void | operator-= (const LVecBase3d &other) |
|
LVecBase3d | operator/ (double scalar) const |
|
void | operator/= (double scalar) |
| bool | operator< (const LVecBase3d &other) const |
| | This performs a lexicographical comparison.
|
|
LVecBase3d & | operator= (double fill_value) |
|
LVecBase3d & | operator= (const LVecBase3d ©) |
|
bool | operator== (const LVecBase3d &other) const |
|
double | operator[] (int i) const |
|
double & | operator[] (int i) |
|
void | output (ostream &out) const |
| LVecBase3d | project (const LVecBase3d &onto) const |
| | Returns a new vector representing the projection of this vector onto another one.
|
| void | read_datagram (DatagramIterator &source) |
| | Reads the vector from the Datagram using get_stdfloat().
|
| void | read_datagram_fixed (DatagramIterator &source) |
| | Reads the vector from the Datagram using get_float32() or get_float64().
|
|
void | set (double x, double y, double z) |
|
void | set_cell (int i, double value) |
|
void | set_x (double value) |
|
void | set_y (double value) |
|
void | set_z (double value) |
|
typedef | UNALIGNED_LINMATH_MATRIX (double, 1, 3) EVector3 |
| void | write_datagram (Datagram &destination) const |
| | Writes the vector to the Datagram using add_stdfloat().
|
| void | write_datagram_fixed (Datagram &destination) const |
| | 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().
|
Static Public Member Functions |
|
static TypeHandle | get_class_type () |
|
static void | init_type () |
| static int | size () |
| | Returns 3: the number of components of a LVecBase3.
|
| static const LVecBase3d & | unit_x () |
| | Returns a unit X vector.
|
| static const LVecBase3d & | unit_y () |
| | Returns a unit Y vector.
|
| static const LVecBase3d & | unit_z () |
| | Returns a unit Z vector.
|
| static const LVecBase3d & | zero () |
| | Returns a zero-length vector.
|
Public Attributes |
|
EVector3 | _v |
This is the base class for all three-component vectors and points.
Definition at line 1320 of file lvecBase3.h.