historical/toontown-classic.git/panda/pandac/input/libp3linmath.in
2024-01-16 11:20:27 -06:00

17562 lines
575 KiB
Text

1565844121
3 3
12 libp3linmath 4 Ns0b 12 panda3d.core
1557
1966 11 MathNumbers 0 4 3523 24 MathNumbers::MathNumbers 0 2 1 2 0
112
inline MathNumbers::MathNumbers(void) = default;
inline MathNumbers::MathNumbers(MathNumbers const &) = default;
1967 12 ~MathNumbers 0 4 3523 25 MathNumbers::~MathNumbers 0 0 0
32
MathNumbers::~MathNumbers(void);
1968 9 deg_2_rad 0 1 0 9 deg_2_rad 0 2 1876 1877 0
67
inline double deg_2_rad(double f);
inline float deg_2_rad(float f);
1969 9 rad_2_deg 0 1 0 9 rad_2_deg 0 2 1878 1879 0
67
inline double rad_2_deg(double f);
inline float rad_2_deg(float f);
1970 10 LVecBase2f 0 4 3524 22 LVecBase2f::LVecBase2f 0 4 3 4 5 6 22
/**
*
*/
/**
*
*/
205
inline LVecBase2f::LVecBase2f(void) = default;
inline LVecBase2f::LVecBase2f(float fill_value);
inline LVecBase2f::LVecBase2f(float x, float y);
inline LVecBase2f::LVecBase2f(LVecBase2f const &) = default;
1971 12 operator new 0 4 3524 24 LVecBase2f::operator new 0 1 7 0
124
inline void *LVecBase2f::operator new(std::size_t size);
inline void *LVecBase2f::operator new(std::size_t size, void *ptr);
1972 15 operator delete 0 4 3524 27 LVecBase2f::operator delete 0 0 0
108
inline void LVecBase2f::operator delete(void *ptr);
inline void LVecBase2f::operator delete(void *, void *);
1973 12 validate_ptr 0 4 3524 24 LVecBase2f::validate_ptr 0 0 0
61
static inline bool LVecBase2f::validate_ptr(void const *ptr);
1974 10 operator = 0 4 3524 22 LVecBase2f::operator = 0 2 8 9 0
119
void LVecBase2f::operator =(LVecBase2f const &copy) = default;
void LVecBase2f::operator =(float fill_value) = default;
1975 4 zero 0 4 3524 16 LVecBase2f::zero 0 1 10 40
/**
* Returns a zero-length vector.
*/
55
static inline LVecBase2f const &LVecBase2f::zero(void);
1976 6 unit_x 0 4 3524 18 LVecBase2f::unit_x 0 1 11 35
/**
* Returns a unit X vector.
*/
57
static inline LVecBase2f const &LVecBase2f::unit_x(void);
1977 6 unit_y 0 4 3524 18 LVecBase2f::unit_y 0 1 12 35
/**
* Returns a unit Y vector.
*/
57
static inline LVecBase2f const &LVecBase2f::unit_y(void);
1978 10 __reduce__ 0 4 3524 22 LVecBase2f::__reduce__ 0 1 13 0
62
inline PyObject *LVecBase2f::__reduce__(PyObject *self) const;
1979 11 __getattr__ 0 4 3524 23 LVecBase2f::__getattr__ 0 1 14 0
93
inline PyObject *LVecBase2f::__getattr__(PyObject *self, std::string const &attr_name) const;
1980 11 __setattr__ 0 4 3524 23 LVecBase2f::__setattr__ 0 1 15 0
99
inline int LVecBase2f::__setattr__(PyObject *self, std::string const &attr_name, PyObject *assign);
1981 11 operator [] 0 4 3524 23 LVecBase2f::operator [] 0 2 16 17 10
/**
*
*/
96
inline float LVecBase2f::operator [](int i) const;
inline float &LVecBase2f::operator [](int i);
1982 4 size 0 4 3524 16 LVecBase2f::size 0 1 18 0
44
static constexpr int LVecBase2f::size(void);
1983 6 is_nan 0 4 3524 18 LVecBase2f::is_nan 0 1 19 91
/**
* Returns true if any component of the vector is not-a-number, false
* otherwise.
*/
43
inline bool LVecBase2f::is_nan(void) const;
1984 8 get_cell 0 4 3524 20 LVecBase2f::get_cell 0 1 20 10
/**
*
*/
47
inline float LVecBase2f::get_cell(int i) const;
1985 8 set_cell 0 4 3524 20 LVecBase2f::set_cell 0 1 21 10
/**
*
*/
53
inline void LVecBase2f::set_cell(int i, float value);
1986 5 get_x 0 4 3524 17 LVecBase2f::get_x 0 1 22 10
/**
*
*/
43
inline float LVecBase2f::get_x(void) const;
1987 5 get_y 0 4 3524 17 LVecBase2f::get_y 0 1 23 10
/**
*
*/
43
inline float LVecBase2f::get_y(void) const;
1988 5 set_x 0 4 3524 17 LVecBase2f::set_x 0 1 24 10
/**
*
*/
43
inline void LVecBase2f::set_x(float value);
1989 5 set_y 0 4 3524 17 LVecBase2f::set_y 0 1 25 10
/**
*
*/
43
inline void LVecBase2f::set_y(float value);
1990 11 add_to_cell 0 4 3524 23 LVecBase2f::add_to_cell 0 1 26 164
// These next functions add to an existing value. i.e.
// foo.set_x(foo.get_x() + value) These are useful to reduce overhead in
// scripting languages:
/**
*
*/
56
inline void LVecBase2f::add_to_cell(int i, float value);
1991 5 add_x 0 4 3524 17 LVecBase2f::add_x 0 1 27 10
/**
*
*/
43
inline void LVecBase2f::add_x(float value);
1992 5 add_y 0 4 3524 17 LVecBase2f::add_y 0 1 28 10
/**
*
*/
43
inline void LVecBase2f::add_y(float value);
1993 8 get_data 0 4 3524 20 LVecBase2f::get_data 0 1 29 155
/**
* Returns the address of the first of the two data elements in the vector.
* The next element occupies the next position consecutively in memory.
*/
53
inline float const *LVecBase2f::get_data(void) const;
1994 18 get_num_components 0 4 3524 30 LVecBase2f::get_num_components 0 1 30 0
58
static constexpr int LVecBase2f::get_num_components(void);
1995 4 fill 0 4 3524 16 LVecBase2f::fill 0 1 31 129
/**
* Sets each element of the vector to the indicated fill_value. This is
* particularly useful for initializing to zero.
*/
47
inline void LVecBase2f::fill(float fill_value);
1996 3 set 0 4 3524 15 LVecBase2f::set 0 1 32 10
/**
*
*/
46
inline void LVecBase2f::set(float x, float y);
1997 3 dot 0 4 3524 15 LVecBase2f::dot 0 1 33 10
/**
*
*/
60
inline float LVecBase2f::dot(LVecBase2f const &other) const;
1998 14 length_squared 0 4 3524 26 LVecBase2f::length_squared 0 1 34 69
/**
* Returns the square of the vector's length, cheap and easy.
*/
52
inline float LVecBase2f::length_squared(void) const;
1999 6 length 0 4 3524 18 LVecBase2f::length 0 1 35 72
/**
* Returns the length of the vector, by the Pythagorean theorem.
*/
44
inline float LVecBase2f::length(void) const;
2000 9 normalize 0 4 3524 21 LVecBase2f::normalize 0 1 36 127
/**
* Normalizes the vector in place. Returns true if the vector was normalized,
* false if it was a zero-length vector.
*/
40
inline bool LVecBase2f::normalize(void);
2001 10 normalized 0 4 3524 22 LVecBase2f::normalized 0 1 37 160
/**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/
53
inline LVecBase2f LVecBase2f::normalized(void) const;
2002 7 project 0 4 3524 19 LVecBase2f::project 0 1 38 152
/**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/
68
inline LVecBase2f LVecBase2f::project(LVecBase2f const &onto) const;
2003 10 operator < 0 4 3524 22 LVecBase2f::operator < 0 1 39 0
66
inline bool LVecBase2f::operator <(LVecBase2f const &other) const;
2004 11 operator == 0 4 3524 23 LVecBase2f::operator == 0 1 40 0
67
inline bool LVecBase2f::operator ==(LVecBase2f const &other) const;
2005 11 operator != 0 4 3524 23 LVecBase2f::operator != 0 1 41 0
67
inline bool LVecBase2f::operator !=(LVecBase2f const &other) const;
2006 10 compare_to 0 4 3524 22 LVecBase2f::compare_to 0 2 42 43 332
/**
* This flavor of compare_to uses a default threshold value based on the
* numeric type.
*/
/**
* Sorts vectors lexicographically, componentwise. Returns a number less than
* 0 if this vector sorts before the other one, greater than zero if it sorts
* after, 0 if they are equivalent (within the indicated tolerance).
*/
148
inline int LVecBase2f::compare_to(LVecBase2f const &other) const;
inline int LVecBase2f::compare_to(LVecBase2f const &other, float threshold) const;
2007 8 get_hash 0 4 3524 20 LVecBase2f::get_hash 0 2 44 45 100
/**
* Returns a suitable hash for phash_map.
*/
/**
* Returns a suitable hash for phash_map.
*/
116
inline std::size_t LVecBase2f::get_hash(void) const;
inline std::size_t LVecBase2f::get_hash(float threshold) const;
2008 8 add_hash 0 4 3524 20 LVecBase2f::add_hash 0 2 46 47 100
/**
* Adds the vector into the running hash.
*/
/**
* Adds the vector into the running hash.
*/
146
inline std::size_t LVecBase2f::add_hash(std::size_t hash) const;
inline std::size_t LVecBase2f::add_hash(std::size_t hash, float threshold) const;
2009 13 generate_hash 0 4 3524 25 LVecBase2f::generate_hash 0 2 48 49 120
/**
* Adds the vector to the indicated hash generator.
*/
/**
* Adds the vector to the indicated hash generator.
*/
170
inline void LVecBase2f::generate_hash(ChecksumHashGenerator &hashgen) const;
inline void LVecBase2f::generate_hash(ChecksumHashGenerator &hashgen, float threshold) const;
2010 10 operator - 0 68 3524 22 LVecBase2f::operator - 0 1 50 0
53
inline LVecBase2f LVecBase2f::operator -(void) const;
2011 10 operator + 0 4 3524 22 LVecBase2f::operator + 0 1 51 0
72
inline LVecBase2f LVecBase2f::operator +(LVecBase2f const &other) const;
2012 10 operator - 0 4 3524 22 LVecBase2f::operator - 0 1 52 0
72
inline LVecBase2f LVecBase2f::operator -(LVecBase2f const &other) const;
2013 10 operator * 0 4 3524 22 LVecBase2f::operator * 0 1 53 0
61
inline LVecBase2f LVecBase2f::operator *(float scalar) const;
2014 10 operator / 0 4 3524 22 LVecBase2f::operator / 0 1 54 0
61
inline LVecBase2f LVecBase2f::operator /(float scalar) const;
2015 11 operator += 0 4 3524 23 LVecBase2f::operator += 0 1 55 0
61
inline void LVecBase2f::operator +=(LVecBase2f const &other);
2016 11 operator -= 0 4 3524 23 LVecBase2f::operator -= 0 1 56 0
61
inline void LVecBase2f::operator -=(LVecBase2f const &other);
2017 11 operator *= 0 4 3524 23 LVecBase2f::operator *= 0 1 57 0
50
inline void LVecBase2f::operator *=(float scalar);
2018 11 operator /= 0 4 3524 23 LVecBase2f::operator /= 0 1 58 0
50
inline void LVecBase2f::operator /=(float scalar);
2019 18 componentwise_mult 0 4 3524 30 LVecBase2f::componentwise_mult 0 1 59 10
/**
*
*/
68
inline void LVecBase2f::componentwise_mult(LVecBase2f const &other);
2020 7 __pow__ 0 4 3524 19 LVecBase2f::__pow__ 0 1 60 0
60
inline LVecBase2f LVecBase2f::__pow__(float exponent) const;
2021 8 __ipow__ 0 4 3524 20 LVecBase2f::__ipow__ 0 1 61 0
70
inline PyObject *LVecBase2f::__ipow__(PyObject *self, float exponent);
2022 4 fmax 0 4 3524 16 LVecBase2f::fmax 0 1 62 10
/**
*
*/
66
inline LVecBase2f LVecBase2f::fmax(LVecBase2f const &other) const;
2023 4 fmin 0 4 3524 16 LVecBase2f::fmin 0 1 63 10
/**
*
*/
66
inline LVecBase2f LVecBase2f::fmin(LVecBase2f const &other) const;
2024 12 almost_equal 0 4 3524 24 LVecBase2f::almost_equal 0 2 64 65 210
/**
* Returns true if two vectors are memberwise equal within a specified
* tolerance.
*/
/**
* Returns true if two vectors are memberwise equal within a default tolerance
* based on the numeric type.
*/
154
inline bool LVecBase2f::almost_equal(LVecBase2f const &other, float threshold) const;
inline bool LVecBase2f::almost_equal(LVecBase2f const &other) const;
2025 6 output 0 4 3524 18 LVecBase2f::output 0 1 66 10
/**
*
*/
56
inline void LVecBase2f::output(std::ostream &out) const;
2026 8 __repr__ 0 4 3524 20 LVecBase2f::__repr__ 0 1 67 0
52
inline std::string LVecBase2f::__repr__(void) const;
2027 20 write_datagram_fixed 0 4 3524 32 LVecBase2f::write_datagram_fixed 0 1 68 332
/**
* 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 appropriate when you want to
* write a fixed-width value to the datagram, especially when you are not
* writing a bam file.
*/
74
inline void LVecBase2f::write_datagram_fixed(Datagram &destination) const;
2028 19 read_datagram_fixed 0 4 3524 31 LVecBase2f::read_datagram_fixed 0 1 69 114
/**
* Reads the vector from the Datagram using get_float32() or get_float64().
* See write_datagram_fixed().
*/
70
inline void LVecBase2f::read_datagram_fixed(DatagramIterator &source);
2029 14 write_datagram 0 4 3524 26 LVecBase2f::write_datagram 0 1 70 205
/**
* Writes the vector to the Datagram using add_stdfloat(). This is
* appropriate when you want to write the vector using the standard width
* setting, especially when you are writing a bam file.
*/
68
inline void LVecBase2f::write_datagram(Datagram &destination) const;
2030 13 read_datagram 0 4 3524 25 LVecBase2f::read_datagram 0 1 71 67
/**
* Reads the vector from the Datagram using get_stdfloat().
*/
64
inline void LVecBase2f::read_datagram(DatagramIterator &source);
2031 14 get_class_type 0 4 3524 26 LVecBase2f::get_class_type 0 1 72 0
51
static TypeHandle LVecBase2f::get_class_type(void);
2032 11 ~LVecBase2f 0 4 3524 23 LVecBase2f::~LVecBase2f 0 0 0
30
LVecBase2f::~LVecBase2f(void);
2033 10 LVecBase2d 0 4 3527 22 LVecBase2d::LVecBase2d 0 4 73 74 75 76 22
/**
*
*/
/**
*
*/
208
inline LVecBase2d::LVecBase2d(void) = default;
inline LVecBase2d::LVecBase2d(double fill_value);
inline LVecBase2d::LVecBase2d(double x, double y);
inline LVecBase2d::LVecBase2d(LVecBase2d const &) = default;
2034 12 operator new 0 4 3527 24 LVecBase2d::operator new 0 1 77 0
124
inline void *LVecBase2d::operator new(std::size_t size);
inline void *LVecBase2d::operator new(std::size_t size, void *ptr);
2035 15 operator delete 0 4 3527 27 LVecBase2d::operator delete 0 0 0
108
inline void LVecBase2d::operator delete(void *ptr);
inline void LVecBase2d::operator delete(void *, void *);
2036 12 validate_ptr 0 4 3527 24 LVecBase2d::validate_ptr 0 0 0
61
static inline bool LVecBase2d::validate_ptr(void const *ptr);
2037 10 operator = 0 4 3527 22 LVecBase2d::operator = 0 2 78 79 0
120
void LVecBase2d::operator =(LVecBase2d const &copy) = default;
void LVecBase2d::operator =(double fill_value) = default;
2038 4 zero 0 4 3527 16 LVecBase2d::zero 0 1 80 40
/**
* Returns a zero-length vector.
*/
55
static inline LVecBase2d const &LVecBase2d::zero(void);
2039 6 unit_x 0 4 3527 18 LVecBase2d::unit_x 0 1 81 35
/**
* Returns a unit X vector.
*/
57
static inline LVecBase2d const &LVecBase2d::unit_x(void);
2040 6 unit_y 0 4 3527 18 LVecBase2d::unit_y 0 1 82 35
/**
* Returns a unit Y vector.
*/
57
static inline LVecBase2d const &LVecBase2d::unit_y(void);
2041 10 __reduce__ 0 4 3527 22 LVecBase2d::__reduce__ 0 1 83 0
62
inline PyObject *LVecBase2d::__reduce__(PyObject *self) const;
2042 11 __getattr__ 0 4 3527 23 LVecBase2d::__getattr__ 0 1 84 0
93
inline PyObject *LVecBase2d::__getattr__(PyObject *self, std::string const &attr_name) const;
2043 11 __setattr__ 0 4 3527 23 LVecBase2d::__setattr__ 0 1 85 0
99
inline int LVecBase2d::__setattr__(PyObject *self, std::string const &attr_name, PyObject *assign);
2044 11 operator [] 0 4 3527 23 LVecBase2d::operator [] 0 2 86 87 10
/**
*
*/
98
inline double LVecBase2d::operator [](int i) const;
inline double &LVecBase2d::operator [](int i);
2045 4 size 0 4 3527 16 LVecBase2d::size 0 1 88 0
44
static constexpr int LVecBase2d::size(void);
2046 6 is_nan 0 4 3527 18 LVecBase2d::is_nan 0 1 89 91
/**
* Returns true if any component of the vector is not-a-number, false
* otherwise.
*/
43
inline bool LVecBase2d::is_nan(void) const;
2047 8 get_cell 0 4 3527 20 LVecBase2d::get_cell 0 1 90 10
/**
*
*/
48
inline double LVecBase2d::get_cell(int i) const;
2048 8 set_cell 0 4 3527 20 LVecBase2d::set_cell 0 1 91 10
/**
*
*/
54
inline void LVecBase2d::set_cell(int i, double value);
2049 5 get_x 0 4 3527 17 LVecBase2d::get_x 0 1 92 10
/**
*
*/
44
inline double LVecBase2d::get_x(void) const;
2050 5 get_y 0 4 3527 17 LVecBase2d::get_y 0 1 93 10
/**
*
*/
44
inline double LVecBase2d::get_y(void) const;
2051 5 set_x 0 4 3527 17 LVecBase2d::set_x 0 1 94 10
/**
*
*/
44
inline void LVecBase2d::set_x(double value);
2052 5 set_y 0 4 3527 17 LVecBase2d::set_y 0 1 95 10
/**
*
*/
44
inline void LVecBase2d::set_y(double value);
2053 11 add_to_cell 0 4 3527 23 LVecBase2d::add_to_cell 0 1 96 164
// These next functions add to an existing value. i.e.
// foo.set_x(foo.get_x() + value) These are useful to reduce overhead in
// scripting languages:
/**
*
*/
57
inline void LVecBase2d::add_to_cell(int i, double value);
2054 5 add_x 0 4 3527 17 LVecBase2d::add_x 0 1 97 10
/**
*
*/
44
inline void LVecBase2d::add_x(double value);
2055 5 add_y 0 4 3527 17 LVecBase2d::add_y 0 1 98 10
/**
*
*/
44
inline void LVecBase2d::add_y(double value);
2056 8 get_data 0 4 3527 20 LVecBase2d::get_data 0 1 99 155
/**
* Returns the address of the first of the two data elements in the vector.
* The next element occupies the next position consecutively in memory.
*/
54
inline double const *LVecBase2d::get_data(void) const;
2057 18 get_num_components 0 4 3527 30 LVecBase2d::get_num_components 0 1 100 0
58
static constexpr int LVecBase2d::get_num_components(void);
2058 4 fill 0 4 3527 16 LVecBase2d::fill 0 1 101 129
/**
* Sets each element of the vector to the indicated fill_value. This is
* particularly useful for initializing to zero.
*/
48
inline void LVecBase2d::fill(double fill_value);
2059 3 set 0 4 3527 15 LVecBase2d::set 0 1 102 10
/**
*
*/
48
inline void LVecBase2d::set(double x, double y);
2060 3 dot 0 4 3527 15 LVecBase2d::dot 0 1 103 10
/**
*
*/
61
inline double LVecBase2d::dot(LVecBase2d const &other) const;
2061 14 length_squared 0 4 3527 26 LVecBase2d::length_squared 0 1 104 69
/**
* Returns the square of the vector's length, cheap and easy.
*/
53
inline double LVecBase2d::length_squared(void) const;
2062 6 length 0 4 3527 18 LVecBase2d::length 0 1 105 72
/**
* Returns the length of the vector, by the Pythagorean theorem.
*/
45
inline double LVecBase2d::length(void) const;
2063 9 normalize 0 4 3527 21 LVecBase2d::normalize 0 1 106 127
/**
* Normalizes the vector in place. Returns true if the vector was normalized,
* false if it was a zero-length vector.
*/
40
inline bool LVecBase2d::normalize(void);
2064 10 normalized 0 4 3527 22 LVecBase2d::normalized 0 1 107 160
/**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/
53
inline LVecBase2d LVecBase2d::normalized(void) const;
2065 7 project 0 4 3527 19 LVecBase2d::project 0 1 108 152
/**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/
68
inline LVecBase2d LVecBase2d::project(LVecBase2d const &onto) const;
2066 10 operator < 0 4 3527 22 LVecBase2d::operator < 0 1 109 0
66
inline bool LVecBase2d::operator <(LVecBase2d const &other) const;
2067 11 operator == 0 4 3527 23 LVecBase2d::operator == 0 1 110 0
67
inline bool LVecBase2d::operator ==(LVecBase2d const &other) const;
2068 11 operator != 0 4 3527 23 LVecBase2d::operator != 0 1 111 0
67
inline bool LVecBase2d::operator !=(LVecBase2d const &other) const;
2069 10 compare_to 0 4 3527 22 LVecBase2d::compare_to 0 2 112 113 332
/**
* This flavor of compare_to uses a default threshold value based on the
* numeric type.
*/
/**
* Sorts vectors lexicographically, componentwise. Returns a number less than
* 0 if this vector sorts before the other one, greater than zero if it sorts
* after, 0 if they are equivalent (within the indicated tolerance).
*/
149
inline int LVecBase2d::compare_to(LVecBase2d const &other) const;
inline int LVecBase2d::compare_to(LVecBase2d const &other, double threshold) const;
2070 8 get_hash 0 4 3527 20 LVecBase2d::get_hash 0 2 114 115 100
/**
* Returns a suitable hash for phash_map.
*/
/**
* Returns a suitable hash for phash_map.
*/
117
inline std::size_t LVecBase2d::get_hash(void) const;
inline std::size_t LVecBase2d::get_hash(double threshold) const;
2071 8 add_hash 0 4 3527 20 LVecBase2d::add_hash 0 2 116 117 100
/**
* Adds the vector into the running hash.
*/
/**
* Adds the vector into the running hash.
*/
147
inline std::size_t LVecBase2d::add_hash(std::size_t hash) const;
inline std::size_t LVecBase2d::add_hash(std::size_t hash, double threshold) const;
2072 13 generate_hash 0 4 3527 25 LVecBase2d::generate_hash 0 2 118 119 120
/**
* Adds the vector to the indicated hash generator.
*/
/**
* Adds the vector to the indicated hash generator.
*/
171
inline void LVecBase2d::generate_hash(ChecksumHashGenerator &hashgen) const;
inline void LVecBase2d::generate_hash(ChecksumHashGenerator &hashgen, double threshold) const;
2073 10 operator - 0 68 3527 22 LVecBase2d::operator - 0 1 120 0
53
inline LVecBase2d LVecBase2d::operator -(void) const;
2074 10 operator + 0 4 3527 22 LVecBase2d::operator + 0 1 121 0
72
inline LVecBase2d LVecBase2d::operator +(LVecBase2d const &other) const;
2075 10 operator - 0 4 3527 22 LVecBase2d::operator - 0 1 122 0
72
inline LVecBase2d LVecBase2d::operator -(LVecBase2d const &other) const;
2076 10 operator * 0 4 3527 22 LVecBase2d::operator * 0 1 123 0
62
inline LVecBase2d LVecBase2d::operator *(double scalar) const;
2077 10 operator / 0 4 3527 22 LVecBase2d::operator / 0 1 124 0
62
inline LVecBase2d LVecBase2d::operator /(double scalar) const;
2078 11 operator += 0 4 3527 23 LVecBase2d::operator += 0 1 125 0
61
inline void LVecBase2d::operator +=(LVecBase2d const &other);
2079 11 operator -= 0 4 3527 23 LVecBase2d::operator -= 0 1 126 0
61
inline void LVecBase2d::operator -=(LVecBase2d const &other);
2080 11 operator *= 0 4 3527 23 LVecBase2d::operator *= 0 1 127 0
51
inline void LVecBase2d::operator *=(double scalar);
2081 11 operator /= 0 4 3527 23 LVecBase2d::operator /= 0 1 128 0
51
inline void LVecBase2d::operator /=(double scalar);
2082 18 componentwise_mult 0 4 3527 30 LVecBase2d::componentwise_mult 0 1 129 10
/**
*
*/
68
inline void LVecBase2d::componentwise_mult(LVecBase2d const &other);
2083 7 __pow__ 0 4 3527 19 LVecBase2d::__pow__ 0 1 130 0
61
inline LVecBase2d LVecBase2d::__pow__(double exponent) const;
2084 8 __ipow__ 0 4 3527 20 LVecBase2d::__ipow__ 0 1 131 0
71
inline PyObject *LVecBase2d::__ipow__(PyObject *self, double exponent);
2085 4 fmax 0 4 3527 16 LVecBase2d::fmax 0 1 132 10
/**
*
*/
66
inline LVecBase2d LVecBase2d::fmax(LVecBase2d const &other) const;
2086 4 fmin 0 4 3527 16 LVecBase2d::fmin 0 1 133 10
/**
*
*/
66
inline LVecBase2d LVecBase2d::fmin(LVecBase2d const &other) const;
2087 12 almost_equal 0 4 3527 24 LVecBase2d::almost_equal 0 2 134 135 210
/**
* Returns true if two vectors are memberwise equal within a specified
* tolerance.
*/
/**
* Returns true if two vectors are memberwise equal within a default tolerance
* based on the numeric type.
*/
155
inline bool LVecBase2d::almost_equal(LVecBase2d const &other, double threshold) const;
inline bool LVecBase2d::almost_equal(LVecBase2d const &other) const;
2088 6 output 0 4 3527 18 LVecBase2d::output 0 1 136 10
/**
*
*/
56
inline void LVecBase2d::output(std::ostream &out) const;
2089 8 __repr__ 0 4 3527 20 LVecBase2d::__repr__ 0 1 137 0
52
inline std::string LVecBase2d::__repr__(void) const;
2090 20 write_datagram_fixed 0 4 3527 32 LVecBase2d::write_datagram_fixed 0 1 138 332
/**
* 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 appropriate when you want to
* write a fixed-width value to the datagram, especially when you are not
* writing a bam file.
*/
74
inline void LVecBase2d::write_datagram_fixed(Datagram &destination) const;
2091 19 read_datagram_fixed 0 4 3527 31 LVecBase2d::read_datagram_fixed 0 1 139 114
/**
* Reads the vector from the Datagram using get_float32() or get_float64().
* See write_datagram_fixed().
*/
70
inline void LVecBase2d::read_datagram_fixed(DatagramIterator &source);
2092 14 write_datagram 0 4 3527 26 LVecBase2d::write_datagram 0 1 140 205
/**
* Writes the vector to the Datagram using add_stdfloat(). This is
* appropriate when you want to write the vector using the standard width
* setting, especially when you are writing a bam file.
*/
68
inline void LVecBase2d::write_datagram(Datagram &destination) const;
2093 13 read_datagram 0 4 3527 25 LVecBase2d::read_datagram 0 1 141 67
/**
* Reads the vector from the Datagram using get_stdfloat().
*/
64
inline void LVecBase2d::read_datagram(DatagramIterator &source);
2094 14 get_class_type 0 4 3527 26 LVecBase2d::get_class_type 0 1 142 0
51
static TypeHandle LVecBase2d::get_class_type(void);
2095 11 ~LVecBase2d 0 4 3527 23 LVecBase2d::~LVecBase2d 0 0 0
30
LVecBase2d::~LVecBase2d(void);
2096 10 LVecBase2i 0 4 3530 22 LVecBase2i::LVecBase2i 0 4 143 144 145 146 22
/**
*
*/
/**
*
*/
199
inline LVecBase2i::LVecBase2i(void) = default;
inline LVecBase2i::LVecBase2i(int fill_value);
inline LVecBase2i::LVecBase2i(int x, int y);
inline LVecBase2i::LVecBase2i(LVecBase2i const &) = default;
2097 12 operator new 0 4 3530 24 LVecBase2i::operator new 0 1 147 0
124
inline void *LVecBase2i::operator new(std::size_t size);
inline void *LVecBase2i::operator new(std::size_t size, void *ptr);
2098 15 operator delete 0 4 3530 27 LVecBase2i::operator delete 0 0 0
108
inline void LVecBase2i::operator delete(void *ptr);
inline void LVecBase2i::operator delete(void *, void *);
2099 12 validate_ptr 0 4 3530 24 LVecBase2i::validate_ptr 0 0 0
61
static inline bool LVecBase2i::validate_ptr(void const *ptr);
2100 10 operator = 0 4 3530 22 LVecBase2i::operator = 0 2 148 149 0
117
void LVecBase2i::operator =(LVecBase2i const &copy) = default;
void LVecBase2i::operator =(int fill_value) = default;
2101 4 zero 0 4 3530 16 LVecBase2i::zero 0 1 150 40
/**
* Returns a zero-length vector.
*/
55
static inline LVecBase2i const &LVecBase2i::zero(void);
2102 6 unit_x 0 4 3530 18 LVecBase2i::unit_x 0 1 151 35
/**
* Returns a unit X vector.
*/
57
static inline LVecBase2i const &LVecBase2i::unit_x(void);
2103 6 unit_y 0 4 3530 18 LVecBase2i::unit_y 0 1 152 35
/**
* Returns a unit Y vector.
*/
57
static inline LVecBase2i const &LVecBase2i::unit_y(void);
2104 10 __reduce__ 0 4 3530 22 LVecBase2i::__reduce__ 0 1 153 0
62
inline PyObject *LVecBase2i::__reduce__(PyObject *self) const;
2105 11 __getattr__ 0 4 3530 23 LVecBase2i::__getattr__ 0 1 154 0
93
inline PyObject *LVecBase2i::__getattr__(PyObject *self, std::string const &attr_name) const;
2106 11 __setattr__ 0 4 3530 23 LVecBase2i::__setattr__ 0 1 155 0
99
inline int LVecBase2i::__setattr__(PyObject *self, std::string const &attr_name, PyObject *assign);
2107 11 operator [] 0 4 3530 23 LVecBase2i::operator [] 0 2 156 157 10
/**
*
*/
92
inline int LVecBase2i::operator [](int i) const;
inline int &LVecBase2i::operator [](int i);
2108 4 size 0 4 3530 16 LVecBase2i::size 0 1 158 0
44
static constexpr int LVecBase2i::size(void);
2109 6 is_nan 0 4 3530 18 LVecBase2i::is_nan 0 1 159 91
/**
* Returns true if any component of the vector is not-a-number, false
* otherwise.
*/
43
inline bool LVecBase2i::is_nan(void) const;
2110 8 get_cell 0 4 3530 20 LVecBase2i::get_cell 0 1 160 10
/**
*
*/
45
inline int LVecBase2i::get_cell(int i) const;
2111 8 set_cell 0 4 3530 20 LVecBase2i::set_cell 0 1 161 10
/**
*
*/
51
inline void LVecBase2i::set_cell(int i, int value);
2112 5 get_x 0 4 3530 17 LVecBase2i::get_x 0 1 162 10
/**
*
*/
41
inline int LVecBase2i::get_x(void) const;
2113 5 get_y 0 4 3530 17 LVecBase2i::get_y 0 1 163 10
/**
*
*/
41
inline int LVecBase2i::get_y(void) const;
2114 5 set_x 0 4 3530 17 LVecBase2i::set_x 0 1 164 10
/**
*
*/
41
inline void LVecBase2i::set_x(int value);
2115 5 set_y 0 4 3530 17 LVecBase2i::set_y 0 1 165 10
/**
*
*/
41
inline void LVecBase2i::set_y(int value);
2116 11 add_to_cell 0 4 3530 23 LVecBase2i::add_to_cell 0 1 166 164
// These next functions add to an existing value. i.e.
// foo.set_x(foo.get_x() + value) These are useful to reduce overhead in
// scripting languages:
/**
*
*/
54
inline void LVecBase2i::add_to_cell(int i, int value);
2117 5 add_x 0 4 3530 17 LVecBase2i::add_x 0 1 167 10
/**
*
*/
41
inline void LVecBase2i::add_x(int value);
2118 5 add_y 0 4 3530 17 LVecBase2i::add_y 0 1 168 10
/**
*
*/
41
inline void LVecBase2i::add_y(int value);
2119 8 get_data 0 4 3530 20 LVecBase2i::get_data 0 1 169 155
/**
* Returns the address of the first of the two data elements in the vector.
* The next element occupies the next position consecutively in memory.
*/
51
inline int const *LVecBase2i::get_data(void) const;
2120 18 get_num_components 0 4 3530 30 LVecBase2i::get_num_components 0 1 170 0
58
static constexpr int LVecBase2i::get_num_components(void);
2121 4 fill 0 4 3530 16 LVecBase2i::fill 0 1 171 129
/**
* Sets each element of the vector to the indicated fill_value. This is
* particularly useful for initializing to zero.
*/
45
inline void LVecBase2i::fill(int fill_value);
2122 3 set 0 4 3530 15 LVecBase2i::set 0 1 172 10
/**
*
*/
42
inline void LVecBase2i::set(int x, int y);
2123 3 dot 0 4 3530 15 LVecBase2i::dot 0 1 173 10
/**
*
*/
58
inline int LVecBase2i::dot(LVecBase2i const &other) const;
2124 14 length_squared 0 4 3530 26 LVecBase2i::length_squared 0 1 174 69
/**
* Returns the square of the vector's length, cheap and easy.
*/
50
inline int LVecBase2i::length_squared(void) const;
2125 10 operator < 0 4 3530 22 LVecBase2i::operator < 0 1 175 0
66
inline bool LVecBase2i::operator <(LVecBase2i const &other) const;
2126 11 operator == 0 4 3530 23 LVecBase2i::operator == 0 1 176 0
67
inline bool LVecBase2i::operator ==(LVecBase2i const &other) const;
2127 11 operator != 0 4 3530 23 LVecBase2i::operator != 0 1 177 0
67
inline bool LVecBase2i::operator !=(LVecBase2i const &other) const;
2128 10 compare_to 0 4 3530 22 LVecBase2i::compare_to 0 1 178 97
/**
* This flavor of compare_to uses a default threshold value based on the
* numeric type.
*/
65
inline int LVecBase2i::compare_to(LVecBase2i const &other) const;
2129 8 get_hash 0 4 3530 20 LVecBase2i::get_hash 0 1 179 49
/**
* Returns a suitable hash for phash_map.
*/
52
inline std::size_t LVecBase2i::get_hash(void) const;
2130 8 add_hash 0 4 3530 20 LVecBase2i::add_hash 0 1 180 49
/**
* Adds the vector into the running hash.
*/
64
inline std::size_t LVecBase2i::add_hash(std::size_t hash) const;
2131 13 generate_hash 0 4 3530 25 LVecBase2i::generate_hash 0 1 181 59
/**
* Adds the vector to the indicated hash generator.
*/
76
inline void LVecBase2i::generate_hash(ChecksumHashGenerator &hashgen) const;
2132 10 operator - 0 68 3530 22 LVecBase2i::operator - 0 1 182 0
53
inline LVecBase2i LVecBase2i::operator -(void) const;
2133 10 operator + 0 4 3530 22 LVecBase2i::operator + 0 1 183 0
72
inline LVecBase2i LVecBase2i::operator +(LVecBase2i const &other) const;
2134 10 operator - 0 4 3530 22 LVecBase2i::operator - 0 1 184 0
72
inline LVecBase2i LVecBase2i::operator -(LVecBase2i const &other) const;
2135 10 operator * 0 4 3530 22 LVecBase2i::operator * 0 1 185 0
59
inline LVecBase2i LVecBase2i::operator *(int scalar) const;
2136 10 operator / 0 4 3530 22 LVecBase2i::operator / 0 1 186 0
59
inline LVecBase2i LVecBase2i::operator /(int scalar) const;
2137 11 operator += 0 4 3530 23 LVecBase2i::operator += 0 1 187 0
61
inline void LVecBase2i::operator +=(LVecBase2i const &other);
2138 11 operator -= 0 4 3530 23 LVecBase2i::operator -= 0 1 188 0
61
inline void LVecBase2i::operator -=(LVecBase2i const &other);
2139 11 operator *= 0 4 3530 23 LVecBase2i::operator *= 0 1 189 0
48
inline void LVecBase2i::operator *=(int scalar);
2140 11 operator /= 0 4 3530 23 LVecBase2i::operator /= 0 1 190 0
48
inline void LVecBase2i::operator /=(int scalar);
2141 18 componentwise_mult 0 4 3530 30 LVecBase2i::componentwise_mult 0 1 191 10
/**
*
*/
68
inline void LVecBase2i::componentwise_mult(LVecBase2i const &other);
2142 7 __pow__ 0 4 3530 19 LVecBase2i::__pow__ 0 1 192 0
58
inline LVecBase2i LVecBase2i::__pow__(int exponent) const;
2143 8 __ipow__ 0 4 3530 20 LVecBase2i::__ipow__ 0 1 193 0
68
inline PyObject *LVecBase2i::__ipow__(PyObject *self, int exponent);
2144 4 fmax 0 4 3530 16 LVecBase2i::fmax 0 1 194 10
/**
*
*/
66
inline LVecBase2i LVecBase2i::fmax(LVecBase2i const &other) const;
2145 4 fmin 0 4 3530 16 LVecBase2i::fmin 0 1 195 10
/**
*
*/
66
inline LVecBase2i LVecBase2i::fmin(LVecBase2i const &other) const;
2146 12 almost_equal 0 4 3530 24 LVecBase2i::almost_equal 0 2 196 197 210
/**
* Returns true if two vectors are memberwise equal within a specified
* tolerance.
*/
/**
* Returns true if two vectors are memberwise equal within a default tolerance
* based on the numeric type.
*/
152
inline bool LVecBase2i::almost_equal(LVecBase2i const &other, int threshold) const;
inline bool LVecBase2i::almost_equal(LVecBase2i const &other) const;
2147 6 output 0 4 3530 18 LVecBase2i::output 0 1 198 10
/**
*
*/
56
inline void LVecBase2i::output(std::ostream &out) const;
2148 8 __repr__ 0 4 3530 20 LVecBase2i::__repr__ 0 1 199 0
52
inline std::string LVecBase2i::__repr__(void) const;
2149 20 write_datagram_fixed 0 4 3530 32 LVecBase2i::write_datagram_fixed 0 1 200 332
/**
* 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 appropriate when you want to
* write a fixed-width value to the datagram, especially when you are not
* writing a bam file.
*/
74
inline void LVecBase2i::write_datagram_fixed(Datagram &destination) const;
2150 19 read_datagram_fixed 0 4 3530 31 LVecBase2i::read_datagram_fixed 0 1 201 114
/**
* Reads the vector from the Datagram using get_float32() or get_float64().
* See write_datagram_fixed().
*/
70
inline void LVecBase2i::read_datagram_fixed(DatagramIterator &source);
2151 14 write_datagram 0 4 3530 26 LVecBase2i::write_datagram 0 1 202 205
/**
* Writes the vector to the Datagram using add_stdfloat(). This is
* appropriate when you want to write the vector using the standard width
* setting, especially when you are writing a bam file.
*/
68
inline void LVecBase2i::write_datagram(Datagram &destination) const;
2152 13 read_datagram 0 4 3530 25 LVecBase2i::read_datagram 0 1 203 67
/**
* Reads the vector from the Datagram using get_stdfloat().
*/
64
inline void LVecBase2i::read_datagram(DatagramIterator &source);
2153 14 get_class_type 0 4 3530 26 LVecBase2i::get_class_type 0 1 204 0
51
static TypeHandle LVecBase2i::get_class_type(void);
2154 11 ~LVecBase2i 0 4 3530 23 LVecBase2i::~LVecBase2i 0 0 0
30
LVecBase2i::~LVecBase2i(void);
2155 9 LVector2f 0 4 3533 20 LVector2f::LVector2f 0 5 205 206 207 208 209 146
/**
* Constructs a new LVector2 from a LVecBase2
*/
/**
* Constructs a new LVector2 with all components set to the fill value.
*/
/**
*
*/
249
inline LVector2f::LVector2f(void) = default;
inline LVector2f::LVector2f(LVecBase2f const &copy);
inline LVector2f::LVector2f(float fill_value);
inline LVector2f::LVector2f(float x, float y);
inline LVector2f::LVector2f(LVector2f const &) = default;
2156 11 __getattr__ 0 4 3533 22 LVector2f::__getattr__ 0 1 210 0
92
inline PyObject *LVector2f::__getattr__(PyObject *self, std::string const &attr_name) const;
2157 11 __setattr__ 0 4 3533 22 LVector2f::__setattr__ 0 1 211 0
98
inline int LVector2f::__setattr__(PyObject *self, std::string const &attr_name, PyObject *assign);
2158 4 zero 0 4 3533 15 LVector2f::zero 0 1 212 40
/**
* Returns a zero-length vector.
*/
53
static inline LVector2f const &LVector2f::zero(void);
2159 6 unit_x 0 4 3533 17 LVector2f::unit_x 0 1 213 35
/**
* Returns a unit X vector.
*/
55
static inline LVector2f const &LVector2f::unit_x(void);
2160 6 unit_y 0 4 3533 17 LVector2f::unit_y 0 1 214 35
/**
* Returns a unit Y vector.
*/
55
static inline LVector2f const &LVector2f::unit_y(void);
2161 10 operator - 0 68 3533 21 LVector2f::operator - 0 1 215 0
51
inline LVector2f LVector2f::operator -(void) const;
2162 10 operator + 0 4 3533 21 LVector2f::operator + 0 2 216 217 0
141
inline LVecBase2f LVector2f::operator +(LVecBase2f const &other) const;
inline LVector2f LVector2f::operator +(LVector2f const &other) const;
2163 10 operator - 0 4 3533 21 LVector2f::operator - 0 2 218 219 0
141
inline LVecBase2f LVector2f::operator -(LVecBase2f const &other) const;
inline LVector2f LVector2f::operator -(LVector2f const &other) const;
2164 10 operator * 0 4 3533 21 LVector2f::operator * 0 1 220 0
59
inline LVector2f LVector2f::operator *(float scalar) const;
2165 10 operator / 0 4 3533 21 LVector2f::operator / 0 1 221 0
59
inline LVector2f LVector2f::operator /(float scalar) const;
2166 10 normalized 0 4 3533 21 LVector2f::normalized 0 1 222 160
/**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/
51
inline LVector2f LVector2f::normalized(void) const;
2167 7 project 0 4 3533 18 LVector2f::project 0 1 223 152
/**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/
66
inline LVector2f LVector2f::project(LVecBase2f const &onto) const;
2168 16 signed_angle_rad 0 4 3533 27 LVector2f::signed_angle_rad 0 1 224 92
/**
* returns the signed angled between two vectors. normalization is NOT
* necessary
*/
71
inline float LVector2f::signed_angle_rad(LVector2f const &other) const;
2169 16 signed_angle_deg 0 4 3533 27 LVector2f::signed_angle_deg 0 1 225 92
/**
* returns the signed angled between two vectors. normalization is NOT
* necessary
*/
71
inline float LVector2f::signed_angle_deg(LVector2f const &other) const;
2170 8 __repr__ 0 4 3533 19 LVector2f::__repr__ 0 1 226 0
51
inline std::string LVector2f::__repr__(void) const;
2171 14 get_class_type 0 4 3533 25 LVector2f::get_class_type 0 1 227 0
50
static TypeHandle LVector2f::get_class_type(void);
2172 10 ~LVector2f 0 4 3533 21 LVector2f::~LVector2f 0 0 0
28
LVector2f::~LVector2f(void);
2173 9 LVector2d 0 4 3534 20 LVector2d::LVector2d 0 5 228 229 230 231 232 146
/**
* Constructs a new LVector2 from a LVecBase2
*/
/**
* Constructs a new LVector2 with all components set to the fill value.
*/
/**
*
*/
252
inline LVector2d::LVector2d(void) = default;
inline LVector2d::LVector2d(LVecBase2d const &copy);
inline LVector2d::LVector2d(double fill_value);
inline LVector2d::LVector2d(double x, double y);
inline LVector2d::LVector2d(LVector2d const &) = default;
2174 11 __getattr__ 0 4 3534 22 LVector2d::__getattr__ 0 1 233 0
92
inline PyObject *LVector2d::__getattr__(PyObject *self, std::string const &attr_name) const;
2175 11 __setattr__ 0 4 3534 22 LVector2d::__setattr__ 0 1 234 0
98
inline int LVector2d::__setattr__(PyObject *self, std::string const &attr_name, PyObject *assign);
2176 4 zero 0 4 3534 15 LVector2d::zero 0 1 235 40
/**
* Returns a zero-length vector.
*/
53
static inline LVector2d const &LVector2d::zero(void);
2177 6 unit_x 0 4 3534 17 LVector2d::unit_x 0 1 236 35
/**
* Returns a unit X vector.
*/
55
static inline LVector2d const &LVector2d::unit_x(void);
2178 6 unit_y 0 4 3534 17 LVector2d::unit_y 0 1 237 35
/**
* Returns a unit Y vector.
*/
55
static inline LVector2d const &LVector2d::unit_y(void);
2179 10 operator - 0 68 3534 21 LVector2d::operator - 0 1 238 0
51
inline LVector2d LVector2d::operator -(void) const;
2180 10 operator + 0 4 3534 21 LVector2d::operator + 0 2 239 240 0
141
inline LVecBase2d LVector2d::operator +(LVecBase2d const &other) const;
inline LVector2d LVector2d::operator +(LVector2d const &other) const;
2181 10 operator - 0 4 3534 21 LVector2d::operator - 0 2 241 242 0
141
inline LVecBase2d LVector2d::operator -(LVecBase2d const &other) const;
inline LVector2d LVector2d::operator -(LVector2d const &other) const;
2182 10 operator * 0 4 3534 21 LVector2d::operator * 0 1 243 0
60
inline LVector2d LVector2d::operator *(double scalar) const;
2183 10 operator / 0 4 3534 21 LVector2d::operator / 0 1 244 0
60
inline LVector2d LVector2d::operator /(double scalar) const;
2184 10 normalized 0 4 3534 21 LVector2d::normalized 0 1 245 160
/**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/
51
inline LVector2d LVector2d::normalized(void) const;
2185 7 project 0 4 3534 18 LVector2d::project 0 1 246 152
/**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/
66
inline LVector2d LVector2d::project(LVecBase2d const &onto) const;
2186 16 signed_angle_rad 0 4 3534 27 LVector2d::signed_angle_rad 0 1 247 92
/**
* returns the signed angled between two vectors. normalization is NOT
* necessary
*/
72
inline double LVector2d::signed_angle_rad(LVector2d const &other) const;
2187 16 signed_angle_deg 0 4 3534 27 LVector2d::signed_angle_deg 0 1 248 92
/**
* returns the signed angled between two vectors. normalization is NOT
* necessary
*/
72
inline double LVector2d::signed_angle_deg(LVector2d const &other) const;
2188 8 __repr__ 0 4 3534 19 LVector2d::__repr__ 0 1 249 0
51
inline std::string LVector2d::__repr__(void) const;
2189 14 get_class_type 0 4 3534 25 LVector2d::get_class_type 0 1 250 0
50
static TypeHandle LVector2d::get_class_type(void);
2190 10 ~LVector2d 0 4 3534 21 LVector2d::~LVector2d 0 0 0
28
LVector2d::~LVector2d(void);
2191 9 LVector2i 0 4 3535 20 LVector2i::LVector2i 0 5 251 252 253 254 255 146
/**
* Constructs a new LVector2 from a LVecBase2
*/
/**
* Constructs a new LVector2 with all components set to the fill value.
*/
/**
*
*/
243
inline LVector2i::LVector2i(void) = default;
inline LVector2i::LVector2i(LVecBase2i const &copy);
inline LVector2i::LVector2i(int fill_value);
inline LVector2i::LVector2i(int x, int y);
inline LVector2i::LVector2i(LVector2i const &) = default;
2192 11 __getattr__ 0 4 3535 22 LVector2i::__getattr__ 0 1 256 0
92
inline PyObject *LVector2i::__getattr__(PyObject *self, std::string const &attr_name) const;
2193 11 __setattr__ 0 4 3535 22 LVector2i::__setattr__ 0 1 257 0
98
inline int LVector2i::__setattr__(PyObject *self, std::string const &attr_name, PyObject *assign);
2194 4 zero 0 4 3535 15 LVector2i::zero 0 1 258 40
/**
* Returns a zero-length vector.
*/
53
static inline LVector2i const &LVector2i::zero(void);
2195 6 unit_x 0 4 3535 17 LVector2i::unit_x 0 1 259 35
/**
* Returns a unit X vector.
*/
55
static inline LVector2i const &LVector2i::unit_x(void);
2196 6 unit_y 0 4 3535 17 LVector2i::unit_y 0 1 260 35
/**
* Returns a unit Y vector.
*/
55
static inline LVector2i const &LVector2i::unit_y(void);
2197 10 operator - 0 68 3535 21 LVector2i::operator - 0 1 261 0
51
inline LVector2i LVector2i::operator -(void) const;
2198 10 operator + 0 4 3535 21 LVector2i::operator + 0 2 262 263 0
141
inline LVecBase2i LVector2i::operator +(LVecBase2i const &other) const;
inline LVector2i LVector2i::operator +(LVector2i const &other) const;
2199 10 operator - 0 4 3535 21 LVector2i::operator - 0 2 264 265 0
141
inline LVecBase2i LVector2i::operator -(LVecBase2i const &other) const;
inline LVector2i LVector2i::operator -(LVector2i const &other) const;
2200 10 operator * 0 4 3535 21 LVector2i::operator * 0 1 266 0
57
inline LVector2i LVector2i::operator *(int scalar) const;
2201 10 operator / 0 4 3535 21 LVector2i::operator / 0 1 267 0
57
inline LVector2i LVector2i::operator /(int scalar) const;
2202 8 __repr__ 0 4 3535 19 LVector2i::__repr__ 0 1 268 0
51
inline std::string LVector2i::__repr__(void) const;
2203 14 get_class_type 0 4 3535 25 LVector2i::get_class_type 0 1 269 0
50
static TypeHandle LVector2i::get_class_type(void);
2204 10 ~LVector2i 0 4 3535 21 LVector2i::~LVector2i 0 0 0
28
LVector2i::~LVector2i(void);
2205 8 LPoint2f 0 4 3536 18 LPoint2f::LPoint2f 0 5 270 271 272 273 274 190
/**
* Constructs a new LPoint2 from a LVecBase2
*/
/**
* Constructs a new LPoint2 all components set to the fill value.
*/
/**
* Constructs a new LPoint2 with the given components
*/
238
inline LPoint2f::LPoint2f(void) = default;
inline LPoint2f::LPoint2f(LVecBase2f const &copy);
inline LPoint2f::LPoint2f(float fill_value);
inline LPoint2f::LPoint2f(float x, float y);
inline LPoint2f::LPoint2f(LPoint2f const &) = default;
2206 11 __getattr__ 0 4 3536 21 LPoint2f::__getattr__ 0 1 275 0
91
inline PyObject *LPoint2f::__getattr__(PyObject *self, std::string const &attr_name) const;
2207 11 __setattr__ 0 4 3536 21 LPoint2f::__setattr__ 0 1 276 0
97
inline int LPoint2f::__setattr__(PyObject *self, std::string const &attr_name, PyObject *assign);
2208 4 zero 0 4 3536 14 LPoint2f::zero 0 1 277 39
/**
* Returns a zero-length point.
*/
51
static inline LPoint2f const &LPoint2f::zero(void);
2209 6 unit_x 0 4 3536 16 LPoint2f::unit_x 0 1 278 34
/**
* Returns a unit X point.
*/
53
static inline LPoint2f const &LPoint2f::unit_x(void);
2210 6 unit_y 0 4 3536 16 LPoint2f::unit_y 0 1 279 34
/**
* Returns a unit Y point.
*/
53
static inline LPoint2f const &LPoint2f::unit_y(void);
2211 10 operator - 0 68 3536 20 LPoint2f::operator - 0 1 280 0
49
inline LPoint2f LPoint2f::operator -(void) const;
2212 10 operator + 0 4 3536 20 LPoint2f::operator + 0 2 281 282 0
138
inline LVecBase2f LPoint2f::operator +(LVecBase2f const &other) const;
inline LPoint2f LPoint2f::operator +(LVector2f const &other) const;
2213 10 operator - 0 4 3536 20 LPoint2f::operator - 0 3 283 284 285 0
206
inline LVecBase2f LPoint2f::operator -(LVecBase2f const &other) const;
inline LVector2f LPoint2f::operator -(LPoint2f const &other) const;
inline LPoint2f LPoint2f::operator -(LVector2f const &other) const;
2214 10 operator * 0 4 3536 20 LPoint2f::operator * 0 1 286 0
57
inline LPoint2f LPoint2f::operator *(float scalar) const;
2215 10 operator / 0 4 3536 20 LPoint2f::operator / 0 1 287 0
57
inline LPoint2f LPoint2f::operator /(float scalar) const;
2216 10 normalized 0 4 3536 20 LPoint2f::normalized 0 1 288 160
/**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/
49
inline LPoint2f LPoint2f::normalized(void) const;
2217 7 project 0 4 3536 17 LPoint2f::project 0 1 289 152
/**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/
64
inline LPoint2f LPoint2f::project(LVecBase2f const &onto) const;
2218 8 __repr__ 0 4 3536 18 LPoint2f::__repr__ 0 1 290 0
50
inline std::string LPoint2f::__repr__(void) const;
2219 14 get_class_type 0 4 3536 24 LPoint2f::get_class_type 0 1 291 0
49
static TypeHandle LPoint2f::get_class_type(void);
2220 9 ~LPoint2f 0 4 3536 19 LPoint2f::~LPoint2f 0 0 0
26
LPoint2f::~LPoint2f(void);
2221 8 LPoint2d 0 4 3537 18 LPoint2d::LPoint2d 0 5 292 293 294 295 296 190
/**
* Constructs a new LPoint2 from a LVecBase2
*/
/**
* Constructs a new LPoint2 all components set to the fill value.
*/
/**
* Constructs a new LPoint2 with the given components
*/
241
inline LPoint2d::LPoint2d(void) = default;
inline LPoint2d::LPoint2d(LVecBase2d const &copy);
inline LPoint2d::LPoint2d(double fill_value);
inline LPoint2d::LPoint2d(double x, double y);
inline LPoint2d::LPoint2d(LPoint2d const &) = default;
2222 11 __getattr__ 0 4 3537 21 LPoint2d::__getattr__ 0 1 297 0
91
inline PyObject *LPoint2d::__getattr__(PyObject *self, std::string const &attr_name) const;
2223 11 __setattr__ 0 4 3537 21 LPoint2d::__setattr__ 0 1 298 0
97
inline int LPoint2d::__setattr__(PyObject *self, std::string const &attr_name, PyObject *assign);
2224 4 zero 0 4 3537 14 LPoint2d::zero 0 1 299 39
/**
* Returns a zero-length point.
*/
51
static inline LPoint2d const &LPoint2d::zero(void);
2225 6 unit_x 0 4 3537 16 LPoint2d::unit_x 0 1 300 34
/**
* Returns a unit X point.
*/
53
static inline LPoint2d const &LPoint2d::unit_x(void);
2226 6 unit_y 0 4 3537 16 LPoint2d::unit_y 0 1 301 34
/**
* Returns a unit Y point.
*/
53
static inline LPoint2d const &LPoint2d::unit_y(void);
2227 10 operator - 0 68 3537 20 LPoint2d::operator - 0 1 302 0
49
inline LPoint2d LPoint2d::operator -(void) const;
2228 10 operator + 0 4 3537 20 LPoint2d::operator + 0 2 303 304 0
138
inline LVecBase2d LPoint2d::operator +(LVecBase2d const &other) const;
inline LPoint2d LPoint2d::operator +(LVector2d const &other) const;
2229 10 operator - 0 4 3537 20 LPoint2d::operator - 0 3 305 306 307 0
206
inline LVecBase2d LPoint2d::operator -(LVecBase2d const &other) const;
inline LVector2d LPoint2d::operator -(LPoint2d const &other) const;
inline LPoint2d LPoint2d::operator -(LVector2d const &other) const;
2230 10 operator * 0 4 3537 20 LPoint2d::operator * 0 1 308 0
58
inline LPoint2d LPoint2d::operator *(double scalar) const;
2231 10 operator / 0 4 3537 20 LPoint2d::operator / 0 1 309 0
58
inline LPoint2d LPoint2d::operator /(double scalar) const;
2232 10 normalized 0 4 3537 20 LPoint2d::normalized 0 1 310 160
/**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/
49
inline LPoint2d LPoint2d::normalized(void) const;
2233 7 project 0 4 3537 17 LPoint2d::project 0 1 311 152
/**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/
64
inline LPoint2d LPoint2d::project(LVecBase2d const &onto) const;
2234 8 __repr__ 0 4 3537 18 LPoint2d::__repr__ 0 1 312 0
50
inline std::string LPoint2d::__repr__(void) const;
2235 14 get_class_type 0 4 3537 24 LPoint2d::get_class_type 0 1 313 0
49
static TypeHandle LPoint2d::get_class_type(void);
2236 9 ~LPoint2d 0 4 3537 19 LPoint2d::~LPoint2d 0 0 0
26
LPoint2d::~LPoint2d(void);
2237 8 LPoint2i 0 4 3538 18 LPoint2i::LPoint2i 0 5 314 315 316 317 318 190
/**
* Constructs a new LPoint2 from a LVecBase2
*/
/**
* Constructs a new LPoint2 all components set to the fill value.
*/
/**
* Constructs a new LPoint2 with the given components
*/
232
inline LPoint2i::LPoint2i(void) = default;
inline LPoint2i::LPoint2i(LVecBase2i const &copy);
inline LPoint2i::LPoint2i(int fill_value);
inline LPoint2i::LPoint2i(int x, int y);
inline LPoint2i::LPoint2i(LPoint2i const &) = default;
2238 11 __getattr__ 0 4 3538 21 LPoint2i::__getattr__ 0 1 319 0
91
inline PyObject *LPoint2i::__getattr__(PyObject *self, std::string const &attr_name) const;
2239 11 __setattr__ 0 4 3538 21 LPoint2i::__setattr__ 0 1 320 0
97
inline int LPoint2i::__setattr__(PyObject *self, std::string const &attr_name, PyObject *assign);
2240 4 zero 0 4 3538 14 LPoint2i::zero 0 1 321 39
/**
* Returns a zero-length point.
*/
51
static inline LPoint2i const &LPoint2i::zero(void);
2241 6 unit_x 0 4 3538 16 LPoint2i::unit_x 0 1 322 34
/**
* Returns a unit X point.
*/
53
static inline LPoint2i const &LPoint2i::unit_x(void);
2242 6 unit_y 0 4 3538 16 LPoint2i::unit_y 0 1 323 34
/**
* Returns a unit Y point.
*/
53
static inline LPoint2i const &LPoint2i::unit_y(void);
2243 10 operator - 0 68 3538 20 LPoint2i::operator - 0 1 324 0
49
inline LPoint2i LPoint2i::operator -(void) const;
2244 10 operator + 0 4 3538 20 LPoint2i::operator + 0 2 325 326 0
138
inline LVecBase2i LPoint2i::operator +(LVecBase2i const &other) const;
inline LPoint2i LPoint2i::operator +(LVector2i const &other) const;
2245 10 operator - 0 4 3538 20 LPoint2i::operator - 0 3 327 328 329 0
206
inline LVecBase2i LPoint2i::operator -(LVecBase2i const &other) const;
inline LVector2i LPoint2i::operator -(LPoint2i const &other) const;
inline LPoint2i LPoint2i::operator -(LVector2i const &other) const;
2246 10 operator * 0 4 3538 20 LPoint2i::operator * 0 1 330 0
55
inline LPoint2i LPoint2i::operator *(int scalar) const;
2247 10 operator / 0 4 3538 20 LPoint2i::operator / 0 1 331 0
55
inline LPoint2i LPoint2i::operator /(int scalar) const;
2248 8 __repr__ 0 4 3538 18 LPoint2i::__repr__ 0 1 332 0
50
inline std::string LPoint2i::__repr__(void) const;
2249 14 get_class_type 0 4 3538 24 LPoint2i::get_class_type 0 1 333 0
49
static TypeHandle LPoint2i::get_class_type(void);
2250 9 ~LPoint2i 0 4 3538 19 LPoint2i::~LPoint2i 0 0 0
26
LPoint2i::~LPoint2i(void);
2251 10 LVecBase3f 0 4 3539 22 LVecBase3f::LVecBase3f 0 5 334 335 336 337 338 34
/**
*
*/
/**
*
*/
/**
*
*/
278
inline LVecBase3f::LVecBase3f(void) = default;
inline LVecBase3f::LVecBase3f(float fill_value);
inline LVecBase3f::LVecBase3f(float x, float y, float z);
inline LVecBase3f::LVecBase3f(LVecBase2f const &copy, float z);
inline LVecBase3f::LVecBase3f(LVecBase3f const &) = default;
2252 12 operator new 0 4 3539 24 LVecBase3f::operator new 0 1 339 0
124
inline void *LVecBase3f::operator new(std::size_t size);
inline void *LVecBase3f::operator new(std::size_t size, void *ptr);
2253 15 operator delete 0 4 3539 27 LVecBase3f::operator delete 0 0 0
108
inline void LVecBase3f::operator delete(void *ptr);
inline void LVecBase3f::operator delete(void *, void *);
2254 12 validate_ptr 0 4 3539 24 LVecBase3f::validate_ptr 0 0 0
61
static inline bool LVecBase3f::validate_ptr(void const *ptr);
2255 10 operator = 0 4 3539 22 LVecBase3f::operator = 0 2 340 341 0
119
void LVecBase3f::operator =(LVecBase3f const &copy) = default;
void LVecBase3f::operator =(float fill_value) = default;
2256 4 zero 0 4 3539 16 LVecBase3f::zero 0 1 342 40
/**
* Returns a zero-length vector.
*/
55
static inline LVecBase3f const &LVecBase3f::zero(void);
2257 6 unit_x 0 4 3539 18 LVecBase3f::unit_x 0 1 343 35
/**
* Returns a unit X vector.
*/
57
static inline LVecBase3f const &LVecBase3f::unit_x(void);
2258 6 unit_y 0 4 3539 18 LVecBase3f::unit_y 0 1 344 35
/**
* Returns a unit Y vector.
*/
57
static inline LVecBase3f const &LVecBase3f::unit_y(void);
2259 6 unit_z 0 4 3539 18 LVecBase3f::unit_z 0 1 345 35
/**
* Returns a unit Z vector.
*/
57
static inline LVecBase3f const &LVecBase3f::unit_z(void);
2260 10 __reduce__ 0 4 3539 22 LVecBase3f::__reduce__ 0 1 346 0
62
inline PyObject *LVecBase3f::__reduce__(PyObject *self) const;
2261 11 __getattr__ 0 4 3539 23 LVecBase3f::__getattr__ 0 1 347 0
93
inline PyObject *LVecBase3f::__getattr__(PyObject *self, std::string const &attr_name) const;
2262 11 __setattr__ 0 4 3539 23 LVecBase3f::__setattr__ 0 1 348 0
99
inline int LVecBase3f::__setattr__(PyObject *self, std::string const &attr_name, PyObject *assign);
2263 11 operator [] 0 4 3539 23 LVecBase3f::operator [] 0 2 349 350 10
/**
*
*/
96
inline float LVecBase3f::operator [](int i) const;
inline float &LVecBase3f::operator [](int i);
2264 4 size 0 4 3539 16 LVecBase3f::size 0 1 351 0
44
static constexpr int LVecBase3f::size(void);
2265 6 is_nan 0 4 3539 18 LVecBase3f::is_nan 0 1 352 91
/**
* Returns true if any component of the vector is not-a-number, false
* otherwise.
*/
43
inline bool LVecBase3f::is_nan(void) const;
2266 8 get_cell 0 4 3539 20 LVecBase3f::get_cell 0 1 353 10
/**
*
*/
47
inline float LVecBase3f::get_cell(int i) const;
2267 5 get_x 0 4 3539 17 LVecBase3f::get_x 0 1 354 10
/**
*
*/
43
inline float LVecBase3f::get_x(void) const;
2268 5 get_y 0 4 3539 17 LVecBase3f::get_y 0 1 355 10
/**
*
*/
43
inline float LVecBase3f::get_y(void) const;
2269 5 get_z 0 4 3539 17 LVecBase3f::get_z 0 1 356 10
/**
*
*/
43
inline float LVecBase3f::get_z(void) const;
2270 8 set_cell 0 4 3539 20 LVecBase3f::set_cell 0 1 357 10
/**
*
*/
53
inline void LVecBase3f::set_cell(int i, float value);
2271 5 set_x 0 4 3539 17 LVecBase3f::set_x 0 1 358 10
/**
*
*/
43
inline void LVecBase3f::set_x(float value);
2272 5 set_y 0 4 3539 17 LVecBase3f::set_y 0 1 359 10
/**
*
*/
43
inline void LVecBase3f::set_y(float value);
2273 5 set_z 0 4 3539 17 LVecBase3f::set_z 0 1 360 10
/**
*
*/
43
inline void LVecBase3f::set_z(float value);
2274 6 get_xy 0 4 3539 18 LVecBase3f::get_xy 0 1 361 100
/**
* Returns a 2-component vector that shares just the first two components of
* this vector.
*/
49
inline LVecBase2f LVecBase3f::get_xy(void) const;
2275 6 get_xz 0 4 3539 18 LVecBase3f::get_xz 0 1 362 105
/**
* Returns a 2-component vector that shares just the first and last components
* of this vector.
*/
49
inline LVecBase2f LVecBase3f::get_xz(void) const;
2276 6 get_yz 0 4 3539 18 LVecBase3f::get_yz 0 1 363 99
/**
* Returns a 2-component vector that shares just the last two components of
* this vector.
*/
49
inline LVecBase2f LVecBase3f::get_yz(void) const;
2277 11 add_to_cell 0 4 3539 23 LVecBase3f::add_to_cell 0 1 364 164
// These next functions add to an existing value. i.e.
// foo.set_x(foo.get_x() + value) These are useful to reduce overhead in
// scripting languages:
/**
*
*/
56
inline void LVecBase3f::add_to_cell(int i, float value);
2278 5 add_x 0 4 3539 17 LVecBase3f::add_x 0 1 365 10
/**
*
*/
43
inline void LVecBase3f::add_x(float value);
2279 5 add_y 0 4 3539 17 LVecBase3f::add_y 0 1 366 10
/**
*
*/
43
inline void LVecBase3f::add_y(float value);
2280 5 add_z 0 4 3539 17 LVecBase3f::add_z 0 1 367 10
/**
*
*/
43
inline void LVecBase3f::add_z(float value);
2281 8 get_data 0 4 3539 20 LVecBase3f::get_data 0 1 368 162
/**
* Returns the address of the first of the three data elements in the vector.
* The remaining elements occupy the next positions consecutively in memory.
*/
53
inline float const *LVecBase3f::get_data(void) const;
2282 18 get_num_components 0 4 3539 30 LVecBase3f::get_num_components 0 1 369 0
58
static constexpr int LVecBase3f::get_num_components(void);
2283 4 fill 0 4 3539 16 LVecBase3f::fill 0 1 370 129
/**
* Sets each element of the vector to the indicated fill_value. This is
* particularly useful for initializing to zero.
*/
47
inline void LVecBase3f::fill(float fill_value);
2284 3 set 0 4 3539 15 LVecBase3f::set 0 1 371 10
/**
*
*/
55
inline void LVecBase3f::set(float x, float y, float z);
2285 3 dot 0 4 3539 15 LVecBase3f::dot 0 1 372 10
/**
*
*/
60
inline float LVecBase3f::dot(LVecBase3f const &other) const;
2286 14 length_squared 0 4 3539 26 LVecBase3f::length_squared 0 1 373 69
/**
* Returns the square of the vector's length, cheap and easy.
*/
52
inline float LVecBase3f::length_squared(void) const;
2287 6 length 0 4 3539 18 LVecBase3f::length 0 1 374 72
/**
* Returns the length of the vector, by the Pythagorean theorem.
*/
44
inline float LVecBase3f::length(void) const;
2288 9 normalize 0 4 3539 21 LVecBase3f::normalize 0 1 375 127
/**
* Normalizes the vector in place. Returns true if the vector was normalized,
* false if it was a zero-length vector.
*/
40
inline bool LVecBase3f::normalize(void);
2289 10 normalized 0 4 3539 22 LVecBase3f::normalized 0 1 376 160
/**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/
53
inline LVecBase3f LVecBase3f::normalized(void) const;
2290 7 project 0 4 3539 19 LVecBase3f::project 0 1 377 152
/**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/
68
inline LVecBase3f LVecBase3f::project(LVecBase3f const &onto) const;
2291 5 cross 0 4 3539 17 LVecBase3f::cross 0 1 378 10
/**
*
*/
67
inline LVecBase3f LVecBase3f::cross(LVecBase3f const &other) const;
2292 10 operator < 0 4 3539 22 LVecBase3f::operator < 0 1 379 0
66
inline bool LVecBase3f::operator <(LVecBase3f const &other) const;
2293 11 operator == 0 4 3539 23 LVecBase3f::operator == 0 1 380 0
67
inline bool LVecBase3f::operator ==(LVecBase3f const &other) const;
2294 11 operator != 0 4 3539 23 LVecBase3f::operator != 0 1 381 0
67
inline bool LVecBase3f::operator !=(LVecBase3f const &other) const;
2295 20 get_standardized_hpr 0 4 3539 32 LVecBase3f::get_standardized_hpr 0 1 382 623
/**
* Try to un-spin the hpr to a standard form. Like all standards, someone
* decides between many arbitrary possible standards. This function assumes
* that 0 and 360 are the same, as is 720 and -360. Also 180 and -180 are the
* same. Another example is -90 and 270. Each element will be in the range
* -180.0 to 179.99999. The original usage of this function is for human
* readable output.
*
* It doesn't work so well for asserting that foo_hpr is roughly equal to
* bar_hpr. Try using LQuaternionf::is_same_direction() for that. See Also:
* get_standardized_rotation, LQuaternion::is_same_direction
*/
63
inline LVecBase3f LVecBase3f::get_standardized_hpr(void) const;
2296 10 compare_to 0 4 3539 22 LVecBase3f::compare_to 0 2 383 384 332
/**
* This flavor of compare_to uses a default threshold value based on the
* numeric type.
*/
/**
* Sorts vectors lexicographically, componentwise. Returns a number less than
* 0 if this vector sorts before the other one, greater than zero if it sorts
* after, 0 if they are equivalent (within the indicated tolerance).
*/
148
inline int LVecBase3f::compare_to(LVecBase3f const &other) const;
inline int LVecBase3f::compare_to(LVecBase3f const &other, float threshold) const;
2297 8 get_hash 0 4 3539 20 LVecBase3f::get_hash 0 2 385 386 100
/**
* Returns a suitable hash for phash_map.
*/
/**
* Returns a suitable hash for phash_map.
*/
116
inline std::size_t LVecBase3f::get_hash(void) const;
inline std::size_t LVecBase3f::get_hash(float threshold) const;
2298 8 add_hash 0 4 3539 20 LVecBase3f::add_hash 0 2 387 388 100
/**
* Adds the vector into the running hash.
*/
/**
* Adds the vector into the running hash.
*/
146
inline std::size_t LVecBase3f::add_hash(std::size_t hash) const;
inline std::size_t LVecBase3f::add_hash(std::size_t hash, float threshold) const;
2299 13 generate_hash 0 4 3539 25 LVecBase3f::generate_hash 0 2 389 390 120
/**
* Adds the vector to the indicated hash generator.
*/
/**
* Adds the vector to the indicated hash generator.
*/
170
inline void LVecBase3f::generate_hash(ChecksumHashGenerator &hashgen) const;
inline void LVecBase3f::generate_hash(ChecksumHashGenerator &hashgen, float threshold) const;
2300 10 operator - 0 68 3539 22 LVecBase3f::operator - 0 1 391 0
53
inline LVecBase3f LVecBase3f::operator -(void) const;
2301 10 operator + 0 4 3539 22 LVecBase3f::operator + 0 1 392 0
72
inline LVecBase3f LVecBase3f::operator +(LVecBase3f const &other) const;
2302 10 operator - 0 4 3539 22 LVecBase3f::operator - 0 1 393 0
72
inline LVecBase3f LVecBase3f::operator -(LVecBase3f const &other) const;
2303 10 operator * 0 4 3539 22 LVecBase3f::operator * 0 1 394 0
61
inline LVecBase3f LVecBase3f::operator *(float scalar) const;
2304 10 operator / 0 4 3539 22 LVecBase3f::operator / 0 1 395 0
61
inline LVecBase3f LVecBase3f::operator /(float scalar) const;
2305 11 operator += 0 4 3539 23 LVecBase3f::operator += 0 1 396 0
61
inline void LVecBase3f::operator +=(LVecBase3f const &other);
2306 11 operator -= 0 4 3539 23 LVecBase3f::operator -= 0 1 397 0
61
inline void LVecBase3f::operator -=(LVecBase3f const &other);
2307 11 operator *= 0 4 3539 23 LVecBase3f::operator *= 0 1 398 0
50
inline void LVecBase3f::operator *=(float scalar);
2308 11 operator /= 0 4 3539 23 LVecBase3f::operator /= 0 1 399 0
50
inline void LVecBase3f::operator /=(float scalar);
2309 18 componentwise_mult 0 4 3539 30 LVecBase3f::componentwise_mult 0 1 400 10
/**
*
*/
68
inline void LVecBase3f::componentwise_mult(LVecBase3f const &other);
2310 7 __pow__ 0 4 3539 19 LVecBase3f::__pow__ 0 1 401 0
60
inline LVecBase3f LVecBase3f::__pow__(float exponent) const;
2311 8 __ipow__ 0 4 3539 20 LVecBase3f::__ipow__ 0 1 402 0
70
inline PyObject *LVecBase3f::__ipow__(PyObject *self, float exponent);
2312 4 fmax 0 4 3539 16 LVecBase3f::fmax 0 1 403 10
/**
*
*/
66
inline LVecBase3f LVecBase3f::fmax(LVecBase3f const &other) const;
2313 4 fmin 0 4 3539 16 LVecBase3f::fmin 0 1 404 10
/**
*
*/
66
inline LVecBase3f LVecBase3f::fmin(LVecBase3f const &other) const;
2314 10 cross_into 0 4 3539 22 LVecBase3f::cross_into 0 1 405 10
/**
*
*/
60
inline void LVecBase3f::cross_into(LVecBase3f const &other);
2315 12 almost_equal 0 4 3539 24 LVecBase3f::almost_equal 0 2 406 407 210
/**
* Returns true if two vectors are memberwise equal within a specified
* tolerance.
*/
/**
* Returns true if two vectors are memberwise equal within a default tolerance
* based on the numeric type.
*/
154
inline bool LVecBase3f::almost_equal(LVecBase3f const &other, float threshold) const;
inline bool LVecBase3f::almost_equal(LVecBase3f const &other) const;
2316 6 output 0 4 3539 18 LVecBase3f::output 0 1 408 10
/**
*
*/
56
inline void LVecBase3f::output(std::ostream &out) const;
2317 8 __repr__ 0 4 3539 20 LVecBase3f::__repr__ 0 1 409 0
52
inline std::string LVecBase3f::__repr__(void) const;
2318 20 write_datagram_fixed 0 4 3539 32 LVecBase3f::write_datagram_fixed 0 1 410 332
/**
* 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 appropriate when you want to
* write a fixed-width value to the datagram, especially when you are not
* writing a bam file.
*/
74
inline void LVecBase3f::write_datagram_fixed(Datagram &destination) const;
2319 19 read_datagram_fixed 0 4 3539 31 LVecBase3f::read_datagram_fixed 0 1 411 114
/**
* Reads the vector from the Datagram using get_float32() or get_float64().
* See write_datagram_fixed().
*/
70
inline void LVecBase3f::read_datagram_fixed(DatagramIterator &source);
2320 14 write_datagram 0 4 3539 26 LVecBase3f::write_datagram 0 1 412 205
/**
* Writes the vector to the Datagram using add_stdfloat(). This is
* appropriate when you want to write the vector using the standard width
* setting, especially when you are writing a bam file.
*/
68
inline void LVecBase3f::write_datagram(Datagram &destination) const;
2321 13 read_datagram 0 4 3539 25 LVecBase3f::read_datagram 0 1 413 67
/**
* Reads the vector from the Datagram using get_stdfloat().
*/
64
inline void LVecBase3f::read_datagram(DatagramIterator &source);
2322 14 get_class_type 0 4 3539 26 LVecBase3f::get_class_type 0 1 414 0
51
static TypeHandle LVecBase3f::get_class_type(void);
2323 11 ~LVecBase3f 0 4 3539 23 LVecBase3f::~LVecBase3f 0 0 0
30
LVecBase3f::~LVecBase3f(void);
2324 10 LVecBase3d 0 4 3541 22 LVecBase3d::LVecBase3d 0 5 415 416 417 418 419 34
/**
*
*/
/**
*
*/
/**
*
*/
283
inline LVecBase3d::LVecBase3d(void) = default;
inline LVecBase3d::LVecBase3d(double fill_value);
inline LVecBase3d::LVecBase3d(double x, double y, double z);
inline LVecBase3d::LVecBase3d(LVecBase2d const &copy, double z);
inline LVecBase3d::LVecBase3d(LVecBase3d const &) = default;
2325 12 operator new 0 4 3541 24 LVecBase3d::operator new 0 1 420 0
124
inline void *LVecBase3d::operator new(std::size_t size);
inline void *LVecBase3d::operator new(std::size_t size, void *ptr);
2326 15 operator delete 0 4 3541 27 LVecBase3d::operator delete 0 0 0
108
inline void LVecBase3d::operator delete(void *ptr);
inline void LVecBase3d::operator delete(void *, void *);
2327 12 validate_ptr 0 4 3541 24 LVecBase3d::validate_ptr 0 0 0
61
static inline bool LVecBase3d::validate_ptr(void const *ptr);
2328 10 operator = 0 4 3541 22 LVecBase3d::operator = 0 2 421 422 0
120
void LVecBase3d::operator =(LVecBase3d const &copy) = default;
void LVecBase3d::operator =(double fill_value) = default;
2329 4 zero 0 4 3541 16 LVecBase3d::zero 0 1 423 40
/**
* Returns a zero-length vector.
*/
55
static inline LVecBase3d const &LVecBase3d::zero(void);
2330 6 unit_x 0 4 3541 18 LVecBase3d::unit_x 0 1 424 35
/**
* Returns a unit X vector.
*/
57
static inline LVecBase3d const &LVecBase3d::unit_x(void);
2331 6 unit_y 0 4 3541 18 LVecBase3d::unit_y 0 1 425 35
/**
* Returns a unit Y vector.
*/
57
static inline LVecBase3d const &LVecBase3d::unit_y(void);
2332 6 unit_z 0 4 3541 18 LVecBase3d::unit_z 0 1 426 35
/**
* Returns a unit Z vector.
*/
57
static inline LVecBase3d const &LVecBase3d::unit_z(void);
2333 10 __reduce__ 0 4 3541 22 LVecBase3d::__reduce__ 0 1 427 0
62
inline PyObject *LVecBase3d::__reduce__(PyObject *self) const;
2334 11 __getattr__ 0 4 3541 23 LVecBase3d::__getattr__ 0 1 428 0
93
inline PyObject *LVecBase3d::__getattr__(PyObject *self, std::string const &attr_name) const;
2335 11 __setattr__ 0 4 3541 23 LVecBase3d::__setattr__ 0 1 429 0
99
inline int LVecBase3d::__setattr__(PyObject *self, std::string const &attr_name, PyObject *assign);
2336 11 operator [] 0 4 3541 23 LVecBase3d::operator [] 0 2 430 431 10
/**
*
*/
98
inline double LVecBase3d::operator [](int i) const;
inline double &LVecBase3d::operator [](int i);
2337 4 size 0 4 3541 16 LVecBase3d::size 0 1 432 0
44
static constexpr int LVecBase3d::size(void);
2338 6 is_nan 0 4 3541 18 LVecBase3d::is_nan 0 1 433 91
/**
* Returns true if any component of the vector is not-a-number, false
* otherwise.
*/
43
inline bool LVecBase3d::is_nan(void) const;
2339 8 get_cell 0 4 3541 20 LVecBase3d::get_cell 0 1 434 10
/**
*
*/
48
inline double LVecBase3d::get_cell(int i) const;
2340 5 get_x 0 4 3541 17 LVecBase3d::get_x 0 1 435 10
/**
*
*/
44
inline double LVecBase3d::get_x(void) const;
2341 5 get_y 0 4 3541 17 LVecBase3d::get_y 0 1 436 10
/**
*
*/
44
inline double LVecBase3d::get_y(void) const;
2342 5 get_z 0 4 3541 17 LVecBase3d::get_z 0 1 437 10
/**
*
*/
44
inline double LVecBase3d::get_z(void) const;
2343 8 set_cell 0 4 3541 20 LVecBase3d::set_cell 0 1 438 10
/**
*
*/
54
inline void LVecBase3d::set_cell(int i, double value);
2344 5 set_x 0 4 3541 17 LVecBase3d::set_x 0 1 439 10
/**
*
*/
44
inline void LVecBase3d::set_x(double value);
2345 5 set_y 0 4 3541 17 LVecBase3d::set_y 0 1 440 10
/**
*
*/
44
inline void LVecBase3d::set_y(double value);
2346 5 set_z 0 4 3541 17 LVecBase3d::set_z 0 1 441 10
/**
*
*/
44
inline void LVecBase3d::set_z(double value);
2347 6 get_xy 0 4 3541 18 LVecBase3d::get_xy 0 1 442 100
/**
* Returns a 2-component vector that shares just the first two components of
* this vector.
*/
49
inline LVecBase2d LVecBase3d::get_xy(void) const;
2348 6 get_xz 0 4 3541 18 LVecBase3d::get_xz 0 1 443 105
/**
* Returns a 2-component vector that shares just the first and last components
* of this vector.
*/
49
inline LVecBase2d LVecBase3d::get_xz(void) const;
2349 6 get_yz 0 4 3541 18 LVecBase3d::get_yz 0 1 444 99
/**
* Returns a 2-component vector that shares just the last two components of
* this vector.
*/
49
inline LVecBase2d LVecBase3d::get_yz(void) const;
2350 11 add_to_cell 0 4 3541 23 LVecBase3d::add_to_cell 0 1 445 164
// These next functions add to an existing value. i.e.
// foo.set_x(foo.get_x() + value) These are useful to reduce overhead in
// scripting languages:
/**
*
*/
57
inline void LVecBase3d::add_to_cell(int i, double value);
2351 5 add_x 0 4 3541 17 LVecBase3d::add_x 0 1 446 10
/**
*
*/
44
inline void LVecBase3d::add_x(double value);
2352 5 add_y 0 4 3541 17 LVecBase3d::add_y 0 1 447 10
/**
*
*/
44
inline void LVecBase3d::add_y(double value);
2353 5 add_z 0 4 3541 17 LVecBase3d::add_z 0 1 448 10
/**
*
*/
44
inline void LVecBase3d::add_z(double value);
2354 8 get_data 0 4 3541 20 LVecBase3d::get_data 0 1 449 162
/**
* Returns the address of the first of the three data elements in the vector.
* The remaining elements occupy the next positions consecutively in memory.
*/
54
inline double const *LVecBase3d::get_data(void) const;
2355 18 get_num_components 0 4 3541 30 LVecBase3d::get_num_components 0 1 450 0
58
static constexpr int LVecBase3d::get_num_components(void);
2356 4 fill 0 4 3541 16 LVecBase3d::fill 0 1 451 129
/**
* Sets each element of the vector to the indicated fill_value. This is
* particularly useful for initializing to zero.
*/
48
inline void LVecBase3d::fill(double fill_value);
2357 3 set 0 4 3541 15 LVecBase3d::set 0 1 452 10
/**
*
*/
58
inline void LVecBase3d::set(double x, double y, double z);
2358 3 dot 0 4 3541 15 LVecBase3d::dot 0 1 453 10
/**
*
*/
61
inline double LVecBase3d::dot(LVecBase3d const &other) const;
2359 14 length_squared 0 4 3541 26 LVecBase3d::length_squared 0 1 454 69
/**
* Returns the square of the vector's length, cheap and easy.
*/
53
inline double LVecBase3d::length_squared(void) const;
2360 6 length 0 4 3541 18 LVecBase3d::length 0 1 455 72
/**
* Returns the length of the vector, by the Pythagorean theorem.
*/
45
inline double LVecBase3d::length(void) const;
2361 9 normalize 0 4 3541 21 LVecBase3d::normalize 0 1 456 127
/**
* Normalizes the vector in place. Returns true if the vector was normalized,
* false if it was a zero-length vector.
*/
40
inline bool LVecBase3d::normalize(void);
2362 10 normalized 0 4 3541 22 LVecBase3d::normalized 0 1 457 160
/**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/
53
inline LVecBase3d LVecBase3d::normalized(void) const;
2363 7 project 0 4 3541 19 LVecBase3d::project 0 1 458 152
/**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/
68
inline LVecBase3d LVecBase3d::project(LVecBase3d const &onto) const;
2364 5 cross 0 4 3541 17 LVecBase3d::cross 0 1 459 10
/**
*
*/
67
inline LVecBase3d LVecBase3d::cross(LVecBase3d const &other) const;
2365 10 operator < 0 4 3541 22 LVecBase3d::operator < 0 1 460 0
66
inline bool LVecBase3d::operator <(LVecBase3d const &other) const;
2366 11 operator == 0 4 3541 23 LVecBase3d::operator == 0 1 461 0
67
inline bool LVecBase3d::operator ==(LVecBase3d const &other) const;
2367 11 operator != 0 4 3541 23 LVecBase3d::operator != 0 1 462 0
67
inline bool LVecBase3d::operator !=(LVecBase3d const &other) const;
2368 20 get_standardized_hpr 0 4 3541 32 LVecBase3d::get_standardized_hpr 0 1 463 623
/**
* Try to un-spin the hpr to a standard form. Like all standards, someone
* decides between many arbitrary possible standards. This function assumes
* that 0 and 360 are the same, as is 720 and -360. Also 180 and -180 are the
* same. Another example is -90 and 270. Each element will be in the range
* -180.0 to 179.99999. The original usage of this function is for human
* readable output.
*
* It doesn't work so well for asserting that foo_hpr is roughly equal to
* bar_hpr. Try using LQuaternionf::is_same_direction() for that. See Also:
* get_standardized_rotation, LQuaternion::is_same_direction
*/
63
inline LVecBase3d LVecBase3d::get_standardized_hpr(void) const;
2369 10 compare_to 0 4 3541 22 LVecBase3d::compare_to 0 2 464 465 332
/**
* This flavor of compare_to uses a default threshold value based on the
* numeric type.
*/
/**
* Sorts vectors lexicographically, componentwise. Returns a number less than
* 0 if this vector sorts before the other one, greater than zero if it sorts
* after, 0 if they are equivalent (within the indicated tolerance).
*/
149
inline int LVecBase3d::compare_to(LVecBase3d const &other) const;
inline int LVecBase3d::compare_to(LVecBase3d const &other, double threshold) const;
2370 8 get_hash 0 4 3541 20 LVecBase3d::get_hash 0 2 466 467 100
/**
* Returns a suitable hash for phash_map.
*/
/**
* Returns a suitable hash for phash_map.
*/
117
inline std::size_t LVecBase3d::get_hash(void) const;
inline std::size_t LVecBase3d::get_hash(double threshold) const;
2371 8 add_hash 0 4 3541 20 LVecBase3d::add_hash 0 2 468 469 100
/**
* Adds the vector into the running hash.
*/
/**
* Adds the vector into the running hash.
*/
147
inline std::size_t LVecBase3d::add_hash(std::size_t hash) const;
inline std::size_t LVecBase3d::add_hash(std::size_t hash, double threshold) const;
2372 13 generate_hash 0 4 3541 25 LVecBase3d::generate_hash 0 2 470 471 120
/**
* Adds the vector to the indicated hash generator.
*/
/**
* Adds the vector to the indicated hash generator.
*/
171
inline void LVecBase3d::generate_hash(ChecksumHashGenerator &hashgen) const;
inline void LVecBase3d::generate_hash(ChecksumHashGenerator &hashgen, double threshold) const;
2373 10 operator - 0 68 3541 22 LVecBase3d::operator - 0 1 472 0
53
inline LVecBase3d LVecBase3d::operator -(void) const;
2374 10 operator + 0 4 3541 22 LVecBase3d::operator + 0 1 473 0
72
inline LVecBase3d LVecBase3d::operator +(LVecBase3d const &other) const;
2375 10 operator - 0 4 3541 22 LVecBase3d::operator - 0 1 474 0
72
inline LVecBase3d LVecBase3d::operator -(LVecBase3d const &other) const;
2376 10 operator * 0 4 3541 22 LVecBase3d::operator * 0 1 475 0
62
inline LVecBase3d LVecBase3d::operator *(double scalar) const;
2377 10 operator / 0 4 3541 22 LVecBase3d::operator / 0 1 476 0
62
inline LVecBase3d LVecBase3d::operator /(double scalar) const;
2378 11 operator += 0 4 3541 23 LVecBase3d::operator += 0 1 477 0
61
inline void LVecBase3d::operator +=(LVecBase3d const &other);
2379 11 operator -= 0 4 3541 23 LVecBase3d::operator -= 0 1 478 0
61
inline void LVecBase3d::operator -=(LVecBase3d const &other);
2380 11 operator *= 0 4 3541 23 LVecBase3d::operator *= 0 1 479 0
51
inline void LVecBase3d::operator *=(double scalar);
2381 11 operator /= 0 4 3541 23 LVecBase3d::operator /= 0 1 480 0
51
inline void LVecBase3d::operator /=(double scalar);
2382 18 componentwise_mult 0 4 3541 30 LVecBase3d::componentwise_mult 0 1 481 10
/**
*
*/
68
inline void LVecBase3d::componentwise_mult(LVecBase3d const &other);
2383 7 __pow__ 0 4 3541 19 LVecBase3d::__pow__ 0 1 482 0
61
inline LVecBase3d LVecBase3d::__pow__(double exponent) const;
2384 8 __ipow__ 0 4 3541 20 LVecBase3d::__ipow__ 0 1 483 0
71
inline PyObject *LVecBase3d::__ipow__(PyObject *self, double exponent);
2385 4 fmax 0 4 3541 16 LVecBase3d::fmax 0 1 484 10
/**
*
*/
66
inline LVecBase3d LVecBase3d::fmax(LVecBase3d const &other) const;
2386 4 fmin 0 4 3541 16 LVecBase3d::fmin 0 1 485 10
/**
*
*/
66
inline LVecBase3d LVecBase3d::fmin(LVecBase3d const &other) const;
2387 10 cross_into 0 4 3541 22 LVecBase3d::cross_into 0 1 486 10
/**
*
*/
60
inline void LVecBase3d::cross_into(LVecBase3d const &other);
2388 12 almost_equal 0 4 3541 24 LVecBase3d::almost_equal 0 2 487 488 210
/**
* Returns true if two vectors are memberwise equal within a specified
* tolerance.
*/
/**
* Returns true if two vectors are memberwise equal within a default tolerance
* based on the numeric type.
*/
155
inline bool LVecBase3d::almost_equal(LVecBase3d const &other, double threshold) const;
inline bool LVecBase3d::almost_equal(LVecBase3d const &other) const;
2389 6 output 0 4 3541 18 LVecBase3d::output 0 1 489 10
/**
*
*/
56
inline void LVecBase3d::output(std::ostream &out) const;
2390 8 __repr__ 0 4 3541 20 LVecBase3d::__repr__ 0 1 490 0
52
inline std::string LVecBase3d::__repr__(void) const;
2391 20 write_datagram_fixed 0 4 3541 32 LVecBase3d::write_datagram_fixed 0 1 491 332
/**
* 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 appropriate when you want to
* write a fixed-width value to the datagram, especially when you are not
* writing a bam file.
*/
74
inline void LVecBase3d::write_datagram_fixed(Datagram &destination) const;
2392 19 read_datagram_fixed 0 4 3541 31 LVecBase3d::read_datagram_fixed 0 1 492 114
/**
* Reads the vector from the Datagram using get_float32() or get_float64().
* See write_datagram_fixed().
*/
70
inline void LVecBase3d::read_datagram_fixed(DatagramIterator &source);
2393 14 write_datagram 0 4 3541 26 LVecBase3d::write_datagram 0 1 493 205
/**
* Writes the vector to the Datagram using add_stdfloat(). This is
* appropriate when you want to write the vector using the standard width
* setting, especially when you are writing a bam file.
*/
68
inline void LVecBase3d::write_datagram(Datagram &destination) const;
2394 13 read_datagram 0 4 3541 25 LVecBase3d::read_datagram 0 1 494 67
/**
* Reads the vector from the Datagram using get_stdfloat().
*/
64
inline void LVecBase3d::read_datagram(DatagramIterator &source);
2395 14 get_class_type 0 4 3541 26 LVecBase3d::get_class_type 0 1 495 0
51
static TypeHandle LVecBase3d::get_class_type(void);
2396 11 ~LVecBase3d 0 4 3541 23 LVecBase3d::~LVecBase3d 0 0 0
30
LVecBase3d::~LVecBase3d(void);
2397 10 LVecBase3i 0 4 3543 22 LVecBase3i::LVecBase3i 0 5 496 497 498 499 500 34
/**
*
*/
/**
*
*/
/**
*
*/
268
inline LVecBase3i::LVecBase3i(void) = default;
inline LVecBase3i::LVecBase3i(int fill_value);
inline LVecBase3i::LVecBase3i(int x, int y, int z);
inline LVecBase3i::LVecBase3i(LVecBase2i const &copy, int z);
inline LVecBase3i::LVecBase3i(LVecBase3i const &) = default;
2398 12 operator new 0 4 3543 24 LVecBase3i::operator new 0 1 501 0
124
inline void *LVecBase3i::operator new(std::size_t size);
inline void *LVecBase3i::operator new(std::size_t size, void *ptr);
2399 15 operator delete 0 4 3543 27 LVecBase3i::operator delete 0 0 0
108
inline void LVecBase3i::operator delete(void *ptr);
inline void LVecBase3i::operator delete(void *, void *);
2400 12 validate_ptr 0 4 3543 24 LVecBase3i::validate_ptr 0 0 0
61
static inline bool LVecBase3i::validate_ptr(void const *ptr);
2401 10 operator = 0 4 3543 22 LVecBase3i::operator = 0 2 502 503 0
117
void LVecBase3i::operator =(LVecBase3i const &copy) = default;
void LVecBase3i::operator =(int fill_value) = default;
2402 4 zero 0 4 3543 16 LVecBase3i::zero 0 1 504 40
/**
* Returns a zero-length vector.
*/
55
static inline LVecBase3i const &LVecBase3i::zero(void);
2403 6 unit_x 0 4 3543 18 LVecBase3i::unit_x 0 1 505 35
/**
* Returns a unit X vector.
*/
57
static inline LVecBase3i const &LVecBase3i::unit_x(void);
2404 6 unit_y 0 4 3543 18 LVecBase3i::unit_y 0 1 506 35
/**
* Returns a unit Y vector.
*/
57
static inline LVecBase3i const &LVecBase3i::unit_y(void);
2405 6 unit_z 0 4 3543 18 LVecBase3i::unit_z 0 1 507 35
/**
* Returns a unit Z vector.
*/
57
static inline LVecBase3i const &LVecBase3i::unit_z(void);
2406 10 __reduce__ 0 4 3543 22 LVecBase3i::__reduce__ 0 1 508 0
62
inline PyObject *LVecBase3i::__reduce__(PyObject *self) const;
2407 11 __getattr__ 0 4 3543 23 LVecBase3i::__getattr__ 0 1 509 0
93
inline PyObject *LVecBase3i::__getattr__(PyObject *self, std::string const &attr_name) const;
2408 11 __setattr__ 0 4 3543 23 LVecBase3i::__setattr__ 0 1 510 0
99
inline int LVecBase3i::__setattr__(PyObject *self, std::string const &attr_name, PyObject *assign);
2409 11 operator [] 0 4 3543 23 LVecBase3i::operator [] 0 2 511 512 10
/**
*
*/
92
inline int LVecBase3i::operator [](int i) const;
inline int &LVecBase3i::operator [](int i);
2410 4 size 0 4 3543 16 LVecBase3i::size 0 1 513 0
44
static constexpr int LVecBase3i::size(void);
2411 6 is_nan 0 4 3543 18 LVecBase3i::is_nan 0 1 514 91
/**
* Returns true if any component of the vector is not-a-number, false
* otherwise.
*/
43
inline bool LVecBase3i::is_nan(void) const;
2412 8 get_cell 0 4 3543 20 LVecBase3i::get_cell 0 1 515 10
/**
*
*/
45
inline int LVecBase3i::get_cell(int i) const;
2413 5 get_x 0 4 3543 17 LVecBase3i::get_x 0 1 516 10
/**
*
*/
41
inline int LVecBase3i::get_x(void) const;
2414 5 get_y 0 4 3543 17 LVecBase3i::get_y 0 1 517 10
/**
*
*/
41
inline int LVecBase3i::get_y(void) const;
2415 5 get_z 0 4 3543 17 LVecBase3i::get_z 0 1 518 10
/**
*
*/
41
inline int LVecBase3i::get_z(void) const;
2416 8 set_cell 0 4 3543 20 LVecBase3i::set_cell 0 1 519 10
/**
*
*/
51
inline void LVecBase3i::set_cell(int i, int value);
2417 5 set_x 0 4 3543 17 LVecBase3i::set_x 0 1 520 10
/**
*
*/
41
inline void LVecBase3i::set_x(int value);
2418 5 set_y 0 4 3543 17 LVecBase3i::set_y 0 1 521 10
/**
*
*/
41
inline void LVecBase3i::set_y(int value);
2419 5 set_z 0 4 3543 17 LVecBase3i::set_z 0 1 522 10
/**
*
*/
41
inline void LVecBase3i::set_z(int value);
2420 6 get_xy 0 4 3543 18 LVecBase3i::get_xy 0 1 523 100
/**
* Returns a 2-component vector that shares just the first two components of
* this vector.
*/
49
inline LVecBase2i LVecBase3i::get_xy(void) const;
2421 6 get_xz 0 4 3543 18 LVecBase3i::get_xz 0 1 524 105
/**
* Returns a 2-component vector that shares just the first and last components
* of this vector.
*/
49
inline LVecBase2i LVecBase3i::get_xz(void) const;
2422 6 get_yz 0 4 3543 18 LVecBase3i::get_yz 0 1 525 99
/**
* Returns a 2-component vector that shares just the last two components of
* this vector.
*/
49
inline LVecBase2i LVecBase3i::get_yz(void) const;
2423 11 add_to_cell 0 4 3543 23 LVecBase3i::add_to_cell 0 1 526 164
// These next functions add to an existing value. i.e.
// foo.set_x(foo.get_x() + value) These are useful to reduce overhead in
// scripting languages:
/**
*
*/
54
inline void LVecBase3i::add_to_cell(int i, int value);
2424 5 add_x 0 4 3543 17 LVecBase3i::add_x 0 1 527 10
/**
*
*/
41
inline void LVecBase3i::add_x(int value);
2425 5 add_y 0 4 3543 17 LVecBase3i::add_y 0 1 528 10
/**
*
*/
41
inline void LVecBase3i::add_y(int value);
2426 5 add_z 0 4 3543 17 LVecBase3i::add_z 0 1 529 10
/**
*
*/
41
inline void LVecBase3i::add_z(int value);
2427 8 get_data 0 4 3543 20 LVecBase3i::get_data 0 1 530 162
/**
* Returns the address of the first of the three data elements in the vector.
* The remaining elements occupy the next positions consecutively in memory.
*/
51
inline int const *LVecBase3i::get_data(void) const;
2428 18 get_num_components 0 4 3543 30 LVecBase3i::get_num_components 0 1 531 0
58
static constexpr int LVecBase3i::get_num_components(void);
2429 4 fill 0 4 3543 16 LVecBase3i::fill 0 1 532 129
/**
* Sets each element of the vector to the indicated fill_value. This is
* particularly useful for initializing to zero.
*/
45
inline void LVecBase3i::fill(int fill_value);
2430 3 set 0 4 3543 15 LVecBase3i::set 0 1 533 10
/**
*
*/
49
inline void LVecBase3i::set(int x, int y, int z);
2431 3 dot 0 4 3543 15 LVecBase3i::dot 0 1 534 10
/**
*
*/
58
inline int LVecBase3i::dot(LVecBase3i const &other) const;
2432 14 length_squared 0 4 3543 26 LVecBase3i::length_squared 0 1 535 69
/**
* Returns the square of the vector's length, cheap and easy.
*/
50
inline int LVecBase3i::length_squared(void) const;
2433 5 cross 0 4 3543 17 LVecBase3i::cross 0 1 536 10
/**
*
*/
67
inline LVecBase3i LVecBase3i::cross(LVecBase3i const &other) const;
2434 10 operator < 0 4 3543 22 LVecBase3i::operator < 0 1 537 0
66
inline bool LVecBase3i::operator <(LVecBase3i const &other) const;
2435 11 operator == 0 4 3543 23 LVecBase3i::operator == 0 1 538 0
67
inline bool LVecBase3i::operator ==(LVecBase3i const &other) const;
2436 11 operator != 0 4 3543 23 LVecBase3i::operator != 0 1 539 0
67
inline bool LVecBase3i::operator !=(LVecBase3i const &other) const;
2437 10 compare_to 0 4 3543 22 LVecBase3i::compare_to 0 1 540 97
/**
* This flavor of compare_to uses a default threshold value based on the
* numeric type.
*/
65
inline int LVecBase3i::compare_to(LVecBase3i const &other) const;
2438 8 get_hash 0 4 3543 20 LVecBase3i::get_hash 0 1 541 49
/**
* Returns a suitable hash for phash_map.
*/
52
inline std::size_t LVecBase3i::get_hash(void) const;
2439 8 add_hash 0 4 3543 20 LVecBase3i::add_hash 0 1 542 49
/**
* Adds the vector into the running hash.
*/
64
inline std::size_t LVecBase3i::add_hash(std::size_t hash) const;
2440 13 generate_hash 0 4 3543 25 LVecBase3i::generate_hash 0 1 543 59
/**
* Adds the vector to the indicated hash generator.
*/
76
inline void LVecBase3i::generate_hash(ChecksumHashGenerator &hashgen) const;
2441 10 operator - 0 68 3543 22 LVecBase3i::operator - 0 1 544 0
53
inline LVecBase3i LVecBase3i::operator -(void) const;
2442 10 operator + 0 4 3543 22 LVecBase3i::operator + 0 1 545 0
72
inline LVecBase3i LVecBase3i::operator +(LVecBase3i const &other) const;
2443 10 operator - 0 4 3543 22 LVecBase3i::operator - 0 1 546 0
72
inline LVecBase3i LVecBase3i::operator -(LVecBase3i const &other) const;
2444 10 operator * 0 4 3543 22 LVecBase3i::operator * 0 1 547 0
59
inline LVecBase3i LVecBase3i::operator *(int scalar) const;
2445 10 operator / 0 4 3543 22 LVecBase3i::operator / 0 1 548 0
59
inline LVecBase3i LVecBase3i::operator /(int scalar) const;
2446 11 operator += 0 4 3543 23 LVecBase3i::operator += 0 1 549 0
61
inline void LVecBase3i::operator +=(LVecBase3i const &other);
2447 11 operator -= 0 4 3543 23 LVecBase3i::operator -= 0 1 550 0
61
inline void LVecBase3i::operator -=(LVecBase3i const &other);
2448 11 operator *= 0 4 3543 23 LVecBase3i::operator *= 0 1 551 0
48
inline void LVecBase3i::operator *=(int scalar);
2449 11 operator /= 0 4 3543 23 LVecBase3i::operator /= 0 1 552 0
48
inline void LVecBase3i::operator /=(int scalar);
2450 18 componentwise_mult 0 4 3543 30 LVecBase3i::componentwise_mult 0 1 553 10
/**
*
*/
68
inline void LVecBase3i::componentwise_mult(LVecBase3i const &other);
2451 7 __pow__ 0 4 3543 19 LVecBase3i::__pow__ 0 1 554 0
58
inline LVecBase3i LVecBase3i::__pow__(int exponent) const;
2452 8 __ipow__ 0 4 3543 20 LVecBase3i::__ipow__ 0 1 555 0
68
inline PyObject *LVecBase3i::__ipow__(PyObject *self, int exponent);
2453 4 fmax 0 4 3543 16 LVecBase3i::fmax 0 1 556 10
/**
*
*/
66
inline LVecBase3i LVecBase3i::fmax(LVecBase3i const &other) const;
2454 4 fmin 0 4 3543 16 LVecBase3i::fmin 0 1 557 10
/**
*
*/
66
inline LVecBase3i LVecBase3i::fmin(LVecBase3i const &other) const;
2455 10 cross_into 0 4 3543 22 LVecBase3i::cross_into 0 1 558 10
/**
*
*/
60
inline void LVecBase3i::cross_into(LVecBase3i const &other);
2456 12 almost_equal 0 4 3543 24 LVecBase3i::almost_equal 0 2 559 560 210
/**
* Returns true if two vectors are memberwise equal within a specified
* tolerance.
*/
/**
* Returns true if two vectors are memberwise equal within a default tolerance
* based on the numeric type.
*/
152
inline bool LVecBase3i::almost_equal(LVecBase3i const &other, int threshold) const;
inline bool LVecBase3i::almost_equal(LVecBase3i const &other) const;
2457 6 output 0 4 3543 18 LVecBase3i::output 0 1 561 10
/**
*
*/
56
inline void LVecBase3i::output(std::ostream &out) const;
2458 8 __repr__ 0 4 3543 20 LVecBase3i::__repr__ 0 1 562 0
52
inline std::string LVecBase3i::__repr__(void) const;
2459 20 write_datagram_fixed 0 4 3543 32 LVecBase3i::write_datagram_fixed 0 1 563 332
/**
* 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 appropriate when you want to
* write a fixed-width value to the datagram, especially when you are not
* writing a bam file.
*/
74
inline void LVecBase3i::write_datagram_fixed(Datagram &destination) const;
2460 19 read_datagram_fixed 0 4 3543 31 LVecBase3i::read_datagram_fixed 0 1 564 114
/**
* Reads the vector from the Datagram using get_float32() or get_float64().
* See write_datagram_fixed().
*/
70
inline void LVecBase3i::read_datagram_fixed(DatagramIterator &source);
2461 14 write_datagram 0 4 3543 26 LVecBase3i::write_datagram 0 1 565 205
/**
* Writes the vector to the Datagram using add_stdfloat(). This is
* appropriate when you want to write the vector using the standard width
* setting, especially when you are writing a bam file.
*/
68
inline void LVecBase3i::write_datagram(Datagram &destination) const;
2462 13 read_datagram 0 4 3543 25 LVecBase3i::read_datagram 0 1 566 67
/**
* Reads the vector from the Datagram using get_stdfloat().
*/
64
inline void LVecBase3i::read_datagram(DatagramIterator &source);
2463 14 get_class_type 0 4 3543 26 LVecBase3i::get_class_type 0 1 567 0
51
static TypeHandle LVecBase3i::get_class_type(void);
2464 11 ~LVecBase3i 0 4 3543 23 LVecBase3i::~LVecBase3i 0 0 0
30
LVecBase3i::~LVecBase3i(void);
2465 29 get_default_coordinate_system 0 1 0 29 get_default_coordinate_system 0 1 1880 0
53
CoordinateSystem get_default_coordinate_system(void);
2466 30 parse_coordinate_system_string 0 1 0 30 parse_coordinate_system_string 0 1 1881 0
72
CoordinateSystem parse_coordinate_system_string(std::string const &str);
2467 24 format_coordinate_system 0 1 0 24 format_coordinate_system 0 1 1882 0
58
std::string format_coordinate_system(CoordinateSystem cs);
2468 15 is_right_handed 0 1 0 15 is_right_handed 0 1 1883 0
57
bool is_right_handed(CoordinateSystem cs = ::CS_default);
2469 9 LVector3f 0 4 3546 20 LVector3f::LVector3f 0 6 568 569 570 571 572 573 46
/**
*
*/
/**
*
*/
/**
*
*/
/**
*
*/
320
inline LVector3f::LVector3f(void) = default;
inline LVector3f::LVector3f(LVecBase3f const &copy);
inline LVector3f::LVector3f(float fill_value);
inline LVector3f::LVector3f(float x, float y, float z);
inline LVector3f::LVector3f(LVecBase2f const &copy, float z);
inline LVector3f::LVector3f(LVector3f const &) = default;
2470 11 __getattr__ 0 4 3546 22 LVector3f::__getattr__ 0 1 574 0
92
inline PyObject *LVector3f::__getattr__(PyObject *self, std::string const &attr_name) const;
2471 11 __setattr__ 0 4 3546 22 LVector3f::__setattr__ 0 1 575 0
98
inline int LVector3f::__setattr__(PyObject *self, std::string const &attr_name, PyObject *assign);
2472 4 zero 0 4 3546 15 LVector3f::zero 0 1 576 40
/**
* Returns a zero-length vector.
*/
53
static inline LVector3f const &LVector3f::zero(void);
2473 6 unit_x 0 4 3546 17 LVector3f::unit_x 0 1 577 35
/**
* Returns a unit X vector.
*/
55
static inline LVector3f const &LVector3f::unit_x(void);
2474 6 unit_y 0 4 3546 17 LVector3f::unit_y 0 1 578 35
/**
* Returns a unit Y vector.
*/
55
static inline LVector3f const &LVector3f::unit_y(void);
2475 6 unit_z 0 4 3546 17 LVector3f::unit_z 0 1 579 35
/**
* Returns a unit Z vector.
*/
55
static inline LVector3f const &LVector3f::unit_z(void);
2476 6 get_xy 0 4 3546 17 LVector3f::get_xy 0 1 580 100
/**
* Returns a 2-component vector that shares just the first two components of
* this vector.
*/
47
inline LVector2f LVector3f::get_xy(void) const;
2477 6 get_xz 0 4 3546 17 LVector3f::get_xz 0 1 581 105
/**
* Returns a 2-component vector that shares just the first and last components
* of this vector.
*/
47
inline LVector2f LVector3f::get_xz(void) const;
2478 6 get_yz 0 4 3546 17 LVector3f::get_yz 0 1 582 99
/**
* Returns a 2-component vector that shares just the last two components of
* this vector.
*/
47
inline LVector2f LVector3f::get_yz(void) const;
2479 10 operator - 0 68 3546 21 LVector3f::operator - 0 1 583 0
51
inline LVector3f LVector3f::operator -(void) const;
2480 10 operator + 0 4 3546 21 LVector3f::operator + 0 2 584 585 0
141
inline LVecBase3f LVector3f::operator +(LVecBase3f const &other) const;
inline LVector3f LVector3f::operator +(LVector3f const &other) const;
2481 10 operator - 0 4 3546 21 LVector3f::operator - 0 2 586 587 0
141
inline LVecBase3f LVector3f::operator -(LVecBase3f const &other) const;
inline LVector3f LVector3f::operator -(LVector3f const &other) const;
2482 5 cross 0 4 3546 16 LVector3f::cross 0 1 588 10
/**
*
*/
65
inline LVector3f LVector3f::cross(LVecBase3f const &other) const;
2483 10 normalized 0 4 3546 21 LVector3f::normalized 0 1 589 160
/**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/
51
inline LVector3f LVector3f::normalized(void) const;
2484 7 project 0 4 3546 18 LVector3f::project 0 1 590 152
/**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/
66
inline LVector3f LVector3f::project(LVecBase3f const &onto) const;
2485 9 angle_rad 0 4 3546 20 LVector3f::angle_rad 0 1 591 147
/**
* Returns the unsigned angle between this vector and the other one, expressed
* in radians. Both vectors should be initially normalized.
*/
64
inline float LVector3f::angle_rad(LVector3f const &other) const;
2486 9 angle_deg 0 4 3546 20 LVector3f::angle_deg 0 1 592 138
/**
* Returns the angle between this vector and the other one, expressed in
* degrees. Both vectors should be initially normalized.
*/
64
inline float LVector3f::angle_deg(LVector3f const &other) const;
2487 16 signed_angle_rad 0 4 3546 27 LVector3f::signed_angle_rad 0 1 593 259
/**
* returns the signed angle between two vectors. The angle is positive if the
* rotation from this vector to other is clockwise when looking in the
* direction of the ref vector.
*
* Vectors (except the ref vector) should be initially normalized.
*/
93
inline float LVector3f::signed_angle_rad(LVector3f const &other, LVector3f const &ref) const;
2488 16 signed_angle_deg 0 4 3546 27 LVector3f::signed_angle_deg 0 1 594 259
/**
* Returns the signed angle between two vectors. The angle is positive if the
* rotation from this vector to other is clockwise when looking in the
* direction of the ref vector.
*
* Vectors (except the ref vector) should be initially normalized.
*/
93
inline float LVector3f::signed_angle_deg(LVector3f const &other, LVector3f const &ref) const;
2489 18 relative_angle_rad 0 4 3546 29 LVector3f::relative_angle_rad 0 1 595 50
/**
* This method is deprecated. Do not use.
*/
73
inline float LVector3f::relative_angle_rad(LVector3f const &other) const;
2490 18 relative_angle_deg 0 4 3546 29 LVector3f::relative_angle_deg 0 1 596 50
/**
* This method is deprecated. Do not use.
*/
73
inline float LVector3f::relative_angle_deg(LVector3f const &other) const;
2491 10 operator * 0 4 3546 21 LVector3f::operator * 0 1 597 0
59
inline LVector3f LVector3f::operator *(float scalar) const;
2492 10 operator / 0 4 3546 21 LVector3f::operator / 0 1 598 0
59
inline LVector3f LVector3f::operator /(float scalar) const;
2493 2 up 0 4 3546 13 LVector3f::up 0 1 599 65
/**
* Returns the up vector for the given coordinate system.
*/
74
static inline LVector3f LVector3f::up(CoordinateSystem cs = ::CS_default);
2494 5 right 0 4 3546 16 LVector3f::right 0 1 600 68
/**
* Returns the right vector for the given coordinate system.
*/
77
static inline LVector3f LVector3f::right(CoordinateSystem cs = ::CS_default);
2495 7 forward 0 4 3546 18 LVector3f::forward 0 1 601 70
/**
* Returns the forward vector for the given coordinate system.
*/
79
static inline LVector3f LVector3f::forward(CoordinateSystem cs = ::CS_default);
2496 4 down 0 4 3546 15 LVector3f::down 0 1 602 67
/**
* Returns the down vector for the given coordinate system.
*/
76
static inline LVector3f LVector3f::down(CoordinateSystem cs = ::CS_default);
2497 4 left 0 4 3546 15 LVector3f::left 0 1 603 67
/**
* Returns the left vector for the given coordinate system.
*/
76
static inline LVector3f LVector3f::left(CoordinateSystem cs = ::CS_default);
2498 4 back 0 4 3546 15 LVector3f::back 0 1 604 67
/**
* Returns the back vector for the given coordinate system.
*/
76
static inline LVector3f LVector3f::back(CoordinateSystem cs = ::CS_default);
2499 3 rfu 0 4 3546 14 LVector3f::rfu 0 1 605 221
// INLINE_LINMATH static FLOATNAME(LVector3) & rfu(FLOATTYPE right,
/**
* Returns a vector that is described by its right, forward, and up
* components, in whatever way the coordinate system represents that vector.
*/
109
static inline LVector3f LVector3f::rfu(float right, float fwd, float up, CoordinateSystem cs = ::CS_default);
2500 8 __repr__ 0 4 3546 19 LVector3f::__repr__ 0 1 606 0
51
inline std::string LVector3f::__repr__(void) const;
2501 14 get_class_type 0 4 3546 25 LVector3f::get_class_type 0 1 607 0
50
static TypeHandle LVector3f::get_class_type(void);
2502 10 ~LVector3f 0 4 3546 21 LVector3f::~LVector3f 0 0 0
28
LVector3f::~LVector3f(void);
2503 9 LVector3d 0 4 3547 20 LVector3d::LVector3d 0 6 608 609 610 611 612 613 46
/**
*
*/
/**
*
*/
/**
*
*/
/**
*
*/
325
inline LVector3d::LVector3d(void) = default;
inline LVector3d::LVector3d(LVecBase3d const &copy);
inline LVector3d::LVector3d(double fill_value);
inline LVector3d::LVector3d(double x, double y, double z);
inline LVector3d::LVector3d(LVecBase2d const &copy, double z);
inline LVector3d::LVector3d(LVector3d const &) = default;
2504 11 __getattr__ 0 4 3547 22 LVector3d::__getattr__ 0 1 614 0
92
inline PyObject *LVector3d::__getattr__(PyObject *self, std::string const &attr_name) const;
2505 11 __setattr__ 0 4 3547 22 LVector3d::__setattr__ 0 1 615 0
98
inline int LVector3d::__setattr__(PyObject *self, std::string const &attr_name, PyObject *assign);
2506 4 zero 0 4 3547 15 LVector3d::zero 0 1 616 40
/**
* Returns a zero-length vector.
*/
53
static inline LVector3d const &LVector3d::zero(void);
2507 6 unit_x 0 4 3547 17 LVector3d::unit_x 0 1 617 35
/**
* Returns a unit X vector.
*/
55
static inline LVector3d const &LVector3d::unit_x(void);
2508 6 unit_y 0 4 3547 17 LVector3d::unit_y 0 1 618 35
/**
* Returns a unit Y vector.
*/
55
static inline LVector3d const &LVector3d::unit_y(void);
2509 6 unit_z 0 4 3547 17 LVector3d::unit_z 0 1 619 35
/**
* Returns a unit Z vector.
*/
55
static inline LVector3d const &LVector3d::unit_z(void);
2510 6 get_xy 0 4 3547 17 LVector3d::get_xy 0 1 620 100
/**
* Returns a 2-component vector that shares just the first two components of
* this vector.
*/
47
inline LVector2d LVector3d::get_xy(void) const;
2511 6 get_xz 0 4 3547 17 LVector3d::get_xz 0 1 621 105
/**
* Returns a 2-component vector that shares just the first and last components
* of this vector.
*/
47
inline LVector2d LVector3d::get_xz(void) const;
2512 6 get_yz 0 4 3547 17 LVector3d::get_yz 0 1 622 99
/**
* Returns a 2-component vector that shares just the last two components of
* this vector.
*/
47
inline LVector2d LVector3d::get_yz(void) const;
2513 10 operator - 0 68 3547 21 LVector3d::operator - 0 1 623 0
51
inline LVector3d LVector3d::operator -(void) const;
2514 10 operator + 0 4 3547 21 LVector3d::operator + 0 2 624 625 0
141
inline LVecBase3d LVector3d::operator +(LVecBase3d const &other) const;
inline LVector3d LVector3d::operator +(LVector3d const &other) const;
2515 10 operator - 0 4 3547 21 LVector3d::operator - 0 2 626 627 0
141
inline LVecBase3d LVector3d::operator -(LVecBase3d const &other) const;
inline LVector3d LVector3d::operator -(LVector3d const &other) const;
2516 5 cross 0 4 3547 16 LVector3d::cross 0 1 628 10
/**
*
*/
65
inline LVector3d LVector3d::cross(LVecBase3d const &other) const;
2517 10 normalized 0 4 3547 21 LVector3d::normalized 0 1 629 160
/**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/
51
inline LVector3d LVector3d::normalized(void) const;
2518 7 project 0 4 3547 18 LVector3d::project 0 1 630 152
/**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/
66
inline LVector3d LVector3d::project(LVecBase3d const &onto) const;
2519 9 angle_rad 0 4 3547 20 LVector3d::angle_rad 0 1 631 147
/**
* Returns the unsigned angle between this vector and the other one, expressed
* in radians. Both vectors should be initially normalized.
*/
65
inline double LVector3d::angle_rad(LVector3d const &other) const;
2520 9 angle_deg 0 4 3547 20 LVector3d::angle_deg 0 1 632 138
/**
* Returns the angle between this vector and the other one, expressed in
* degrees. Both vectors should be initially normalized.
*/
65
inline double LVector3d::angle_deg(LVector3d const &other) const;
2521 16 signed_angle_rad 0 4 3547 27 LVector3d::signed_angle_rad 0 1 633 259
/**
* returns the signed angle between two vectors. The angle is positive if the
* rotation from this vector to other is clockwise when looking in the
* direction of the ref vector.
*
* Vectors (except the ref vector) should be initially normalized.
*/
94
inline double LVector3d::signed_angle_rad(LVector3d const &other, LVector3d const &ref) const;
2522 16 signed_angle_deg 0 4 3547 27 LVector3d::signed_angle_deg 0 1 634 259
/**
* Returns the signed angle between two vectors. The angle is positive if the
* rotation from this vector to other is clockwise when looking in the
* direction of the ref vector.
*
* Vectors (except the ref vector) should be initially normalized.
*/
94
inline double LVector3d::signed_angle_deg(LVector3d const &other, LVector3d const &ref) const;
2523 18 relative_angle_rad 0 4 3547 29 LVector3d::relative_angle_rad 0 1 635 50
/**
* This method is deprecated. Do not use.
*/
74
inline double LVector3d::relative_angle_rad(LVector3d const &other) const;
2524 18 relative_angle_deg 0 4 3547 29 LVector3d::relative_angle_deg 0 1 636 50
/**
* This method is deprecated. Do not use.
*/
74
inline double LVector3d::relative_angle_deg(LVector3d const &other) const;
2525 10 operator * 0 4 3547 21 LVector3d::operator * 0 1 637 0
60
inline LVector3d LVector3d::operator *(double scalar) const;
2526 10 operator / 0 4 3547 21 LVector3d::operator / 0 1 638 0
60
inline LVector3d LVector3d::operator /(double scalar) const;
2527 2 up 0 4 3547 13 LVector3d::up 0 1 639 65
/**
* Returns the up vector for the given coordinate system.
*/
74
static inline LVector3d LVector3d::up(CoordinateSystem cs = ::CS_default);
2528 5 right 0 4 3547 16 LVector3d::right 0 1 640 68
/**
* Returns the right vector for the given coordinate system.
*/
77
static inline LVector3d LVector3d::right(CoordinateSystem cs = ::CS_default);
2529 7 forward 0 4 3547 18 LVector3d::forward 0 1 641 70
/**
* Returns the forward vector for the given coordinate system.
*/
79
static inline LVector3d LVector3d::forward(CoordinateSystem cs = ::CS_default);
2530 4 down 0 4 3547 15 LVector3d::down 0 1 642 67
/**
* Returns the down vector for the given coordinate system.
*/
76
static inline LVector3d LVector3d::down(CoordinateSystem cs = ::CS_default);
2531 4 left 0 4 3547 15 LVector3d::left 0 1 643 67
/**
* Returns the left vector for the given coordinate system.
*/
76
static inline LVector3d LVector3d::left(CoordinateSystem cs = ::CS_default);
2532 4 back 0 4 3547 15 LVector3d::back 0 1 644 67
/**
* Returns the back vector for the given coordinate system.
*/
76
static inline LVector3d LVector3d::back(CoordinateSystem cs = ::CS_default);
2533 3 rfu 0 4 3547 14 LVector3d::rfu 0 1 645 221
// INLINE_LINMATH static FLOATNAME(LVector3) & rfu(FLOATTYPE right,
/**
* Returns a vector that is described by its right, forward, and up
* components, in whatever way the coordinate system represents that vector.
*/
112
static inline LVector3d LVector3d::rfu(double right, double fwd, double up, CoordinateSystem cs = ::CS_default);
2534 8 __repr__ 0 4 3547 19 LVector3d::__repr__ 0 1 646 0
51
inline std::string LVector3d::__repr__(void) const;
2535 14 get_class_type 0 4 3547 25 LVector3d::get_class_type 0 1 647 0
50
static TypeHandle LVector3d::get_class_type(void);
2536 10 ~LVector3d 0 4 3547 21 LVector3d::~LVector3d 0 0 0
28
LVector3d::~LVector3d(void);
2537 9 LVector3i 0 4 3548 20 LVector3i::LVector3i 0 6 648 649 650 651 652 653 46
/**
*
*/
/**
*
*/
/**
*
*/
/**
*
*/
310
inline LVector3i::LVector3i(void) = default;
inline LVector3i::LVector3i(LVecBase3i const &copy);
inline LVector3i::LVector3i(int fill_value);
inline LVector3i::LVector3i(int x, int y, int z);
inline LVector3i::LVector3i(LVecBase2i const &copy, int z);
inline LVector3i::LVector3i(LVector3i const &) = default;
2538 11 __getattr__ 0 4 3548 22 LVector3i::__getattr__ 0 1 654 0
92
inline PyObject *LVector3i::__getattr__(PyObject *self, std::string const &attr_name) const;
2539 11 __setattr__ 0 4 3548 22 LVector3i::__setattr__ 0 1 655 0
98
inline int LVector3i::__setattr__(PyObject *self, std::string const &attr_name, PyObject *assign);
2540 4 zero 0 4 3548 15 LVector3i::zero 0 1 656 40
/**
* Returns a zero-length vector.
*/
53
static inline LVector3i const &LVector3i::zero(void);
2541 6 unit_x 0 4 3548 17 LVector3i::unit_x 0 1 657 35
/**
* Returns a unit X vector.
*/
55
static inline LVector3i const &LVector3i::unit_x(void);
2542 6 unit_y 0 4 3548 17 LVector3i::unit_y 0 1 658 35
/**
* Returns a unit Y vector.
*/
55
static inline LVector3i const &LVector3i::unit_y(void);
2543 6 unit_z 0 4 3548 17 LVector3i::unit_z 0 1 659 35
/**
* Returns a unit Z vector.
*/
55
static inline LVector3i const &LVector3i::unit_z(void);
2544 6 get_xy 0 4 3548 17 LVector3i::get_xy 0 1 660 100
/**
* Returns a 2-component vector that shares just the first two components of
* this vector.
*/
47
inline LVector2i LVector3i::get_xy(void) const;
2545 6 get_xz 0 4 3548 17 LVector3i::get_xz 0 1 661 105
/**
* Returns a 2-component vector that shares just the first and last components
* of this vector.
*/
47
inline LVector2i LVector3i::get_xz(void) const;
2546 6 get_yz 0 4 3548 17 LVector3i::get_yz 0 1 662 99
/**
* Returns a 2-component vector that shares just the last two components of
* this vector.
*/
47
inline LVector2i LVector3i::get_yz(void) const;
2547 10 operator - 0 68 3548 21 LVector3i::operator - 0 1 663 0
51
inline LVector3i LVector3i::operator -(void) const;
2548 10 operator + 0 4 3548 21 LVector3i::operator + 0 2 664 665 0
141
inline LVecBase3i LVector3i::operator +(LVecBase3i const &other) const;
inline LVector3i LVector3i::operator +(LVector3i const &other) const;
2549 10 operator - 0 4 3548 21 LVector3i::operator - 0 2 666 667 0
141
inline LVecBase3i LVector3i::operator -(LVecBase3i const &other) const;
inline LVector3i LVector3i::operator -(LVector3i const &other) const;
2550 5 cross 0 4 3548 16 LVector3i::cross 0 1 668 10
/**
*
*/
65
inline LVector3i LVector3i::cross(LVecBase3i const &other) const;
2551 10 operator * 0 4 3548 21 LVector3i::operator * 0 1 669 0
57
inline LVector3i LVector3i::operator *(int scalar) const;
2552 10 operator / 0 4 3548 21 LVector3i::operator / 0 1 670 0
57
inline LVector3i LVector3i::operator /(int scalar) const;
2553 2 up 0 4 3548 13 LVector3i::up 0 1 671 65
/**
* Returns the up vector for the given coordinate system.
*/
74
static inline LVector3i LVector3i::up(CoordinateSystem cs = ::CS_default);
2554 5 right 0 4 3548 16 LVector3i::right 0 1 672 68
/**
* Returns the right vector for the given coordinate system.
*/
77
static inline LVector3i LVector3i::right(CoordinateSystem cs = ::CS_default);
2555 7 forward 0 4 3548 18 LVector3i::forward 0 1 673 70
/**
* Returns the forward vector for the given coordinate system.
*/
79
static inline LVector3i LVector3i::forward(CoordinateSystem cs = ::CS_default);
2556 4 down 0 4 3548 15 LVector3i::down 0 1 674 67
/**
* Returns the down vector for the given coordinate system.
*/
76
static inline LVector3i LVector3i::down(CoordinateSystem cs = ::CS_default);
2557 4 left 0 4 3548 15 LVector3i::left 0 1 675 67
/**
* Returns the left vector for the given coordinate system.
*/
76
static inline LVector3i LVector3i::left(CoordinateSystem cs = ::CS_default);
2558 4 back 0 4 3548 15 LVector3i::back 0 1 676 67
/**
* Returns the back vector for the given coordinate system.
*/
76
static inline LVector3i LVector3i::back(CoordinateSystem cs = ::CS_default);
2559 3 rfu 0 4 3548 14 LVector3i::rfu 0 1 677 221
// INLINE_LINMATH static FLOATNAME(LVector3) & rfu(FLOATTYPE right,
/**
* Returns a vector that is described by its right, forward, and up
* components, in whatever way the coordinate system represents that vector.
*/
103
static inline LVector3i LVector3i::rfu(int right, int fwd, int up, CoordinateSystem cs = ::CS_default);
2560 8 __repr__ 0 4 3548 19 LVector3i::__repr__ 0 1 678 0
51
inline std::string LVector3i::__repr__(void) const;
2561 14 get_class_type 0 4 3548 25 LVector3i::get_class_type 0 1 679 0
50
static TypeHandle LVector3i::get_class_type(void);
2562 10 ~LVector3i 0 4 3548 21 LVector3i::~LVector3i 0 0 0
28
LVector3i::~LVector3i(void);
2563 8 LPoint3f 0 4 3549 18 LPoint3f::LPoint3f 0 6 680 681 682 683 684 685 46
/**
*
*/
/**
*
*/
/**
*
*/
/**
*
*/
307
inline LPoint3f::LPoint3f(void) = default;
inline LPoint3f::LPoint3f(LVecBase3f const &copy);
inline LPoint3f::LPoint3f(float fill_value);
inline LPoint3f::LPoint3f(float x, float y, float z);
inline LPoint3f::LPoint3f(LVecBase2f const &copy, float z);
inline LPoint3f::LPoint3f(LPoint3f const &) = default;
2564 11 __getattr__ 0 4 3549 21 LPoint3f::__getattr__ 0 1 686 0
91
inline PyObject *LPoint3f::__getattr__(PyObject *self, std::string const &attr_name) const;
2565 11 __setattr__ 0 4 3549 21 LPoint3f::__setattr__ 0 1 687 0
97
inline int LPoint3f::__setattr__(PyObject *self, std::string const &attr_name, PyObject *assign);
2566 4 zero 0 4 3549 14 LPoint3f::zero 0 1 688 39
/**
* Returns a zero-length point.
*/
51
static inline LPoint3f const &LPoint3f::zero(void);
2567 6 unit_x 0 4 3549 16 LPoint3f::unit_x 0 1 689 34
/**
* Returns a unit X point.
*/
53
static inline LPoint3f const &LPoint3f::unit_x(void);
2568 6 unit_y 0 4 3549 16 LPoint3f::unit_y 0 1 690 34
/**
* Returns a unit Y point.
*/
53
static inline LPoint3f const &LPoint3f::unit_y(void);
2569 6 unit_z 0 4 3549 16 LPoint3f::unit_z 0 1 691 34
/**
* Returns a unit Z point.
*/
53
static inline LPoint3f const &LPoint3f::unit_z(void);
2570 6 get_xy 0 4 3549 16 LPoint3f::get_xy 0 1 692 100
/**
* Returns a 2-component vector that shares just the first two components of
* this vector.
*/
45
inline LPoint2f LPoint3f::get_xy(void) const;
2571 6 get_xz 0 4 3549 16 LPoint3f::get_xz 0 1 693 105
/**
* Returns a 2-component vector that shares just the first and last components
* of this vector.
*/
45
inline LPoint2f LPoint3f::get_xz(void) const;
2572 6 get_yz 0 4 3549 16 LPoint3f::get_yz 0 1 694 99
/**
* Returns a 2-component vector that shares just the last two components of
* this vector.
*/
45
inline LPoint2f LPoint3f::get_yz(void) const;
2573 10 operator - 0 68 3549 20 LPoint3f::operator - 0 1 695 0
49
inline LPoint3f LPoint3f::operator -(void) const;
2574 10 operator + 0 4 3549 20 LPoint3f::operator + 0 2 696 697 0
138
inline LVecBase3f LPoint3f::operator +(LVecBase3f const &other) const;
inline LPoint3f LPoint3f::operator +(LVector3f const &other) const;
2575 10 operator - 0 4 3549 20 LPoint3f::operator - 0 3 698 699 700 0
206
inline LVecBase3f LPoint3f::operator -(LVecBase3f const &other) const;
inline LVector3f LPoint3f::operator -(LPoint3f const &other) const;
inline LPoint3f LPoint3f::operator -(LVector3f const &other) const;
2576 5 cross 0 4 3549 15 LPoint3f::cross 0 1 701 10
/**
*
*/
63
inline LPoint3f LPoint3f::cross(LVecBase3f const &other) const;
2577 10 normalized 0 4 3549 20 LPoint3f::normalized 0 1 702 160
/**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/
49
inline LPoint3f LPoint3f::normalized(void) const;
2578 7 project 0 4 3549 17 LPoint3f::project 0 1 703 152
/**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/
64
inline LPoint3f LPoint3f::project(LVecBase3f const &onto) const;
2579 10 operator * 0 4 3549 20 LPoint3f::operator * 0 1 704 0
57
inline LPoint3f LPoint3f::operator *(float scalar) const;
2580 10 operator / 0 4 3549 20 LPoint3f::operator / 0 1 705 0
57
inline LPoint3f LPoint3f::operator /(float scalar) const;
2581 6 origin 0 4 3549 16 LPoint3f::origin 0 1 706 186
/**
* Returns the origin of the indicated coordinate system. This is always 0,
* 0, 0 with all of our existing coordinate systems; it's hard to imagine it
* ever being different.
*/
83
static inline LPoint3f const &LPoint3f::origin(CoordinateSystem cs = ::CS_default);
2582 3 rfu 0 4 3549 13 LPoint3f::rfu 0 1 707 146
/**
* Returns a point described by right, forward, up displacements from the
* origin, wherever that maps to in the given coordinate system.
*/
107
static inline LPoint3f LPoint3f::rfu(float right, float fwd, float up, CoordinateSystem cs = ::CS_default);
2583 8 __repr__ 0 4 3549 18 LPoint3f::__repr__ 0 1 708 0
50
inline std::string LPoint3f::__repr__(void) const;
2584 14 get_class_type 0 4 3549 24 LPoint3f::get_class_type 0 1 709 0
49
static TypeHandle LPoint3f::get_class_type(void);
2585 9 ~LPoint3f 0 4 3549 19 LPoint3f::~LPoint3f 0 0 0
26
LPoint3f::~LPoint3f(void);
2586 8 LPoint3d 0 4 3550 18 LPoint3d::LPoint3d 0 6 710 711 712 713 714 715 46
/**
*
*/
/**
*
*/
/**
*
*/
/**
*
*/
312
inline LPoint3d::LPoint3d(void) = default;
inline LPoint3d::LPoint3d(LVecBase3d const &copy);
inline LPoint3d::LPoint3d(double fill_value);
inline LPoint3d::LPoint3d(double x, double y, double z);
inline LPoint3d::LPoint3d(LVecBase2d const &copy, double z);
inline LPoint3d::LPoint3d(LPoint3d const &) = default;
2587 11 __getattr__ 0 4 3550 21 LPoint3d::__getattr__ 0 1 716 0
91
inline PyObject *LPoint3d::__getattr__(PyObject *self, std::string const &attr_name) const;
2588 11 __setattr__ 0 4 3550 21 LPoint3d::__setattr__ 0 1 717 0
97
inline int LPoint3d::__setattr__(PyObject *self, std::string const &attr_name, PyObject *assign);
2589 4 zero 0 4 3550 14 LPoint3d::zero 0 1 718 39
/**
* Returns a zero-length point.
*/
51
static inline LPoint3d const &LPoint3d::zero(void);
2590 6 unit_x 0 4 3550 16 LPoint3d::unit_x 0 1 719 34
/**
* Returns a unit X point.
*/
53
static inline LPoint3d const &LPoint3d::unit_x(void);
2591 6 unit_y 0 4 3550 16 LPoint3d::unit_y 0 1 720 34
/**
* Returns a unit Y point.
*/
53
static inline LPoint3d const &LPoint3d::unit_y(void);
2592 6 unit_z 0 4 3550 16 LPoint3d::unit_z 0 1 721 34
/**
* Returns a unit Z point.
*/
53
static inline LPoint3d const &LPoint3d::unit_z(void);
2593 6 get_xy 0 4 3550 16 LPoint3d::get_xy 0 1 722 100
/**
* Returns a 2-component vector that shares just the first two components of
* this vector.
*/
45
inline LPoint2d LPoint3d::get_xy(void) const;
2594 6 get_xz 0 4 3550 16 LPoint3d::get_xz 0 1 723 105
/**
* Returns a 2-component vector that shares just the first and last components
* of this vector.
*/
45
inline LPoint2d LPoint3d::get_xz(void) const;
2595 6 get_yz 0 4 3550 16 LPoint3d::get_yz 0 1 724 99
/**
* Returns a 2-component vector that shares just the last two components of
* this vector.
*/
45
inline LPoint2d LPoint3d::get_yz(void) const;
2596 10 operator - 0 68 3550 20 LPoint3d::operator - 0 1 725 0
49
inline LPoint3d LPoint3d::operator -(void) const;
2597 10 operator + 0 4 3550 20 LPoint3d::operator + 0 2 726 727 0
138
inline LVecBase3d LPoint3d::operator +(LVecBase3d const &other) const;
inline LPoint3d LPoint3d::operator +(LVector3d const &other) const;
2598 10 operator - 0 4 3550 20 LPoint3d::operator - 0 3 728 729 730 0
206
inline LVecBase3d LPoint3d::operator -(LVecBase3d const &other) const;
inline LVector3d LPoint3d::operator -(LPoint3d const &other) const;
inline LPoint3d LPoint3d::operator -(LVector3d const &other) const;
2599 5 cross 0 4 3550 15 LPoint3d::cross 0 1 731 10
/**
*
*/
63
inline LPoint3d LPoint3d::cross(LVecBase3d const &other) const;
2600 10 normalized 0 4 3550 20 LPoint3d::normalized 0 1 732 160
/**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/
49
inline LPoint3d LPoint3d::normalized(void) const;
2601 7 project 0 4 3550 17 LPoint3d::project 0 1 733 152
/**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/
64
inline LPoint3d LPoint3d::project(LVecBase3d const &onto) const;
2602 10 operator * 0 4 3550 20 LPoint3d::operator * 0 1 734 0
58
inline LPoint3d LPoint3d::operator *(double scalar) const;
2603 10 operator / 0 4 3550 20 LPoint3d::operator / 0 1 735 0
58
inline LPoint3d LPoint3d::operator /(double scalar) const;
2604 6 origin 0 4 3550 16 LPoint3d::origin 0 1 736 186
/**
* Returns the origin of the indicated coordinate system. This is always 0,
* 0, 0 with all of our existing coordinate systems; it's hard to imagine it
* ever being different.
*/
83
static inline LPoint3d const &LPoint3d::origin(CoordinateSystem cs = ::CS_default);
2605 3 rfu 0 4 3550 13 LPoint3d::rfu 0 1 737 146
/**
* Returns a point described by right, forward, up displacements from the
* origin, wherever that maps to in the given coordinate system.
*/
110
static inline LPoint3d LPoint3d::rfu(double right, double fwd, double up, CoordinateSystem cs = ::CS_default);
2606 8 __repr__ 0 4 3550 18 LPoint3d::__repr__ 0 1 738 0
50
inline std::string LPoint3d::__repr__(void) const;
2607 14 get_class_type 0 4 3550 24 LPoint3d::get_class_type 0 1 739 0
49
static TypeHandle LPoint3d::get_class_type(void);
2608 9 ~LPoint3d 0 4 3550 19 LPoint3d::~LPoint3d 0 0 0
26
LPoint3d::~LPoint3d(void);
2609 8 LPoint3i 0 4 3551 18 LPoint3i::LPoint3i 0 6 740 741 742 743 744 745 46
/**
*
*/
/**
*
*/
/**
*
*/
/**
*
*/
297
inline LPoint3i::LPoint3i(void) = default;
inline LPoint3i::LPoint3i(LVecBase3i const &copy);
inline LPoint3i::LPoint3i(int fill_value);
inline LPoint3i::LPoint3i(int x, int y, int z);
inline LPoint3i::LPoint3i(LVecBase2i const &copy, int z);
inline LPoint3i::LPoint3i(LPoint3i const &) = default;
2610 11 __getattr__ 0 4 3551 21 LPoint3i::__getattr__ 0 1 746 0
91
inline PyObject *LPoint3i::__getattr__(PyObject *self, std::string const &attr_name) const;
2611 11 __setattr__ 0 4 3551 21 LPoint3i::__setattr__ 0 1 747 0
97
inline int LPoint3i::__setattr__(PyObject *self, std::string const &attr_name, PyObject *assign);
2612 4 zero 0 4 3551 14 LPoint3i::zero 0 1 748 39
/**
* Returns a zero-length point.
*/
51
static inline LPoint3i const &LPoint3i::zero(void);
2613 6 unit_x 0 4 3551 16 LPoint3i::unit_x 0 1 749 34
/**
* Returns a unit X point.
*/
53
static inline LPoint3i const &LPoint3i::unit_x(void);
2614 6 unit_y 0 4 3551 16 LPoint3i::unit_y 0 1 750 34
/**
* Returns a unit Y point.
*/
53
static inline LPoint3i const &LPoint3i::unit_y(void);
2615 6 unit_z 0 4 3551 16 LPoint3i::unit_z 0 1 751 34
/**
* Returns a unit Z point.
*/
53
static inline LPoint3i const &LPoint3i::unit_z(void);
2616 6 get_xy 0 4 3551 16 LPoint3i::get_xy 0 1 752 100
/**
* Returns a 2-component vector that shares just the first two components of
* this vector.
*/
45
inline LPoint2i LPoint3i::get_xy(void) const;
2617 6 get_xz 0 4 3551 16 LPoint3i::get_xz 0 1 753 105
/**
* Returns a 2-component vector that shares just the first and last components
* of this vector.
*/
45
inline LPoint2i LPoint3i::get_xz(void) const;
2618 6 get_yz 0 4 3551 16 LPoint3i::get_yz 0 1 754 99
/**
* Returns a 2-component vector that shares just the last two components of
* this vector.
*/
45
inline LPoint2i LPoint3i::get_yz(void) const;
2619 10 operator - 0 68 3551 20 LPoint3i::operator - 0 1 755 0
49
inline LPoint3i LPoint3i::operator -(void) const;
2620 10 operator + 0 4 3551 20 LPoint3i::operator + 0 2 756 757 0
138
inline LVecBase3i LPoint3i::operator +(LVecBase3i const &other) const;
inline LPoint3i LPoint3i::operator +(LVector3i const &other) const;
2621 10 operator - 0 4 3551 20 LPoint3i::operator - 0 3 758 759 760 0
206
inline LVecBase3i LPoint3i::operator -(LVecBase3i const &other) const;
inline LVector3i LPoint3i::operator -(LPoint3i const &other) const;
inline LPoint3i LPoint3i::operator -(LVector3i const &other) const;
2622 5 cross 0 4 3551 15 LPoint3i::cross 0 1 761 10
/**
*
*/
63
inline LPoint3i LPoint3i::cross(LVecBase3i const &other) const;
2623 10 operator * 0 4 3551 20 LPoint3i::operator * 0 1 762 0
55
inline LPoint3i LPoint3i::operator *(int scalar) const;
2624 10 operator / 0 4 3551 20 LPoint3i::operator / 0 1 763 0
55
inline LPoint3i LPoint3i::operator /(int scalar) const;
2625 6 origin 0 4 3551 16 LPoint3i::origin 0 1 764 186
/**
* Returns the origin of the indicated coordinate system. This is always 0,
* 0, 0 with all of our existing coordinate systems; it's hard to imagine it
* ever being different.
*/
83
static inline LPoint3i const &LPoint3i::origin(CoordinateSystem cs = ::CS_default);
2626 3 rfu 0 4 3551 13 LPoint3i::rfu 0 1 765 146
/**
* Returns a point described by right, forward, up displacements from the
* origin, wherever that maps to in the given coordinate system.
*/
101
static inline LPoint3i LPoint3i::rfu(int right, int fwd, int up, CoordinateSystem cs = ::CS_default);
2627 8 __repr__ 0 4 3551 18 LPoint3i::__repr__ 0 1 766 0
50
inline std::string LPoint3i::__repr__(void) const;
2628 14 get_class_type 0 4 3551 24 LPoint3i::get_class_type 0 1 767 0
49
static TypeHandle LPoint3i::get_class_type(void);
2629 9 ~LPoint3i 0 4 3551 19 LPoint3i::~LPoint3i 0 0 0
26
LPoint3i::~LPoint3i(void);
2630 10 LVecBase4f 0 4 3552 22 LVecBase4f::LVecBase4f 0 8 768 769 770 771 772 773 774 775 219
/**
*
*/
/**
*
*/
/**
*
*/
/**
*
*/
/**
* Constructs an LVecBase4 from an LPoint3. The w coordinate is set to 1.0.
*/
/**
* Constructs an LVecBase4 from an LVector3. The w coordinate is set to 0.0.
*/
461
inline LVecBase4f::LVecBase4f(void) = default;
inline LVecBase4f::LVecBase4f(float fill_value);
inline LVecBase4f::LVecBase4f(float x, float y, float z, float w);
inline LVecBase4f::LVecBase4f(UnalignedLVecBase4f const &copy);
inline LVecBase4f::LVecBase4f(LVecBase3f const &copy, float w);
inline LVecBase4f::LVecBase4f(LPoint3f const &point);
inline LVecBase4f::LVecBase4f(LVector3f const &vector);
inline LVecBase4f::LVecBase4f(LVecBase4f const &) = default;
2631 12 operator new 0 4 3552 24 LVecBase4f::operator new 0 1 776 0
124
inline void *LVecBase4f::operator new(std::size_t size);
inline void *LVecBase4f::operator new(std::size_t size, void *ptr);
2632 15 operator delete 0 4 3552 27 LVecBase4f::operator delete 0 0 0
108
inline void LVecBase4f::operator delete(void *ptr);
inline void LVecBase4f::operator delete(void *, void *);
2633 12 validate_ptr 0 4 3552 24 LVecBase4f::validate_ptr 0 0 0
61
static inline bool LVecBase4f::validate_ptr(void const *ptr);
2634 10 operator = 0 4 3552 22 LVecBase4f::operator = 0 2 777 778 0
119
void LVecBase4f::operator =(LVecBase4f const &copy) = default;
void LVecBase4f::operator =(float fill_value) = default;
2635 4 zero 0 4 3552 16 LVecBase4f::zero 0 1 779 40
/**
* Returns a zero-length vector.
*/
55
static inline LVecBase4f const &LVecBase4f::zero(void);
2636 6 unit_x 0 4 3552 18 LVecBase4f::unit_x 0 1 780 35
/**
* Returns a unit X vector.
*/
57
static inline LVecBase4f const &LVecBase4f::unit_x(void);
2637 6 unit_y 0 4 3552 18 LVecBase4f::unit_y 0 1 781 35
/**
* Returns a unit Y vector.
*/
57
static inline LVecBase4f const &LVecBase4f::unit_y(void);
2638 6 unit_z 0 4 3552 18 LVecBase4f::unit_z 0 1 782 35
/**
* Returns a unit Z vector.
*/
57
static inline LVecBase4f const &LVecBase4f::unit_z(void);
2639 6 unit_w 0 4 3552 18 LVecBase4f::unit_w 0 1 783 35
/**
* Returns a unit W vector.
*/
57
static inline LVecBase4f const &LVecBase4f::unit_w(void);
2640 10 __reduce__ 0 4 3552 22 LVecBase4f::__reduce__ 0 1 784 0
62
inline PyObject *LVecBase4f::__reduce__(PyObject *self) const;
2641 11 __getattr__ 0 4 3552 23 LVecBase4f::__getattr__ 0 1 785 0
93
inline PyObject *LVecBase4f::__getattr__(PyObject *self, std::string const &attr_name) const;
2642 11 __setattr__ 0 4 3552 23 LVecBase4f::__setattr__ 0 1 786 0
99
inline int LVecBase4f::__setattr__(PyObject *self, std::string const &attr_name, PyObject *assign);
2643 11 operator [] 0 4 3552 23 LVecBase4f::operator [] 0 2 787 788 10
/**
*
*/
96
inline float LVecBase4f::operator [](int i) const;
inline float &LVecBase4f::operator [](int i);
2644 4 size 0 4 3552 16 LVecBase4f::size 0 1 789 0
44
static constexpr int LVecBase4f::size(void);
2645 6 is_nan 0 4 3552 18 LVecBase4f::is_nan 0 1 790 91
/**
* Returns true if any component of the vector is not-a-number, false
* otherwise.
*/
43
inline bool LVecBase4f::is_nan(void) const;
2646 8 get_cell 0 4 3552 20 LVecBase4f::get_cell 0 1 791 10
/**
*
*/
47
inline float LVecBase4f::get_cell(int i) const;
2647 8 set_cell 0 4 3552 20 LVecBase4f::set_cell 0 1 792 10
/**
*
*/
53
inline void LVecBase4f::set_cell(int i, float value);
2648 5 get_x 0 4 3552 17 LVecBase4f::get_x 0 1 793 10
/**
*
*/
43
inline float LVecBase4f::get_x(void) const;
2649 5 get_y 0 4 3552 17 LVecBase4f::get_y 0 1 794 10
/**
*
*/
43
inline float LVecBase4f::get_y(void) const;
2650 5 get_z 0 4 3552 17 LVecBase4f::get_z 0 1 795 10
/**
*
*/
43
inline float LVecBase4f::get_z(void) const;
2651 5 get_w 0 4 3552 17 LVecBase4f::get_w 0 1 796 10
/**
*
*/
43
inline float LVecBase4f::get_w(void) const;
2652 7 get_xyz 0 4 3552 19 LVecBase4f::get_xyz 0 1 797 58
/**
* Returns the x, y and z component of this vector
*/
50
inline LVecBase3f LVecBase4f::get_xyz(void) const;
2653 6 get_xy 0 4 3552 18 LVecBase4f::get_xy 0 1 798 55
/**
* Returns the x and y component of this vector
*/
49
inline LVecBase2f LVecBase4f::get_xy(void) const;
2654 5 set_x 0 4 3552 17 LVecBase4f::set_x 0 1 799 10
/**
*
*/
43
inline void LVecBase4f::set_x(float value);
2655 5 set_y 0 4 3552 17 LVecBase4f::set_y 0 1 800 10
/**
*
*/
43
inline void LVecBase4f::set_y(float value);
2656 5 set_z 0 4 3552 17 LVecBase4f::set_z 0 1 801 10
/**
*
*/
43
inline void LVecBase4f::set_z(float value);
2657 5 set_w 0 4 3552 17 LVecBase4f::set_w 0 1 802 10
/**
*
*/
43
inline void LVecBase4f::set_w(float value);
2658 11 add_to_cell 0 4 3552 23 LVecBase4f::add_to_cell 0 1 803 164
// These next functions add to an existing value. i.e.
// foo.set_x(foo.get_x() + value) These are useful to reduce overhead in
// scripting languages:
/**
*
*/
56
inline void LVecBase4f::add_to_cell(int i, float value);
2659 5 add_x 0 4 3552 17 LVecBase4f::add_x 0 1 804 10
/**
*
*/
43
inline void LVecBase4f::add_x(float value);
2660 5 add_y 0 4 3552 17 LVecBase4f::add_y 0 1 805 10
/**
*
*/
43
inline void LVecBase4f::add_y(float value);
2661 5 add_z 0 4 3552 17 LVecBase4f::add_z 0 1 806 10
/**
*
*/
43
inline void LVecBase4f::add_z(float value);
2662 5 add_w 0 4 3552 17 LVecBase4f::add_w 0 1 807 10
/**
*
*/
43
inline void LVecBase4f::add_w(float value);
2663 8 get_data 0 4 3552 20 LVecBase4f::get_data 0 1 808 161
/**
* Returns the address of the first of the four data elements in the vector.
* The remaining elements occupy the next positions consecutively in memory.
*/
53
inline float const *LVecBase4f::get_data(void) const;
2664 18 get_num_components 0 4 3552 30 LVecBase4f::get_num_components 0 1 809 0
58
static constexpr int LVecBase4f::get_num_components(void);
2665 12 extract_data 0 4 3552 24 LVecBase4f::extract_data 0 0 0
46
inline void LVecBase4f::extract_data(float *);
2666 4 fill 0 4 3552 16 LVecBase4f::fill 0 1 810 129
/**
* Sets each element of the vector to the indicated fill_value. This is
* particularly useful for initializing to zero.
*/
47
inline void LVecBase4f::fill(float fill_value);
2667 3 set 0 4 3552 15 LVecBase4f::set 0 1 811 10
/**
*
*/
64
inline void LVecBase4f::set(float x, float y, float z, float w);
2668 3 dot 0 4 3552 15 LVecBase4f::dot 0 1 812 10
/**
*
*/
60
inline float LVecBase4f::dot(LVecBase4f const &other) const;
2669 14 length_squared 0 4 3552 26 LVecBase4f::length_squared 0 1 813 69
/**
* Returns the square of the vector's length, cheap and easy.
*/
52
inline float LVecBase4f::length_squared(void) const;
2670 6 length 0 4 3552 18 LVecBase4f::length 0 1 814 72
/**
* Returns the length of the vector, by the Pythagorean theorem.
*/
44
inline float LVecBase4f::length(void) const;
2671 9 normalize 0 4 3552 21 LVecBase4f::normalize 0 1 815 127
/**
* Normalizes the vector in place. Returns true if the vector was normalized,
* false if it was a zero-length vector.
*/
40
inline bool LVecBase4f::normalize(void);
2672 10 normalized 0 4 3552 22 LVecBase4f::normalized 0 1 816 160
/**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/
53
inline LVecBase4f LVecBase4f::normalized(void) const;
2673 7 project 0 4 3552 19 LVecBase4f::project 0 1 817 152
/**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/
68
inline LVecBase4f LVecBase4f::project(LVecBase4f const &onto) const;
2674 10 operator < 0 4 3552 22 LVecBase4f::operator < 0 1 818 0
66
inline bool LVecBase4f::operator <(LVecBase4f const &other) const;
2675 11 operator == 0 4 3552 23 LVecBase4f::operator == 0 1 819 0
67
inline bool LVecBase4f::operator ==(LVecBase4f const &other) const;
2676 11 operator != 0 4 3552 23 LVecBase4f::operator != 0 1 820 0
67
inline bool LVecBase4f::operator !=(LVecBase4f const &other) const;
2677 10 compare_to 0 4 3552 22 LVecBase4f::compare_to 0 2 821 822 332
/**
* This flavor of compare_to uses a default threshold value based on the
* numeric type.
*/
/**
* Sorts vectors lexicographically, componentwise. Returns a number less than
* 0 if this vector sorts before the other one, greater than zero if it sorts
* after, 0 if they are equivalent (within the indicated tolerance).
*/
148
inline int LVecBase4f::compare_to(LVecBase4f const &other) const;
inline int LVecBase4f::compare_to(LVecBase4f const &other, float threshold) const;
2678 8 get_hash 0 4 3552 20 LVecBase4f::get_hash 0 2 823 824 100
/**
* Returns a suitable hash for phash_map.
*/
/**
* Returns a suitable hash for phash_map.
*/
116
inline std::size_t LVecBase4f::get_hash(void) const;
inline std::size_t LVecBase4f::get_hash(float threshold) const;
2679 8 add_hash 0 4 3552 20 LVecBase4f::add_hash 0 2 825 826 100
/**
* Adds the vector into the running hash.
*/
/**
* Adds the vector into the running hash.
*/
146
inline std::size_t LVecBase4f::add_hash(std::size_t hash) const;
inline std::size_t LVecBase4f::add_hash(std::size_t hash, float threshold) const;
2680 13 generate_hash 0 4 3552 25 LVecBase4f::generate_hash 0 2 827 828 120
/**
* Adds the vector to the indicated hash generator.
*/
/**
* Adds the vector to the indicated hash generator.
*/
170
inline void LVecBase4f::generate_hash(ChecksumHashGenerator &hashgen) const;
inline void LVecBase4f::generate_hash(ChecksumHashGenerator &hashgen, float threshold) const;
2681 10 operator - 0 68 3552 22 LVecBase4f::operator - 0 1 829 0
53
inline LVecBase4f LVecBase4f::operator -(void) const;
2682 10 operator + 0 4 3552 22 LVecBase4f::operator + 0 1 830 0
72
inline LVecBase4f LVecBase4f::operator +(LVecBase4f const &other) const;
2683 10 operator - 0 4 3552 22 LVecBase4f::operator - 0 1 831 0
72
inline LVecBase4f LVecBase4f::operator -(LVecBase4f const &other) const;
2684 10 operator * 0 4 3552 22 LVecBase4f::operator * 0 1 832 0
61
inline LVecBase4f LVecBase4f::operator *(float scalar) const;
2685 10 operator / 0 4 3552 22 LVecBase4f::operator / 0 1 833 0
61
inline LVecBase4f LVecBase4f::operator /(float scalar) const;
2686 11 operator += 0 4 3552 23 LVecBase4f::operator += 0 1 834 0
61
inline void LVecBase4f::operator +=(LVecBase4f const &other);
2687 11 operator -= 0 4 3552 23 LVecBase4f::operator -= 0 1 835 0
61
inline void LVecBase4f::operator -=(LVecBase4f const &other);
2688 11 operator *= 0 4 3552 23 LVecBase4f::operator *= 0 1 836 0
50
inline void LVecBase4f::operator *=(float scalar);
2689 11 operator /= 0 4 3552 23 LVecBase4f::operator /= 0 1 837 0
50
inline void LVecBase4f::operator /=(float scalar);
2690 18 componentwise_mult 0 4 3552 30 LVecBase4f::componentwise_mult 0 1 838 10
/**
*
*/
68
inline void LVecBase4f::componentwise_mult(LVecBase4f const &other);
2691 7 __pow__ 0 4 3552 19 LVecBase4f::__pow__ 0 1 839 0
60
inline LVecBase4f LVecBase4f::__pow__(float exponent) const;
2692 8 __ipow__ 0 4 3552 20 LVecBase4f::__ipow__ 0 1 840 0
70
inline PyObject *LVecBase4f::__ipow__(PyObject *self, float exponent);
2693 4 fmax 0 4 3552 16 LVecBase4f::fmax 0 1 841 10
/**
*
*/
66
inline LVecBase4f LVecBase4f::fmax(LVecBase4f const &other) const;
2694 4 fmin 0 4 3552 16 LVecBase4f::fmin 0 1 842 10
/**
*
*/
66
inline LVecBase4f LVecBase4f::fmin(LVecBase4f const &other) const;
2695 12 almost_equal 0 4 3552 24 LVecBase4f::almost_equal 0 2 843 844 210
/**
* Returns true if two vectors are memberwise equal within a specified
* tolerance.
*/
/**
* Returns true if two vectors are memberwise equal within a default tolerance
* based on the numeric type.
*/
154
inline bool LVecBase4f::almost_equal(LVecBase4f const &other, float threshold) const;
inline bool LVecBase4f::almost_equal(LVecBase4f const &other) const;
2696 6 output 0 4 3552 18 LVecBase4f::output 0 1 845 10
/**
*
*/
56
inline void LVecBase4f::output(std::ostream &out) const;
2697 8 __repr__ 0 4 3552 20 LVecBase4f::__repr__ 0 1 846 0
52
inline std::string LVecBase4f::__repr__(void) const;
2698 20 write_datagram_fixed 0 4 3552 32 LVecBase4f::write_datagram_fixed 0 1 847 332
/**
* 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 appropriate when you want to
* write a fixed-width value to the datagram, especially when you are not
* writing a bam file.
*/
74
inline void LVecBase4f::write_datagram_fixed(Datagram &destination) const;
2699 19 read_datagram_fixed 0 4 3552 31 LVecBase4f::read_datagram_fixed 0 1 848 114
/**
* Reads the vector from the Datagram using get_float32() or get_float64().
* See write_datagram_fixed().
*/
70
inline void LVecBase4f::read_datagram_fixed(DatagramIterator &source);
2700 14 write_datagram 0 4 3552 26 LVecBase4f::write_datagram 0 1 849 205
/**
* Writes the vector to the Datagram using add_stdfloat(). This is
* appropriate when you want to write the vector using the standard width
* setting, especially when you are writing a bam file.
*/
68
inline void LVecBase4f::write_datagram(Datagram &destination) const;
2701 13 read_datagram 0 4 3552 25 LVecBase4f::read_datagram 0 1 850 67
/**
* Reads the vector from the Datagram using get_stdfloat().
*/
64
inline void LVecBase4f::read_datagram(DatagramIterator &source);
2702 14 get_class_type 0 4 3552 26 LVecBase4f::get_class_type 0 1 851 0
51
static TypeHandle LVecBase4f::get_class_type(void);
2703 11 ~LVecBase4f 0 4 3552 23 LVecBase4f::~LVecBase4f 0 0 0
30
LVecBase4f::~LVecBase4f(void);
2704 19 UnalignedLVecBase4f 0 4 3554 40 UnalignedLVecBase4f::UnalignedLVecBase4f 0 5 852 853 854 855 856 34
/**
*
*/
/**
*
*/
/**
*
*/
377
inline UnalignedLVecBase4f::UnalignedLVecBase4f(void) = default;
inline UnalignedLVecBase4f::UnalignedLVecBase4f(LVecBase4f const &copy);
inline UnalignedLVecBase4f::UnalignedLVecBase4f(float fill_value);
inline UnalignedLVecBase4f::UnalignedLVecBase4f(float x, float y, float z, float w);
inline UnalignedLVecBase4f::UnalignedLVecBase4f(UnalignedLVecBase4f const &) = default;
2705 4 fill 0 4 3554 25 UnalignedLVecBase4f::fill 0 1 857 129
/**
* Sets each element of the vector to the indicated fill_value. This is
* particularly useful for initializing to zero.
*/
56
inline void UnalignedLVecBase4f::fill(float fill_value);
2706 3 set 0 4 3554 24 UnalignedLVecBase4f::set 0 1 858 10
/**
*
*/
73
inline void UnalignedLVecBase4f::set(float x, float y, float z, float w);
2707 11 operator [] 0 4 3554 32 UnalignedLVecBase4f::operator [] 0 2 859 860 10
/**
*
*/
114
inline float UnalignedLVecBase4f::operator [](int i) const;
inline float &UnalignedLVecBase4f::operator [](int i);
2708 4 size 0 4 3554 25 UnalignedLVecBase4f::size 0 1 861 0
53
static constexpr int UnalignedLVecBase4f::size(void);
2709 8 get_data 0 4 3554 29 UnalignedLVecBase4f::get_data 0 1 862 162
/**
* Returns the address of the first of the three data elements in the vector.
* The remaining elements occupy the next positions consecutively in memory.
*/
62
inline float const *UnalignedLVecBase4f::get_data(void) const;
2710 18 get_num_components 0 4 3554 39 UnalignedLVecBase4f::get_num_components 0 1 863 0
67
static constexpr int UnalignedLVecBase4f::get_num_components(void);
2711 11 operator == 0 4 3554 32 UnalignedLVecBase4f::operator == 0 1 864 0
85
inline bool UnalignedLVecBase4f::operator ==(UnalignedLVecBase4f const &other) const;
2712 11 operator != 0 4 3554 32 UnalignedLVecBase4f::operator != 0 1 865 0
85
inline bool UnalignedLVecBase4f::operator !=(UnalignedLVecBase4f const &other) const;
2713 14 get_class_type 0 4 3554 35 UnalignedLVecBase4f::get_class_type 0 1 866 0
60
static TypeHandle UnalignedLVecBase4f::get_class_type(void);
2714 20 ~UnalignedLVecBase4f 0 4 3554 41 UnalignedLVecBase4f::~UnalignedLVecBase4f 0 0 0
48
UnalignedLVecBase4f::~UnalignedLVecBase4f(void);
2715 10 LVecBase4d 0 4 3556 22 LVecBase4d::LVecBase4d 0 8 867 868 869 870 871 872 873 874 219
/**
*
*/
/**
*
*/
/**
*
*/
/**
*
*/
/**
* Constructs an LVecBase4 from an LPoint3. The w coordinate is set to 1.0.
*/
/**
* Constructs an LVecBase4 from an LVector3. The w coordinate is set to 0.0.
*/
467
inline LVecBase4d::LVecBase4d(void) = default;
inline LVecBase4d::LVecBase4d(double fill_value);
inline LVecBase4d::LVecBase4d(double x, double y, double z, double w);
inline LVecBase4d::LVecBase4d(UnalignedLVecBase4d const &copy);
inline LVecBase4d::LVecBase4d(LVecBase3d const &copy, double w);
inline LVecBase4d::LVecBase4d(LPoint3d const &point);
inline LVecBase4d::LVecBase4d(LVector3d const &vector);
inline LVecBase4d::LVecBase4d(LVecBase4d const &) = default;
2716 12 operator new 0 4 3556 24 LVecBase4d::operator new 0 1 875 0
124
inline void *LVecBase4d::operator new(std::size_t size);
inline void *LVecBase4d::operator new(std::size_t size, void *ptr);
2717 15 operator delete 0 4 3556 27 LVecBase4d::operator delete 0 0 0
108
inline void LVecBase4d::operator delete(void *ptr);
inline void LVecBase4d::operator delete(void *, void *);
2718 12 validate_ptr 0 4 3556 24 LVecBase4d::validate_ptr 0 0 0
61
static inline bool LVecBase4d::validate_ptr(void const *ptr);
2719 10 operator = 0 4 3556 22 LVecBase4d::operator = 0 2 876 877 0
120
void LVecBase4d::operator =(LVecBase4d const &copy) = default;
void LVecBase4d::operator =(double fill_value) = default;
2720 4 zero 0 4 3556 16 LVecBase4d::zero 0 1 878 40
/**
* Returns a zero-length vector.
*/
55
static inline LVecBase4d const &LVecBase4d::zero(void);
2721 6 unit_x 0 4 3556 18 LVecBase4d::unit_x 0 1 879 35
/**
* Returns a unit X vector.
*/
57
static inline LVecBase4d const &LVecBase4d::unit_x(void);
2722 6 unit_y 0 4 3556 18 LVecBase4d::unit_y 0 1 880 35
/**
* Returns a unit Y vector.
*/
57
static inline LVecBase4d const &LVecBase4d::unit_y(void);
2723 6 unit_z 0 4 3556 18 LVecBase4d::unit_z 0 1 881 35
/**
* Returns a unit Z vector.
*/
57
static inline LVecBase4d const &LVecBase4d::unit_z(void);
2724 6 unit_w 0 4 3556 18 LVecBase4d::unit_w 0 1 882 35
/**
* Returns a unit W vector.
*/
57
static inline LVecBase4d const &LVecBase4d::unit_w(void);
2725 10 __reduce__ 0 4 3556 22 LVecBase4d::__reduce__ 0 1 883 0
62
inline PyObject *LVecBase4d::__reduce__(PyObject *self) const;
2726 11 __getattr__ 0 4 3556 23 LVecBase4d::__getattr__ 0 1 884 0
93
inline PyObject *LVecBase4d::__getattr__(PyObject *self, std::string const &attr_name) const;
2727 11 __setattr__ 0 4 3556 23 LVecBase4d::__setattr__ 0 1 885 0
99
inline int LVecBase4d::__setattr__(PyObject *self, std::string const &attr_name, PyObject *assign);
2728 11 operator [] 0 4 3556 23 LVecBase4d::operator [] 0 2 886 887 10
/**
*
*/
98
inline double LVecBase4d::operator [](int i) const;
inline double &LVecBase4d::operator [](int i);
2729 4 size 0 4 3556 16 LVecBase4d::size 0 1 888 0
44
static constexpr int LVecBase4d::size(void);
2730 6 is_nan 0 4 3556 18 LVecBase4d::is_nan 0 1 889 91
/**
* Returns true if any component of the vector is not-a-number, false
* otherwise.
*/
43
inline bool LVecBase4d::is_nan(void) const;
2731 8 get_cell 0 4 3556 20 LVecBase4d::get_cell 0 1 890 10
/**
*
*/
48
inline double LVecBase4d::get_cell(int i) const;
2732 8 set_cell 0 4 3556 20 LVecBase4d::set_cell 0 1 891 10
/**
*
*/
54
inline void LVecBase4d::set_cell(int i, double value);
2733 5 get_x 0 4 3556 17 LVecBase4d::get_x 0 1 892 10
/**
*
*/
44
inline double LVecBase4d::get_x(void) const;
2734 5 get_y 0 4 3556 17 LVecBase4d::get_y 0 1 893 10
/**
*
*/
44
inline double LVecBase4d::get_y(void) const;
2735 5 get_z 0 4 3556 17 LVecBase4d::get_z 0 1 894 10
/**
*
*/
44
inline double LVecBase4d::get_z(void) const;
2736 5 get_w 0 4 3556 17 LVecBase4d::get_w 0 1 895 10
/**
*
*/
44
inline double LVecBase4d::get_w(void) const;
2737 7 get_xyz 0 4 3556 19 LVecBase4d::get_xyz 0 1 896 58
/**
* Returns the x, y and z component of this vector
*/
50
inline LVecBase3d LVecBase4d::get_xyz(void) const;
2738 6 get_xy 0 4 3556 18 LVecBase4d::get_xy 0 1 897 55
/**
* Returns the x and y component of this vector
*/
49
inline LVecBase2d LVecBase4d::get_xy(void) const;
2739 5 set_x 0 4 3556 17 LVecBase4d::set_x 0 1 898 10
/**
*
*/
44
inline void LVecBase4d::set_x(double value);
2740 5 set_y 0 4 3556 17 LVecBase4d::set_y 0 1 899 10
/**
*
*/
44
inline void LVecBase4d::set_y(double value);
2741 5 set_z 0 4 3556 17 LVecBase4d::set_z 0 1 900 10
/**
*
*/
44
inline void LVecBase4d::set_z(double value);
2742 5 set_w 0 4 3556 17 LVecBase4d::set_w 0 1 901 10
/**
*
*/
44
inline void LVecBase4d::set_w(double value);
2743 11 add_to_cell 0 4 3556 23 LVecBase4d::add_to_cell 0 1 902 164
// These next functions add to an existing value. i.e.
// foo.set_x(foo.get_x() + value) These are useful to reduce overhead in
// scripting languages:
/**
*
*/
57
inline void LVecBase4d::add_to_cell(int i, double value);
2744 5 add_x 0 4 3556 17 LVecBase4d::add_x 0 1 903 10
/**
*
*/
44
inline void LVecBase4d::add_x(double value);
2745 5 add_y 0 4 3556 17 LVecBase4d::add_y 0 1 904 10
/**
*
*/
44
inline void LVecBase4d::add_y(double value);
2746 5 add_z 0 4 3556 17 LVecBase4d::add_z 0 1 905 10
/**
*
*/
44
inline void LVecBase4d::add_z(double value);
2747 5 add_w 0 4 3556 17 LVecBase4d::add_w 0 1 906 10
/**
*
*/
44
inline void LVecBase4d::add_w(double value);
2748 8 get_data 0 4 3556 20 LVecBase4d::get_data 0 1 907 161
/**
* Returns the address of the first of the four data elements in the vector.
* The remaining elements occupy the next positions consecutively in memory.
*/
54
inline double const *LVecBase4d::get_data(void) const;
2749 18 get_num_components 0 4 3556 30 LVecBase4d::get_num_components 0 1 908 0
58
static constexpr int LVecBase4d::get_num_components(void);
2750 12 extract_data 0 4 3556 24 LVecBase4d::extract_data 0 0 0
46
inline void LVecBase4d::extract_data(float *);
2751 4 fill 0 4 3556 16 LVecBase4d::fill 0 1 909 129
/**
* Sets each element of the vector to the indicated fill_value. This is
* particularly useful for initializing to zero.
*/
48
inline void LVecBase4d::fill(double fill_value);
2752 3 set 0 4 3556 15 LVecBase4d::set 0 1 910 10
/**
*
*/
68
inline void LVecBase4d::set(double x, double y, double z, double w);
2753 3 dot 0 4 3556 15 LVecBase4d::dot 0 1 911 10
/**
*
*/
61
inline double LVecBase4d::dot(LVecBase4d const &other) const;
2754 14 length_squared 0 4 3556 26 LVecBase4d::length_squared 0 1 912 69
/**
* Returns the square of the vector's length, cheap and easy.
*/
53
inline double LVecBase4d::length_squared(void) const;
2755 6 length 0 4 3556 18 LVecBase4d::length 0 1 913 72
/**
* Returns the length of the vector, by the Pythagorean theorem.
*/
45
inline double LVecBase4d::length(void) const;
2756 9 normalize 0 4 3556 21 LVecBase4d::normalize 0 1 914 127
/**
* Normalizes the vector in place. Returns true if the vector was normalized,
* false if it was a zero-length vector.
*/
40
inline bool LVecBase4d::normalize(void);
2757 10 normalized 0 4 3556 22 LVecBase4d::normalized 0 1 915 160
/**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/
53
inline LVecBase4d LVecBase4d::normalized(void) const;
2758 7 project 0 4 3556 19 LVecBase4d::project 0 1 916 152
/**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/
68
inline LVecBase4d LVecBase4d::project(LVecBase4d const &onto) const;
2759 10 operator < 0 4 3556 22 LVecBase4d::operator < 0 1 917 0
66
inline bool LVecBase4d::operator <(LVecBase4d const &other) const;
2760 11 operator == 0 4 3556 23 LVecBase4d::operator == 0 1 918 0
67
inline bool LVecBase4d::operator ==(LVecBase4d const &other) const;
2761 11 operator != 0 4 3556 23 LVecBase4d::operator != 0 1 919 0
67
inline bool LVecBase4d::operator !=(LVecBase4d const &other) const;
2762 10 compare_to 0 4 3556 22 LVecBase4d::compare_to 0 2 920 921 332
/**
* This flavor of compare_to uses a default threshold value based on the
* numeric type.
*/
/**
* Sorts vectors lexicographically, componentwise. Returns a number less than
* 0 if this vector sorts before the other one, greater than zero if it sorts
* after, 0 if they are equivalent (within the indicated tolerance).
*/
149
inline int LVecBase4d::compare_to(LVecBase4d const &other) const;
inline int LVecBase4d::compare_to(LVecBase4d const &other, double threshold) const;
2763 8 get_hash 0 4 3556 20 LVecBase4d::get_hash 0 2 922 923 100
/**
* Returns a suitable hash for phash_map.
*/
/**
* Returns a suitable hash for phash_map.
*/
117
inline std::size_t LVecBase4d::get_hash(void) const;
inline std::size_t LVecBase4d::get_hash(double threshold) const;
2764 8 add_hash 0 4 3556 20 LVecBase4d::add_hash 0 2 924 925 100
/**
* Adds the vector into the running hash.
*/
/**
* Adds the vector into the running hash.
*/
147
inline std::size_t LVecBase4d::add_hash(std::size_t hash) const;
inline std::size_t LVecBase4d::add_hash(std::size_t hash, double threshold) const;
2765 13 generate_hash 0 4 3556 25 LVecBase4d::generate_hash 0 2 926 927 120
/**
* Adds the vector to the indicated hash generator.
*/
/**
* Adds the vector to the indicated hash generator.
*/
171
inline void LVecBase4d::generate_hash(ChecksumHashGenerator &hashgen) const;
inline void LVecBase4d::generate_hash(ChecksumHashGenerator &hashgen, double threshold) const;
2766 10 operator - 0 68 3556 22 LVecBase4d::operator - 0 1 928 0
53
inline LVecBase4d LVecBase4d::operator -(void) const;
2767 10 operator + 0 4 3556 22 LVecBase4d::operator + 0 1 929 0
72
inline LVecBase4d LVecBase4d::operator +(LVecBase4d const &other) const;
2768 10 operator - 0 4 3556 22 LVecBase4d::operator - 0 1 930 0
72
inline LVecBase4d LVecBase4d::operator -(LVecBase4d const &other) const;
2769 10 operator * 0 4 3556 22 LVecBase4d::operator * 0 1 931 0
62
inline LVecBase4d LVecBase4d::operator *(double scalar) const;
2770 10 operator / 0 4 3556 22 LVecBase4d::operator / 0 1 932 0
62
inline LVecBase4d LVecBase4d::operator /(double scalar) const;
2771 11 operator += 0 4 3556 23 LVecBase4d::operator += 0 1 933 0
61
inline void LVecBase4d::operator +=(LVecBase4d const &other);
2772 11 operator -= 0 4 3556 23 LVecBase4d::operator -= 0 1 934 0
61
inline void LVecBase4d::operator -=(LVecBase4d const &other);
2773 11 operator *= 0 4 3556 23 LVecBase4d::operator *= 0 1 935 0
51
inline void LVecBase4d::operator *=(double scalar);
2774 11 operator /= 0 4 3556 23 LVecBase4d::operator /= 0 1 936 0
51
inline void LVecBase4d::operator /=(double scalar);
2775 18 componentwise_mult 0 4 3556 30 LVecBase4d::componentwise_mult 0 1 937 10
/**
*
*/
68
inline void LVecBase4d::componentwise_mult(LVecBase4d const &other);
2776 7 __pow__ 0 4 3556 19 LVecBase4d::__pow__ 0 1 938 0
61
inline LVecBase4d LVecBase4d::__pow__(double exponent) const;
2777 8 __ipow__ 0 4 3556 20 LVecBase4d::__ipow__ 0 1 939 0
71
inline PyObject *LVecBase4d::__ipow__(PyObject *self, double exponent);
2778 4 fmax 0 4 3556 16 LVecBase4d::fmax 0 1 940 10
/**
*
*/
66
inline LVecBase4d LVecBase4d::fmax(LVecBase4d const &other) const;
2779 4 fmin 0 4 3556 16 LVecBase4d::fmin 0 1 941 10
/**
*
*/
66
inline LVecBase4d LVecBase4d::fmin(LVecBase4d const &other) const;
2780 12 almost_equal 0 4 3556 24 LVecBase4d::almost_equal 0 2 942 943 210
/**
* Returns true if two vectors are memberwise equal within a specified
* tolerance.
*/
/**
* Returns true if two vectors are memberwise equal within a default tolerance
* based on the numeric type.
*/
155
inline bool LVecBase4d::almost_equal(LVecBase4d const &other, double threshold) const;
inline bool LVecBase4d::almost_equal(LVecBase4d const &other) const;
2781 6 output 0 4 3556 18 LVecBase4d::output 0 1 944 10
/**
*
*/
56
inline void LVecBase4d::output(std::ostream &out) const;
2782 8 __repr__ 0 4 3556 20 LVecBase4d::__repr__ 0 1 945 0
52
inline std::string LVecBase4d::__repr__(void) const;
2783 20 write_datagram_fixed 0 4 3556 32 LVecBase4d::write_datagram_fixed 0 1 946 332
/**
* 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 appropriate when you want to
* write a fixed-width value to the datagram, especially when you are not
* writing a bam file.
*/
74
inline void LVecBase4d::write_datagram_fixed(Datagram &destination) const;
2784 19 read_datagram_fixed 0 4 3556 31 LVecBase4d::read_datagram_fixed 0 1 947 114
/**
* Reads the vector from the Datagram using get_float32() or get_float64().
* See write_datagram_fixed().
*/
70
inline void LVecBase4d::read_datagram_fixed(DatagramIterator &source);
2785 14 write_datagram 0 4 3556 26 LVecBase4d::write_datagram 0 1 948 205
/**
* Writes the vector to the Datagram using add_stdfloat(). This is
* appropriate when you want to write the vector using the standard width
* setting, especially when you are writing a bam file.
*/
68
inline void LVecBase4d::write_datagram(Datagram &destination) const;
2786 13 read_datagram 0 4 3556 25 LVecBase4d::read_datagram 0 1 949 67
/**
* Reads the vector from the Datagram using get_stdfloat().
*/
64
inline void LVecBase4d::read_datagram(DatagramIterator &source);
2787 14 get_class_type 0 4 3556 26 LVecBase4d::get_class_type 0 1 950 0
51
static TypeHandle LVecBase4d::get_class_type(void);
2788 11 ~LVecBase4d 0 4 3556 23 LVecBase4d::~LVecBase4d 0 0 0
30
LVecBase4d::~LVecBase4d(void);
2789 19 UnalignedLVecBase4d 0 4 3558 40 UnalignedLVecBase4d::UnalignedLVecBase4d 0 5 951 952 953 954 955 34
/**
*
*/
/**
*
*/
/**
*
*/
382
inline UnalignedLVecBase4d::UnalignedLVecBase4d(void) = default;
inline UnalignedLVecBase4d::UnalignedLVecBase4d(LVecBase4d const &copy);
inline UnalignedLVecBase4d::UnalignedLVecBase4d(double fill_value);
inline UnalignedLVecBase4d::UnalignedLVecBase4d(double x, double y, double z, double w);
inline UnalignedLVecBase4d::UnalignedLVecBase4d(UnalignedLVecBase4d const &) = default;
2790 4 fill 0 4 3558 25 UnalignedLVecBase4d::fill 0 1 956 129
/**
* Sets each element of the vector to the indicated fill_value. This is
* particularly useful for initializing to zero.
*/
57
inline void UnalignedLVecBase4d::fill(double fill_value);
2791 3 set 0 4 3558 24 UnalignedLVecBase4d::set 0 1 957 10
/**
*
*/
77
inline void UnalignedLVecBase4d::set(double x, double y, double z, double w);
2792 11 operator [] 0 4 3558 32 UnalignedLVecBase4d::operator [] 0 2 958 959 10
/**
*
*/
116
inline double UnalignedLVecBase4d::operator [](int i) const;
inline double &UnalignedLVecBase4d::operator [](int i);
2793 4 size 0 4 3558 25 UnalignedLVecBase4d::size 0 1 960 0
53
static constexpr int UnalignedLVecBase4d::size(void);
2794 8 get_data 0 4 3558 29 UnalignedLVecBase4d::get_data 0 1 961 162
/**
* Returns the address of the first of the three data elements in the vector.
* The remaining elements occupy the next positions consecutively in memory.
*/
63
inline double const *UnalignedLVecBase4d::get_data(void) const;
2795 18 get_num_components 0 4 3558 39 UnalignedLVecBase4d::get_num_components 0 1 962 0
67
static constexpr int UnalignedLVecBase4d::get_num_components(void);
2796 11 operator == 0 4 3558 32 UnalignedLVecBase4d::operator == 0 1 963 0
85
inline bool UnalignedLVecBase4d::operator ==(UnalignedLVecBase4d const &other) const;
2797 11 operator != 0 4 3558 32 UnalignedLVecBase4d::operator != 0 1 964 0
85
inline bool UnalignedLVecBase4d::operator !=(UnalignedLVecBase4d const &other) const;
2798 14 get_class_type 0 4 3558 35 UnalignedLVecBase4d::get_class_type 0 1 965 0
60
static TypeHandle UnalignedLVecBase4d::get_class_type(void);
2799 20 ~UnalignedLVecBase4d 0 4 3558 41 UnalignedLVecBase4d::~UnalignedLVecBase4d 0 0 0
48
UnalignedLVecBase4d::~UnalignedLVecBase4d(void);
2800 10 LVecBase4i 0 4 3560 22 LVecBase4i::LVecBase4i 0 8 966 967 968 969 970 971 972 973 219
/**
*
*/
/**
*
*/
/**
*
*/
/**
*
*/
/**
* Constructs an LVecBase4 from an LPoint3. The w coordinate is set to 1.0.
*/
/**
* Constructs an LVecBase4 from an LVector3. The w coordinate is set to 0.0.
*/
449
inline LVecBase4i::LVecBase4i(void) = default;
inline LVecBase4i::LVecBase4i(int fill_value);
inline LVecBase4i::LVecBase4i(int x, int y, int z, int w);
inline LVecBase4i::LVecBase4i(UnalignedLVecBase4i const &copy);
inline LVecBase4i::LVecBase4i(LVecBase3i const &copy, int w);
inline LVecBase4i::LVecBase4i(LPoint3i const &point);
inline LVecBase4i::LVecBase4i(LVector3i const &vector);
inline LVecBase4i::LVecBase4i(LVecBase4i const &) = default;
2801 12 operator new 0 4 3560 24 LVecBase4i::operator new 0 1 974 0
124
inline void *LVecBase4i::operator new(std::size_t size);
inline void *LVecBase4i::operator new(std::size_t size, void *ptr);
2802 15 operator delete 0 4 3560 27 LVecBase4i::operator delete 0 0 0
108
inline void LVecBase4i::operator delete(void *ptr);
inline void LVecBase4i::operator delete(void *, void *);
2803 12 validate_ptr 0 4 3560 24 LVecBase4i::validate_ptr 0 0 0
61
static inline bool LVecBase4i::validate_ptr(void const *ptr);
2804 10 operator = 0 4 3560 22 LVecBase4i::operator = 0 2 975 976 0
117
void LVecBase4i::operator =(LVecBase4i const &copy) = default;
void LVecBase4i::operator =(int fill_value) = default;
2805 4 zero 0 4 3560 16 LVecBase4i::zero 0 1 977 40
/**
* Returns a zero-length vector.
*/
55
static inline LVecBase4i const &LVecBase4i::zero(void);
2806 6 unit_x 0 4 3560 18 LVecBase4i::unit_x 0 1 978 35
/**
* Returns a unit X vector.
*/
57
static inline LVecBase4i const &LVecBase4i::unit_x(void);
2807 6 unit_y 0 4 3560 18 LVecBase4i::unit_y 0 1 979 35
/**
* Returns a unit Y vector.
*/
57
static inline LVecBase4i const &LVecBase4i::unit_y(void);
2808 6 unit_z 0 4 3560 18 LVecBase4i::unit_z 0 1 980 35
/**
* Returns a unit Z vector.
*/
57
static inline LVecBase4i const &LVecBase4i::unit_z(void);
2809 6 unit_w 0 4 3560 18 LVecBase4i::unit_w 0 1 981 35
/**
* Returns a unit W vector.
*/
57
static inline LVecBase4i const &LVecBase4i::unit_w(void);
2810 10 __reduce__ 0 4 3560 22 LVecBase4i::__reduce__ 0 1 982 0
62
inline PyObject *LVecBase4i::__reduce__(PyObject *self) const;
2811 11 __getattr__ 0 4 3560 23 LVecBase4i::__getattr__ 0 1 983 0
93
inline PyObject *LVecBase4i::__getattr__(PyObject *self, std::string const &attr_name) const;
2812 11 __setattr__ 0 4 3560 23 LVecBase4i::__setattr__ 0 1 984 0
99
inline int LVecBase4i::__setattr__(PyObject *self, std::string const &attr_name, PyObject *assign);
2813 11 operator [] 0 4 3560 23 LVecBase4i::operator [] 0 2 985 986 10
/**
*
*/
92
inline int LVecBase4i::operator [](int i) const;
inline int &LVecBase4i::operator [](int i);
2814 4 size 0 4 3560 16 LVecBase4i::size 0 1 987 0
44
static constexpr int LVecBase4i::size(void);
2815 6 is_nan 0 4 3560 18 LVecBase4i::is_nan 0 1 988 91
/**
* Returns true if any component of the vector is not-a-number, false
* otherwise.
*/
43
inline bool LVecBase4i::is_nan(void) const;
2816 8 get_cell 0 4 3560 20 LVecBase4i::get_cell 0 1 989 10
/**
*
*/
45
inline int LVecBase4i::get_cell(int i) const;
2817 8 set_cell 0 4 3560 20 LVecBase4i::set_cell 0 1 990 10
/**
*
*/
51
inline void LVecBase4i::set_cell(int i, int value);
2818 5 get_x 0 4 3560 17 LVecBase4i::get_x 0 1 991 10
/**
*
*/
41
inline int LVecBase4i::get_x(void) const;
2819 5 get_y 0 4 3560 17 LVecBase4i::get_y 0 1 992 10
/**
*
*/
41
inline int LVecBase4i::get_y(void) const;
2820 5 get_z 0 4 3560 17 LVecBase4i::get_z 0 1 993 10
/**
*
*/
41
inline int LVecBase4i::get_z(void) const;
2821 5 get_w 0 4 3560 17 LVecBase4i::get_w 0 1 994 10
/**
*
*/
41
inline int LVecBase4i::get_w(void) const;
2822 7 get_xyz 0 4 3560 19 LVecBase4i::get_xyz 0 1 995 58
/**
* Returns the x, y and z component of this vector
*/
50
inline LVecBase3i LVecBase4i::get_xyz(void) const;
2823 6 get_xy 0 4 3560 18 LVecBase4i::get_xy 0 1 996 55
/**
* Returns the x and y component of this vector
*/
49
inline LVecBase2i LVecBase4i::get_xy(void) const;
2824 5 set_x 0 4 3560 17 LVecBase4i::set_x 0 1 997 10
/**
*
*/
41
inline void LVecBase4i::set_x(int value);
2825 5 set_y 0 4 3560 17 LVecBase4i::set_y 0 1 998 10
/**
*
*/
41
inline void LVecBase4i::set_y(int value);
2826 5 set_z 0 4 3560 17 LVecBase4i::set_z 0 1 999 10
/**
*
*/
41
inline void LVecBase4i::set_z(int value);
2827 5 set_w 0 4 3560 17 LVecBase4i::set_w 0 1 1000 10
/**
*
*/
41
inline void LVecBase4i::set_w(int value);
2828 11 add_to_cell 0 4 3560 23 LVecBase4i::add_to_cell 0 1 1001 164
// These next functions add to an existing value. i.e.
// foo.set_x(foo.get_x() + value) These are useful to reduce overhead in
// scripting languages:
/**
*
*/
54
inline void LVecBase4i::add_to_cell(int i, int value);
2829 5 add_x 0 4 3560 17 LVecBase4i::add_x 0 1 1002 10
/**
*
*/
41
inline void LVecBase4i::add_x(int value);
2830 5 add_y 0 4 3560 17 LVecBase4i::add_y 0 1 1003 10
/**
*
*/
41
inline void LVecBase4i::add_y(int value);
2831 5 add_z 0 4 3560 17 LVecBase4i::add_z 0 1 1004 10
/**
*
*/
41
inline void LVecBase4i::add_z(int value);
2832 5 add_w 0 4 3560 17 LVecBase4i::add_w 0 1 1005 10
/**
*
*/
41
inline void LVecBase4i::add_w(int value);
2833 8 get_data 0 4 3560 20 LVecBase4i::get_data 0 1 1006 161
/**
* Returns the address of the first of the four data elements in the vector.
* The remaining elements occupy the next positions consecutively in memory.
*/
51
inline int const *LVecBase4i::get_data(void) const;
2834 18 get_num_components 0 4 3560 30 LVecBase4i::get_num_components 0 1 1007 0
58
static constexpr int LVecBase4i::get_num_components(void);
2835 12 extract_data 0 4 3560 24 LVecBase4i::extract_data 0 0 0
46
inline void LVecBase4i::extract_data(float *);
2836 4 fill 0 4 3560 16 LVecBase4i::fill 0 1 1008 129
/**
* Sets each element of the vector to the indicated fill_value. This is
* particularly useful for initializing to zero.
*/
45
inline void LVecBase4i::fill(int fill_value);
2837 3 set 0 4 3560 15 LVecBase4i::set 0 1 1009 10
/**
*
*/
56
inline void LVecBase4i::set(int x, int y, int z, int w);
2838 3 dot 0 4 3560 15 LVecBase4i::dot 0 1 1010 10
/**
*
*/
58
inline int LVecBase4i::dot(LVecBase4i const &other) const;
2839 14 length_squared 0 4 3560 26 LVecBase4i::length_squared 0 1 1011 69
/**
* Returns the square of the vector's length, cheap and easy.
*/
50
inline int LVecBase4i::length_squared(void) const;
2840 10 operator < 0 4 3560 22 LVecBase4i::operator < 0 1 1012 0
66
inline bool LVecBase4i::operator <(LVecBase4i const &other) const;
2841 11 operator == 0 4 3560 23 LVecBase4i::operator == 0 1 1013 0
67
inline bool LVecBase4i::operator ==(LVecBase4i const &other) const;
2842 11 operator != 0 4 3560 23 LVecBase4i::operator != 0 1 1014 0
67
inline bool LVecBase4i::operator !=(LVecBase4i const &other) const;
2843 10 compare_to 0 4 3560 22 LVecBase4i::compare_to 0 1 1015 97
/**
* This flavor of compare_to uses a default threshold value based on the
* numeric type.
*/
65
inline int LVecBase4i::compare_to(LVecBase4i const &other) const;
2844 8 get_hash 0 4 3560 20 LVecBase4i::get_hash 0 1 1016 49
/**
* Returns a suitable hash for phash_map.
*/
52
inline std::size_t LVecBase4i::get_hash(void) const;
2845 8 add_hash 0 4 3560 20 LVecBase4i::add_hash 0 1 1017 49
/**
* Adds the vector into the running hash.
*/
64
inline std::size_t LVecBase4i::add_hash(std::size_t hash) const;
2846 13 generate_hash 0 4 3560 25 LVecBase4i::generate_hash 0 1 1018 59
/**
* Adds the vector to the indicated hash generator.
*/
76
inline void LVecBase4i::generate_hash(ChecksumHashGenerator &hashgen) const;
2847 10 operator - 0 68 3560 22 LVecBase4i::operator - 0 1 1019 0
53
inline LVecBase4i LVecBase4i::operator -(void) const;
2848 10 operator + 0 4 3560 22 LVecBase4i::operator + 0 1 1020 0
72
inline LVecBase4i LVecBase4i::operator +(LVecBase4i const &other) const;
2849 10 operator - 0 4 3560 22 LVecBase4i::operator - 0 1 1021 0
72
inline LVecBase4i LVecBase4i::operator -(LVecBase4i const &other) const;
2850 10 operator * 0 4 3560 22 LVecBase4i::operator * 0 1 1022 0
59
inline LVecBase4i LVecBase4i::operator *(int scalar) const;
2851 10 operator / 0 4 3560 22 LVecBase4i::operator / 0 1 1023 0
59
inline LVecBase4i LVecBase4i::operator /(int scalar) const;
2852 11 operator += 0 4 3560 23 LVecBase4i::operator += 0 1 1024 0
61
inline void LVecBase4i::operator +=(LVecBase4i const &other);
2853 11 operator -= 0 4 3560 23 LVecBase4i::operator -= 0 1 1025 0
61
inline void LVecBase4i::operator -=(LVecBase4i const &other);
2854 11 operator *= 0 4 3560 23 LVecBase4i::operator *= 0 1 1026 0
48
inline void LVecBase4i::operator *=(int scalar);
2855 11 operator /= 0 4 3560 23 LVecBase4i::operator /= 0 1 1027 0
48
inline void LVecBase4i::operator /=(int scalar);
2856 18 componentwise_mult 0 4 3560 30 LVecBase4i::componentwise_mult 0 1 1028 10
/**
*
*/
68
inline void LVecBase4i::componentwise_mult(LVecBase4i const &other);
2857 7 __pow__ 0 4 3560 19 LVecBase4i::__pow__ 0 1 1029 0
58
inline LVecBase4i LVecBase4i::__pow__(int exponent) const;
2858 8 __ipow__ 0 4 3560 20 LVecBase4i::__ipow__ 0 1 1030 0
68
inline PyObject *LVecBase4i::__ipow__(PyObject *self, int exponent);
2859 4 fmax 0 4 3560 16 LVecBase4i::fmax 0 1 1031 10
/**
*
*/
66
inline LVecBase4i LVecBase4i::fmax(LVecBase4i const &other) const;
2860 4 fmin 0 4 3560 16 LVecBase4i::fmin 0 1 1032 10
/**
*
*/
66
inline LVecBase4i LVecBase4i::fmin(LVecBase4i const &other) const;
2861 12 almost_equal 0 4 3560 24 LVecBase4i::almost_equal 0 2 1033 1034 210
/**
* Returns true if two vectors are memberwise equal within a specified
* tolerance.
*/
/**
* Returns true if two vectors are memberwise equal within a default tolerance
* based on the numeric type.
*/
152
inline bool LVecBase4i::almost_equal(LVecBase4i const &other, int threshold) const;
inline bool LVecBase4i::almost_equal(LVecBase4i const &other) const;
2862 6 output 0 4 3560 18 LVecBase4i::output 0 1 1035 10
/**
*
*/
56
inline void LVecBase4i::output(std::ostream &out) const;
2863 8 __repr__ 0 4 3560 20 LVecBase4i::__repr__ 0 1 1036 0
52
inline std::string LVecBase4i::__repr__(void) const;
2864 20 write_datagram_fixed 0 4 3560 32 LVecBase4i::write_datagram_fixed 0 1 1037 332
/**
* 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 appropriate when you want to
* write a fixed-width value to the datagram, especially when you are not
* writing a bam file.
*/
74
inline void LVecBase4i::write_datagram_fixed(Datagram &destination) const;
2865 19 read_datagram_fixed 0 4 3560 31 LVecBase4i::read_datagram_fixed 0 1 1038 114
/**
* Reads the vector from the Datagram using get_float32() or get_float64().
* See write_datagram_fixed().
*/
70
inline void LVecBase4i::read_datagram_fixed(DatagramIterator &source);
2866 14 write_datagram 0 4 3560 26 LVecBase4i::write_datagram 0 1 1039 205
/**
* Writes the vector to the Datagram using add_stdfloat(). This is
* appropriate when you want to write the vector using the standard width
* setting, especially when you are writing a bam file.
*/
68
inline void LVecBase4i::write_datagram(Datagram &destination) const;
2867 13 read_datagram 0 4 3560 25 LVecBase4i::read_datagram 0 1 1040 67
/**
* Reads the vector from the Datagram using get_stdfloat().
*/
64
inline void LVecBase4i::read_datagram(DatagramIterator &source);
2868 14 get_class_type 0 4 3560 26 LVecBase4i::get_class_type 0 1 1041 0
51
static TypeHandle LVecBase4i::get_class_type(void);
2869 11 ~LVecBase4i 0 4 3560 23 LVecBase4i::~LVecBase4i 0 0 0
30
LVecBase4i::~LVecBase4i(void);
2870 19 UnalignedLVecBase4i 0 4 3562 40 UnalignedLVecBase4i::UnalignedLVecBase4i 0 5 1042 1043 1044 1045 1046 34
/**
*
*/
/**
*
*/
/**
*
*/
367
inline UnalignedLVecBase4i::UnalignedLVecBase4i(void) = default;
inline UnalignedLVecBase4i::UnalignedLVecBase4i(LVecBase4i const &copy);
inline UnalignedLVecBase4i::UnalignedLVecBase4i(int fill_value);
inline UnalignedLVecBase4i::UnalignedLVecBase4i(int x, int y, int z, int w);
inline UnalignedLVecBase4i::UnalignedLVecBase4i(UnalignedLVecBase4i const &) = default;
2871 4 fill 0 4 3562 25 UnalignedLVecBase4i::fill 0 1 1047 129
/**
* Sets each element of the vector to the indicated fill_value. This is
* particularly useful for initializing to zero.
*/
54
inline void UnalignedLVecBase4i::fill(int fill_value);
2872 3 set 0 4 3562 24 UnalignedLVecBase4i::set 0 1 1048 10
/**
*
*/
65
inline void UnalignedLVecBase4i::set(int x, int y, int z, int w);
2873 11 operator [] 0 4 3562 32 UnalignedLVecBase4i::operator [] 0 2 1049 1050 10
/**
*
*/
110
inline int UnalignedLVecBase4i::operator [](int i) const;
inline int &UnalignedLVecBase4i::operator [](int i);
2874 4 size 0 4 3562 25 UnalignedLVecBase4i::size 0 1 1051 0
53
static constexpr int UnalignedLVecBase4i::size(void);
2875 8 get_data 0 4 3562 29 UnalignedLVecBase4i::get_data 0 1 1052 162
/**
* Returns the address of the first of the three data elements in the vector.
* The remaining elements occupy the next positions consecutively in memory.
*/
60
inline int const *UnalignedLVecBase4i::get_data(void) const;
2876 18 get_num_components 0 4 3562 39 UnalignedLVecBase4i::get_num_components 0 1 1053 0
67
static constexpr int UnalignedLVecBase4i::get_num_components(void);
2877 11 operator == 0 4 3562 32 UnalignedLVecBase4i::operator == 0 1 1054 0
85
inline bool UnalignedLVecBase4i::operator ==(UnalignedLVecBase4i const &other) const;
2878 11 operator != 0 4 3562 32 UnalignedLVecBase4i::operator != 0 1 1055 0
85
inline bool UnalignedLVecBase4i::operator !=(UnalignedLVecBase4i const &other) const;
2879 14 get_class_type 0 4 3562 35 UnalignedLVecBase4i::get_class_type 0 1 1056 0
60
static TypeHandle UnalignedLVecBase4i::get_class_type(void);
2880 20 ~UnalignedLVecBase4i 0 4 3562 41 UnalignedLVecBase4i::~UnalignedLVecBase4i 0 0 0
48
UnalignedLVecBase4i::~UnalignedLVecBase4i(void);
2881 9 LVector4f 0 4 3564 20 LVector4f::LVector4f 0 6 1057 1058 1059 1060 1061 1062 46
/**
*
*/
/**
*
*/
/**
*
*/
/**
*
*/
329
inline LVector4f::LVector4f(void) = default;
inline LVector4f::LVector4f(LVecBase4f const &copy);
inline LVector4f::LVector4f(float fill_value);
inline LVector4f::LVector4f(float x, float y, float z, float w);
inline LVector4f::LVector4f(LVecBase3f const &copy, float w);
inline LVector4f::LVector4f(LVector4f const &) = default;
2882 11 __getattr__ 0 4 3564 22 LVector4f::__getattr__ 0 1 1063 0
92
inline PyObject *LVector4f::__getattr__(PyObject *self, std::string const &attr_name) const;
2883 11 __setattr__ 0 4 3564 22 LVector4f::__setattr__ 0 1 1064 0
98
inline int LVector4f::__setattr__(PyObject *self, std::string const &attr_name, PyObject *assign);
2884 4 zero 0 4 3564 15 LVector4f::zero 0 1 1065 40
/**
* Returns a zero-length vector.
*/
53
static inline LVector4f const &LVector4f::zero(void);
2885 6 unit_x 0 4 3564 17 LVector4f::unit_x 0 1 1066 35
/**
* Returns a unit X vector.
*/
55
static inline LVector4f const &LVector4f::unit_x(void);
2886 6 unit_y 0 4 3564 17 LVector4f::unit_y 0 1 1067 35
/**
* Returns a unit Y vector.
*/
55
static inline LVector4f const &LVector4f::unit_y(void);
2887 6 unit_z 0 4 3564 17 LVector4f::unit_z 0 1 1068 35
/**
* Returns a unit Z vector.
*/
55
static inline LVector4f const &LVector4f::unit_z(void);
2888 6 unit_w 0 4 3564 17 LVector4f::unit_w 0 1 1069 35
/**
* Returns a unit W vector.
*/
55
static inline LVector4f const &LVector4f::unit_w(void);
2889 7 get_xyz 0 4 3564 18 LVector4f::get_xyz 0 1 1070 58
/**
* Returns the x, y and z component of this vector
*/
48
inline LVector3f LVector4f::get_xyz(void) const;
2890 6 get_xy 0 4 3564 17 LVector4f::get_xy 0 1 1071 55
/**
* Returns the x and y component of this vector
*/
47
inline LVector2f LVector4f::get_xy(void) const;
2891 10 operator - 0 68 3564 21 LVector4f::operator - 0 1 1072 0
51
inline LVector4f LVector4f::operator -(void) const;
2892 10 operator + 0 4 3564 21 LVector4f::operator + 0 2 1073 1074 0
141
inline LVecBase4f LVector4f::operator +(LVecBase4f const &other) const;
inline LVector4f LVector4f::operator +(LVector4f const &other) const;
2893 10 operator - 0 4 3564 21 LVector4f::operator - 0 2 1075 1076 0
141
inline LVecBase4f LVector4f::operator -(LVecBase4f const &other) const;
inline LVector4f LVector4f::operator -(LVector4f const &other) const;
2894 10 operator * 0 4 3564 21 LVector4f::operator * 0 1 1077 0
59
inline LVector4f LVector4f::operator *(float scalar) const;
2895 10 operator / 0 4 3564 21 LVector4f::operator / 0 1 1078 0
59
inline LVector4f LVector4f::operator /(float scalar) const;
2896 10 normalized 0 4 3564 21 LVector4f::normalized 0 1 1079 160
/**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/
51
inline LVector4f LVector4f::normalized(void) const;
2897 7 project 0 4 3564 18 LVector4f::project 0 1 1080 152
/**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/
66
inline LVector4f LVector4f::project(LVecBase4f const &onto) const;
2898 8 __repr__ 0 4 3564 19 LVector4f::__repr__ 0 1 1081 0
51
inline std::string LVector4f::__repr__(void) const;
2899 14 get_class_type 0 4 3564 25 LVector4f::get_class_type 0 1 1082 0
50
static TypeHandle LVector4f::get_class_type(void);
2900 10 ~LVector4f 0 4 3564 21 LVector4f::~LVector4f 0 0 0
28
LVector4f::~LVector4f(void);
2901 9 LVector4d 0 4 3565 20 LVector4d::LVector4d 0 6 1083 1084 1085 1086 1087 1088 46
/**
*
*/
/**
*
*/
/**
*
*/
/**
*
*/
335
inline LVector4d::LVector4d(void) = default;
inline LVector4d::LVector4d(LVecBase4d const &copy);
inline LVector4d::LVector4d(double fill_value);
inline LVector4d::LVector4d(double x, double y, double z, double w);
inline LVector4d::LVector4d(LVecBase3d const &copy, double w);
inline LVector4d::LVector4d(LVector4d const &) = default;
2902 11 __getattr__ 0 4 3565 22 LVector4d::__getattr__ 0 1 1089 0
92
inline PyObject *LVector4d::__getattr__(PyObject *self, std::string const &attr_name) const;
2903 11 __setattr__ 0 4 3565 22 LVector4d::__setattr__ 0 1 1090 0
98
inline int LVector4d::__setattr__(PyObject *self, std::string const &attr_name, PyObject *assign);
2904 4 zero 0 4 3565 15 LVector4d::zero 0 1 1091 40
/**
* Returns a zero-length vector.
*/
53
static inline LVector4d const &LVector4d::zero(void);
2905 6 unit_x 0 4 3565 17 LVector4d::unit_x 0 1 1092 35
/**
* Returns a unit X vector.
*/
55
static inline LVector4d const &LVector4d::unit_x(void);
2906 6 unit_y 0 4 3565 17 LVector4d::unit_y 0 1 1093 35
/**
* Returns a unit Y vector.
*/
55
static inline LVector4d const &LVector4d::unit_y(void);
2907 6 unit_z 0 4 3565 17 LVector4d::unit_z 0 1 1094 35
/**
* Returns a unit Z vector.
*/
55
static inline LVector4d const &LVector4d::unit_z(void);
2908 6 unit_w 0 4 3565 17 LVector4d::unit_w 0 1 1095 35
/**
* Returns a unit W vector.
*/
55
static inline LVector4d const &LVector4d::unit_w(void);
2909 7 get_xyz 0 4 3565 18 LVector4d::get_xyz 0 1 1096 58
/**
* Returns the x, y and z component of this vector
*/
48
inline LVector3d LVector4d::get_xyz(void) const;
2910 6 get_xy 0 4 3565 17 LVector4d::get_xy 0 1 1097 55
/**
* Returns the x and y component of this vector
*/
47
inline LVector2d LVector4d::get_xy(void) const;
2911 10 operator - 0 68 3565 21 LVector4d::operator - 0 1 1098 0
51
inline LVector4d LVector4d::operator -(void) const;
2912 10 operator + 0 4 3565 21 LVector4d::operator + 0 2 1099 1100 0
141
inline LVecBase4d LVector4d::operator +(LVecBase4d const &other) const;
inline LVector4d LVector4d::operator +(LVector4d const &other) const;
2913 10 operator - 0 4 3565 21 LVector4d::operator - 0 2 1101 1102 0
141
inline LVecBase4d LVector4d::operator -(LVecBase4d const &other) const;
inline LVector4d LVector4d::operator -(LVector4d const &other) const;
2914 10 operator * 0 4 3565 21 LVector4d::operator * 0 1 1103 0
60
inline LVector4d LVector4d::operator *(double scalar) const;
2915 10 operator / 0 4 3565 21 LVector4d::operator / 0 1 1104 0
60
inline LVector4d LVector4d::operator /(double scalar) const;
2916 10 normalized 0 4 3565 21 LVector4d::normalized 0 1 1105 160
/**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/
51
inline LVector4d LVector4d::normalized(void) const;
2917 7 project 0 4 3565 18 LVector4d::project 0 1 1106 152
/**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/
66
inline LVector4d LVector4d::project(LVecBase4d const &onto) const;
2918 8 __repr__ 0 4 3565 19 LVector4d::__repr__ 0 1 1107 0
51
inline std::string LVector4d::__repr__(void) const;
2919 14 get_class_type 0 4 3565 25 LVector4d::get_class_type 0 1 1108 0
50
static TypeHandle LVector4d::get_class_type(void);
2920 10 ~LVector4d 0 4 3565 21 LVector4d::~LVector4d 0 0 0
28
LVector4d::~LVector4d(void);
2921 9 LVector4i 0 4 3566 20 LVector4i::LVector4i 0 6 1109 1110 1111 1112 1113 1114 46
/**
*
*/
/**
*
*/
/**
*
*/
/**
*
*/
317
inline LVector4i::LVector4i(void) = default;
inline LVector4i::LVector4i(LVecBase4i const &copy);
inline LVector4i::LVector4i(int fill_value);
inline LVector4i::LVector4i(int x, int y, int z, int w);
inline LVector4i::LVector4i(LVecBase3i const &copy, int w);
inline LVector4i::LVector4i(LVector4i const &) = default;
2922 11 __getattr__ 0 4 3566 22 LVector4i::__getattr__ 0 1 1115 0
92
inline PyObject *LVector4i::__getattr__(PyObject *self, std::string const &attr_name) const;
2923 11 __setattr__ 0 4 3566 22 LVector4i::__setattr__ 0 1 1116 0
98
inline int LVector4i::__setattr__(PyObject *self, std::string const &attr_name, PyObject *assign);
2924 4 zero 0 4 3566 15 LVector4i::zero 0 1 1117 40
/**
* Returns a zero-length vector.
*/
53
static inline LVector4i const &LVector4i::zero(void);
2925 6 unit_x 0 4 3566 17 LVector4i::unit_x 0 1 1118 35
/**
* Returns a unit X vector.
*/
55
static inline LVector4i const &LVector4i::unit_x(void);
2926 6 unit_y 0 4 3566 17 LVector4i::unit_y 0 1 1119 35
/**
* Returns a unit Y vector.
*/
55
static inline LVector4i const &LVector4i::unit_y(void);
2927 6 unit_z 0 4 3566 17 LVector4i::unit_z 0 1 1120 35
/**
* Returns a unit Z vector.
*/
55
static inline LVector4i const &LVector4i::unit_z(void);
2928 6 unit_w 0 4 3566 17 LVector4i::unit_w 0 1 1121 35
/**
* Returns a unit W vector.
*/
55
static inline LVector4i const &LVector4i::unit_w(void);
2929 7 get_xyz 0 4 3566 18 LVector4i::get_xyz 0 1 1122 58
/**
* Returns the x, y and z component of this vector
*/
48
inline LVector3i LVector4i::get_xyz(void) const;
2930 6 get_xy 0 4 3566 17 LVector4i::get_xy 0 1 1123 55
/**
* Returns the x and y component of this vector
*/
47
inline LVector2i LVector4i::get_xy(void) const;
2931 10 operator - 0 68 3566 21 LVector4i::operator - 0 1 1124 0
51
inline LVector4i LVector4i::operator -(void) const;
2932 10 operator + 0 4 3566 21 LVector4i::operator + 0 2 1125 1126 0
141
inline LVecBase4i LVector4i::operator +(LVecBase4i const &other) const;
inline LVector4i LVector4i::operator +(LVector4i const &other) const;
2933 10 operator - 0 4 3566 21 LVector4i::operator - 0 2 1127 1128 0
141
inline LVecBase4i LVector4i::operator -(LVecBase4i const &other) const;
inline LVector4i LVector4i::operator -(LVector4i const &other) const;
2934 10 operator * 0 4 3566 21 LVector4i::operator * 0 1 1129 0
57
inline LVector4i LVector4i::operator *(int scalar) const;
2935 10 operator / 0 4 3566 21 LVector4i::operator / 0 1 1130 0
57
inline LVector4i LVector4i::operator /(int scalar) const;
2936 8 __repr__ 0 4 3566 19 LVector4i::__repr__ 0 1 1131 0
51
inline std::string LVector4i::__repr__(void) const;
2937 14 get_class_type 0 4 3566 25 LVector4i::get_class_type 0 1 1132 0
50
static TypeHandle LVector4i::get_class_type(void);
2938 10 ~LVector4i 0 4 3566 21 LVector4i::~LVector4i 0 0 0
28
LVector4i::~LVector4i(void);
2939 8 LPoint4f 0 4 3567 18 LPoint4f::LPoint4f 0 6 1133 1134 1135 1136 1137 1138 46
/**
*
*/
/**
*
*/
/**
*
*/
/**
*
*/
316
inline LPoint4f::LPoint4f(void) = default;
inline LPoint4f::LPoint4f(LVecBase4f const &copy);
inline LPoint4f::LPoint4f(float fill_value);
inline LPoint4f::LPoint4f(float x, float y, float z, float w);
inline LPoint4f::LPoint4f(LVecBase3f const &copy, float w);
inline LPoint4f::LPoint4f(LPoint4f const &) = default;
2940 11 __getattr__ 0 4 3567 21 LPoint4f::__getattr__ 0 1 1139 0
91
inline PyObject *LPoint4f::__getattr__(PyObject *self, std::string const &attr_name) const;
2941 11 __setattr__ 0 4 3567 21 LPoint4f::__setattr__ 0 1 1140 0
97
inline int LPoint4f::__setattr__(PyObject *self, std::string const &attr_name, PyObject *assign);
2942 4 zero 0 4 3567 14 LPoint4f::zero 0 1 1141 39
/**
* Returns a zero-length point.
*/
51
static inline LPoint4f const &LPoint4f::zero(void);
2943 6 unit_x 0 4 3567 16 LPoint4f::unit_x 0 1 1142 34
/**
* Returns a unit X point.
*/
53
static inline LPoint4f const &LPoint4f::unit_x(void);
2944 6 unit_y 0 4 3567 16 LPoint4f::unit_y 0 1 1143 34
/**
* Returns a unit Y point.
*/
53
static inline LPoint4f const &LPoint4f::unit_y(void);
2945 6 unit_z 0 4 3567 16 LPoint4f::unit_z 0 1 1144 34
/**
* Returns a unit Z point.
*/
53
static inline LPoint4f const &LPoint4f::unit_z(void);
2946 6 unit_w 0 4 3567 16 LPoint4f::unit_w 0 1 1145 34
/**
* Returns a unit W point.
*/
53
static inline LPoint4f const &LPoint4f::unit_w(void);
2947 7 get_xyz 0 4 3567 17 LPoint4f::get_xyz 0 1 1146 58
/**
* Returns the x, y and z component of this vector
*/
46
inline LPoint3f LPoint4f::get_xyz(void) const;
2948 6 get_xy 0 4 3567 16 LPoint4f::get_xy 0 1 1147 55
/**
* Returns the x and y component of this vector
*/
45
inline LPoint2f LPoint4f::get_xy(void) const;
2949 10 operator - 0 68 3567 20 LPoint4f::operator - 0 1 1148 0
49
inline LPoint4f LPoint4f::operator -(void) const;
2950 10 operator + 0 4 3567 20 LPoint4f::operator + 0 2 1149 1150 0
138
inline LVecBase4f LPoint4f::operator +(LVecBase4f const &other) const;
inline LPoint4f LPoint4f::operator +(LVector4f const &other) const;
2951 10 operator - 0 4 3567 20 LPoint4f::operator - 0 3 1151 1152 1153 0
206
inline LVecBase4f LPoint4f::operator -(LVecBase4f const &other) const;
inline LVector4f LPoint4f::operator -(LPoint4f const &other) const;
inline LPoint4f LPoint4f::operator -(LVector4f const &other) const;
2952 10 operator * 0 4 3567 20 LPoint4f::operator * 0 1 1154 0
57
inline LPoint4f LPoint4f::operator *(float scalar) const;
2953 10 operator / 0 4 3567 20 LPoint4f::operator / 0 1 1155 0
57
inline LPoint4f LPoint4f::operator /(float scalar) const;
2954 10 normalized 0 4 3567 20 LPoint4f::normalized 0 1 1156 160
/**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/
49
inline LPoint4f LPoint4f::normalized(void) const;
2955 7 project 0 4 3567 17 LPoint4f::project 0 1 1157 152
/**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/
64
inline LPoint4f LPoint4f::project(LVecBase4f const &onto) const;
2956 8 __repr__ 0 4 3567 18 LPoint4f::__repr__ 0 1 1158 0
50
inline std::string LPoint4f::__repr__(void) const;
2957 14 get_class_type 0 4 3567 24 LPoint4f::get_class_type 0 1 1159 0
49
static TypeHandle LPoint4f::get_class_type(void);
2958 9 ~LPoint4f 0 4 3567 19 LPoint4f::~LPoint4f 0 0 0
26
LPoint4f::~LPoint4f(void);
2959 8 LPoint4d 0 4 3568 18 LPoint4d::LPoint4d 0 6 1160 1161 1162 1163 1164 1165 46
/**
*
*/
/**
*
*/
/**
*
*/
/**
*
*/
322
inline LPoint4d::LPoint4d(void) = default;
inline LPoint4d::LPoint4d(LVecBase4d const &copy);
inline LPoint4d::LPoint4d(double fill_value);
inline LPoint4d::LPoint4d(double x, double y, double z, double w);
inline LPoint4d::LPoint4d(LVecBase3d const &copy, double w);
inline LPoint4d::LPoint4d(LPoint4d const &) = default;
2960 11 __getattr__ 0 4 3568 21 LPoint4d::__getattr__ 0 1 1166 0
91
inline PyObject *LPoint4d::__getattr__(PyObject *self, std::string const &attr_name) const;
2961 11 __setattr__ 0 4 3568 21 LPoint4d::__setattr__ 0 1 1167 0
97
inline int LPoint4d::__setattr__(PyObject *self, std::string const &attr_name, PyObject *assign);
2962 4 zero 0 4 3568 14 LPoint4d::zero 0 1 1168 39
/**
* Returns a zero-length point.
*/
51
static inline LPoint4d const &LPoint4d::zero(void);
2963 6 unit_x 0 4 3568 16 LPoint4d::unit_x 0 1 1169 34
/**
* Returns a unit X point.
*/
53
static inline LPoint4d const &LPoint4d::unit_x(void);
2964 6 unit_y 0 4 3568 16 LPoint4d::unit_y 0 1 1170 34
/**
* Returns a unit Y point.
*/
53
static inline LPoint4d const &LPoint4d::unit_y(void);
2965 6 unit_z 0 4 3568 16 LPoint4d::unit_z 0 1 1171 34
/**
* Returns a unit Z point.
*/
53
static inline LPoint4d const &LPoint4d::unit_z(void);
2966 6 unit_w 0 4 3568 16 LPoint4d::unit_w 0 1 1172 34
/**
* Returns a unit W point.
*/
53
static inline LPoint4d const &LPoint4d::unit_w(void);
2967 7 get_xyz 0 4 3568 17 LPoint4d::get_xyz 0 1 1173 58
/**
* Returns the x, y and z component of this vector
*/
46
inline LPoint3d LPoint4d::get_xyz(void) const;
2968 6 get_xy 0 4 3568 16 LPoint4d::get_xy 0 1 1174 55
/**
* Returns the x and y component of this vector
*/
45
inline LPoint2d LPoint4d::get_xy(void) const;
2969 10 operator - 0 68 3568 20 LPoint4d::operator - 0 1 1175 0
49
inline LPoint4d LPoint4d::operator -(void) const;
2970 10 operator + 0 4 3568 20 LPoint4d::operator + 0 2 1176 1177 0
138
inline LVecBase4d LPoint4d::operator +(LVecBase4d const &other) const;
inline LPoint4d LPoint4d::operator +(LVector4d const &other) const;
2971 10 operator - 0 4 3568 20 LPoint4d::operator - 0 3 1178 1179 1180 0
206
inline LVecBase4d LPoint4d::operator -(LVecBase4d const &other) const;
inline LVector4d LPoint4d::operator -(LPoint4d const &other) const;
inline LPoint4d LPoint4d::operator -(LVector4d const &other) const;
2972 10 operator * 0 4 3568 20 LPoint4d::operator * 0 1 1181 0
58
inline LPoint4d LPoint4d::operator *(double scalar) const;
2973 10 operator / 0 4 3568 20 LPoint4d::operator / 0 1 1182 0
58
inline LPoint4d LPoint4d::operator /(double scalar) const;
2974 10 normalized 0 4 3568 20 LPoint4d::normalized 0 1 1183 160
/**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/
49
inline LPoint4d LPoint4d::normalized(void) const;
2975 7 project 0 4 3568 17 LPoint4d::project 0 1 1184 152
/**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/
64
inline LPoint4d LPoint4d::project(LVecBase4d const &onto) const;
2976 8 __repr__ 0 4 3568 18 LPoint4d::__repr__ 0 1 1185 0
50
inline std::string LPoint4d::__repr__(void) const;
2977 14 get_class_type 0 4 3568 24 LPoint4d::get_class_type 0 1 1186 0
49
static TypeHandle LPoint4d::get_class_type(void);
2978 9 ~LPoint4d 0 4 3568 19 LPoint4d::~LPoint4d 0 0 0
26
LPoint4d::~LPoint4d(void);
2979 8 LPoint4i 0 4 3569 18 LPoint4i::LPoint4i 0 6 1187 1188 1189 1190 1191 1192 46
/**
*
*/
/**
*
*/
/**
*
*/
/**
*
*/
304
inline LPoint4i::LPoint4i(void) = default;
inline LPoint4i::LPoint4i(LVecBase4i const &copy);
inline LPoint4i::LPoint4i(int fill_value);
inline LPoint4i::LPoint4i(int x, int y, int z, int w);
inline LPoint4i::LPoint4i(LVecBase3i const &copy, int w);
inline LPoint4i::LPoint4i(LPoint4i const &) = default;
2980 11 __getattr__ 0 4 3569 21 LPoint4i::__getattr__ 0 1 1193 0
91
inline PyObject *LPoint4i::__getattr__(PyObject *self, std::string const &attr_name) const;
2981 11 __setattr__ 0 4 3569 21 LPoint4i::__setattr__ 0 1 1194 0
97
inline int LPoint4i::__setattr__(PyObject *self, std::string const &attr_name, PyObject *assign);
2982 4 zero 0 4 3569 14 LPoint4i::zero 0 1 1195 39
/**
* Returns a zero-length point.
*/
51
static inline LPoint4i const &LPoint4i::zero(void);
2983 6 unit_x 0 4 3569 16 LPoint4i::unit_x 0 1 1196 34
/**
* Returns a unit X point.
*/
53
static inline LPoint4i const &LPoint4i::unit_x(void);
2984 6 unit_y 0 4 3569 16 LPoint4i::unit_y 0 1 1197 34
/**
* Returns a unit Y point.
*/
53
static inline LPoint4i const &LPoint4i::unit_y(void);
2985 6 unit_z 0 4 3569 16 LPoint4i::unit_z 0 1 1198 34
/**
* Returns a unit Z point.
*/
53
static inline LPoint4i const &LPoint4i::unit_z(void);
2986 6 unit_w 0 4 3569 16 LPoint4i::unit_w 0 1 1199 34
/**
* Returns a unit W point.
*/
53
static inline LPoint4i const &LPoint4i::unit_w(void);
2987 7 get_xyz 0 4 3569 17 LPoint4i::get_xyz 0 1 1200 58
/**
* Returns the x, y and z component of this vector
*/
46
inline LPoint3i LPoint4i::get_xyz(void) const;
2988 6 get_xy 0 4 3569 16 LPoint4i::get_xy 0 1 1201 55
/**
* Returns the x and y component of this vector
*/
45
inline LPoint2i LPoint4i::get_xy(void) const;
2989 10 operator - 0 68 3569 20 LPoint4i::operator - 0 1 1202 0
49
inline LPoint4i LPoint4i::operator -(void) const;
2990 10 operator + 0 4 3569 20 LPoint4i::operator + 0 2 1203 1204 0
138
inline LVecBase4i LPoint4i::operator +(LVecBase4i const &other) const;
inline LPoint4i LPoint4i::operator +(LVector4i const &other) const;
2991 10 operator - 0 4 3569 20 LPoint4i::operator - 0 3 1205 1206 1207 0
206
inline LVecBase4i LPoint4i::operator -(LVecBase4i const &other) const;
inline LVector4i LPoint4i::operator -(LPoint4i const &other) const;
inline LPoint4i LPoint4i::operator -(LVector4i const &other) const;
2992 10 operator * 0 4 3569 20 LPoint4i::operator * 0 1 1208 0
55
inline LPoint4i LPoint4i::operator *(int scalar) const;
2993 10 operator / 0 4 3569 20 LPoint4i::operator / 0 1 1209 0
55
inline LPoint4i LPoint4i::operator /(int scalar) const;
2994 8 __repr__ 0 4 3569 18 LPoint4i::__repr__ 0 1 1210 0
50
inline std::string LPoint4i::__repr__(void) const;
2995 14 get_class_type 0 4 3569 24 LPoint4i::get_class_type 0 1 1211 0
49
static TypeHandle LPoint4i::get_class_type(void);
2996 9 ~LPoint4i 0 4 3569 19 LPoint4i::~LPoint4i 0 0 0
26
LPoint4i::~LPoint4i(void);
2997 11 operator [] 0 4 3572 27 LMatrix3f::Row::operator [] 0 2 1314 1315 10
/**
*
*/
104
inline float LMatrix3f::Row::operator [](int i) const;
inline float &LMatrix3f::Row::operator [](int i);
2998 4 size 0 4 3572 20 LMatrix3f::Row::size 0 1 1316 58
/**
* Returns 3: the number of columns of a LMatrix3.
*/
45
static inline int LMatrix3f::Row::size(void);
2999 17 operator typecast 0 132 3572 33 LMatrix3f::Row::operator typecast 0 1 1317 0
47
inline operator LVecBase3f const &(void) const;
3000 3 Row 0 4 3572 19 LMatrix3f::Row::Row 0 1 1313 60
/**
* Defines a row-level index accessor to the matrix.
*/
61
inline LMatrix3f::Row::Row(LMatrix3f::Row const &) = default;
3001 4 ~Row 0 4 3572 20 LMatrix3f::Row::~Row 0 0 0
27
LMatrix3f::Row::~Row(void);
3002 11 operator [] 0 4 3573 28 LMatrix3f::CRow::operator [] 0 1 1319 0
55
inline float LMatrix3f::CRow::operator [](int i) const;
3003 4 size 0 4 3573 21 LMatrix3f::CRow::size 0 1 1320 58
/**
* Returns 3: the number of columns of a LMatrix3.
*/
46
static inline int LMatrix3f::CRow::size(void);
3004 17 operator typecast 0 132 3573 34 LMatrix3f::CRow::operator typecast 0 1 1321 0
47
inline operator LVecBase3f const &(void) const;
3005 4 CRow 0 4 3573 21 LMatrix3f::CRow::CRow 0 1 1318 63
/**
* Defines a row-level constant accessor to the matrix.
*/
64
inline LMatrix3f::CRow::CRow(LMatrix3f::CRow const &) = default;
3006 5 ~CRow 0 4 3573 22 LMatrix3f::CRow::~CRow 0 0 0
29
LMatrix3f::CRow::~CRow(void);
3007 9 LMatrix3f 0 4 3570 20 LMatrix3f::LMatrix3f 0 4 1212 1213 1214 1215 96
/**
*
*/
/**
*
*/
/**
*
*/
/**
* Constructs the matrix from three individual rows.
*/
277
inline LMatrix3f::LMatrix3f(void);
inline LMatrix3f::LMatrix3f(LMatrix3f const &other);
inline LMatrix3f::LMatrix3f(float , float , float , float , float , float , float , float , float );
inline LMatrix3f::LMatrix3f(LVecBase3f const &, LVecBase3f const &, LVecBase3f const &);
3008 10 operator = 0 4 3570 21 LMatrix3f::operator = 0 2 1216 1217 22
/**
*
*/
/**
*
*/
111
inline void LMatrix3f::operator =(LMatrix3f const &other);
inline void LMatrix3f::operator =(float fill_value);
3009 12 operator new 0 4 3570 23 LMatrix3f::operator new 0 1 1218 0
122
inline void *LMatrix3f::operator new(std::size_t size);
inline void *LMatrix3f::operator new(std::size_t size, void *ptr);
3010 15 operator delete 0 4 3570 26 LMatrix3f::operator delete 0 0 0
106
inline void LMatrix3f::operator delete(void *ptr);
inline void LMatrix3f::operator delete(void *, void *);
3011 12 validate_ptr 0 4 3570 23 LMatrix3f::validate_ptr 0 0 0
60
static inline bool LMatrix3f::validate_ptr(void const *ptr);
3012 10 __reduce__ 0 4 3570 21 LMatrix3f::__reduce__ 0 1 1219 0
61
inline PyObject *LMatrix3f::__reduce__(PyObject *self) const;
3013 4 fill 0 4 3570 15 LMatrix3f::fill 0 1 1220 157
/**
* Sets each element of the matrix to the indicated fill_value. This is of
* questionable value, but is sometimes useful when initializing to zero.
*/
39
void LMatrix3f::fill(float fill_value);
3014 3 set 0 4 3570 14 LMatrix3f::set 0 1 1221 10
/**
*
*/
126
inline void LMatrix3f::set(float e00, float e01, float e02, float e10, float e11, float e12, float e20, float e21, float e22);
3015 11 operator [] 0 4 3570 22 LMatrix3f::operator [] 0 2 1222 1223 0
112
inline LMatrix3f::CRow LMatrix3f::operator [](int i) const;
inline LMatrix3f::Row LMatrix3f::operator [](int i);
3016 4 size 0 4 3570 15 LMatrix3f::size 0 1 1224 55
/**
* Returns 3: the number of rows of a LMatrix3.
*/
40
static inline int LMatrix3f::size(void);
3017 7 set_row 0 4 3570 18 LMatrix3f::set_row 0 2 1225 1226 193
/**
* Replaces the indicated row of the matrix from a three-component vector.
*/
/**
* Replaces the indicated row of the matrix from a two-component vector,
* ignoring the last column.
*/
123
inline void LMatrix3f::set_row(int row, LVecBase3f const &v);
inline void LMatrix3f::set_row(int row, LVecBase2f const &v);
3018 7 set_col 0 4 3570 18 LMatrix3f::set_col 0 2 1227 1228 196
/**
* Replaces the indicated column of the matrix from a three-component vector.
*/
/**
* Replaces the indicated column of the matrix from a two-component vector,
* ignoring the last row.
*/
123
inline void LMatrix3f::set_col(int col, LVecBase3f const &v);
inline void LMatrix3f::set_col(int col, LVecBase2f const &v);
3019 7 get_row 0 4 3570 18 LMatrix3f::get_row 0 2 1229 1230 192
// these versions inline better
/**
* Returns the indicated row of the matrix as a three-component vector.
*/
/**
* Stores the indicated row of the matrix as a three-component vector.
*/
123
inline LVecBase3f LMatrix3f::get_row(int row) const;
inline void LMatrix3f::get_row(LVecBase3f &result_vec, int row) const;
3020 7 get_col 0 4 3570 18 LMatrix3f::get_col 0 1 1231 82
/**
* Returns the indicated column of the matrix as a three-component vector.
*/
52
inline LVecBase3f LMatrix3f::get_col(int col) const;
3021 0 0 0 0 0 0 0 0
0
3022 0 0 0 0 0 0 0 0
0
3023 8 get_row2 0 4 3570 19 LMatrix3f::get_row2 0 1 1232 106
/**
* Returns the indicated row of the matrix as a two-component vector, ignoring
* the last column.
*/
53
inline LVecBase2f LMatrix3f::get_row2(int row) const;
3024 8 get_col2 0 4 3570 19 LMatrix3f::get_col2 0 1 1233 106
/**
* Returns the indicated column of the matrix as a two-component vector,
* ignoring the last row.
*/
53
inline LVecBase2f LMatrix3f::get_col2(int col) const;
3025 11 operator () 0 4 3570 22 LMatrix3f::operator () 0 2 1234 1235 10
/**
*
*/
116
inline float &LMatrix3f::operator ()(int row, int col);
inline float LMatrix3f::operator ()(int row, int col) const;
3026 6 is_nan 0 4 3570 17 LMatrix3f::is_nan 0 1 1236 91
/**
* Returns true if any component of the matrix is not-a-number, false
* otherwise.
*/
42
inline bool LMatrix3f::is_nan(void) const;
3027 11 is_identity 0 4 3570 22 LMatrix3f::is_identity 0 1 1237 93
/**
* Returns true if this is (close enough to) the identity matrix, false
* otherwise.
*/
47
inline bool LMatrix3f::is_identity(void) const;
3028 8 get_cell 0 4 3570 19 LMatrix3f::get_cell 0 1 1238 54
/**
* Returns a particular element of the matrix.
*/
57
inline float LMatrix3f::get_cell(int row, int col) const;
3029 8 set_cell 0 4 3570 19 LMatrix3f::set_cell 0 1 1239 54
/**
* Changes a particular element of the matrix.
*/
63
inline void LMatrix3f::set_cell(int row, int col, float value);
3030 8 get_data 0 4 3570 19 LMatrix3f::get_data 0 1 1240 162
/**
* Returns the address of the first of the nine data elements in the matrix.
* The remaining elements occupy the next eight positions in row-major order.
*/
52
inline float const *LMatrix3f::get_data(void) const;
3031 18 get_num_components 0 4 3570 29 LMatrix3f::get_num_components 0 1 1241 62
/**
* Returns the number of elements in the matrix, nine.
*/
53
inline int LMatrix3f::get_num_components(void) const;
3032 10 operator < 0 4 3570 21 LMatrix3f::operator < 0 1 1242 0
64
inline bool LMatrix3f::operator <(LMatrix3f const &other) const;
3033 11 operator == 0 4 3570 22 LMatrix3f::operator == 0 1 1243 0
65
inline bool LMatrix3f::operator ==(LMatrix3f const &other) const;
3034 11 operator != 0 4 3570 22 LMatrix3f::operator != 0 1 1244 0
65
inline bool LMatrix3f::operator !=(LMatrix3f const &other) const;
3035 10 compare_to 0 4 3570 21 LMatrix3f::compare_to 0 2 1245 1246 333
/**
* This flavor of compare_to uses a default threshold value based on the
* numeric type.
*/
/**
* Sorts matrices lexicographically, componentwise. Returns a number less
* than 0 if this matrix sorts before the other one, greater than zero if it
* sorts after, 0 if they are equivalent (within the indicated tolerance).
*/
137
inline int LMatrix3f::compare_to(LMatrix3f const &other) const;
int LMatrix3f::compare_to(LMatrix3f const &other, float threshold) const;
3036 8 get_hash 0 4 3570 19 LMatrix3f::get_hash 0 2 1247 1248 100
/**
* Returns a suitable hash for phash_map.
*/
/**
* Returns a suitable hash for phash_map.
*/
114
inline std::size_t LMatrix3f::get_hash(void) const;
inline std::size_t LMatrix3f::get_hash(float threshold) const;
3037 8 add_hash 0 4 3570 19 LMatrix3f::add_hash 0 2 1249 1250 100
/**
* Adds the vector into the running hash.
*/
/**
* Adds the vector into the running hash.
*/
144
inline std::size_t LMatrix3f::add_hash(std::size_t hash) const;
inline std::size_t LMatrix3f::add_hash(std::size_t hash, float threshold) const;
3038 5 xform 0 4 3570 16 LMatrix3f::xform 0 1 1251 52
/**
* 3-component vector or point times matrix.
*/
62
inline LVecBase3f LMatrix3f::xform(LVecBase3f const &v) const;
3039 11 xform_point 0 4 3570 22 LMatrix3f::xform_point 0 1 1252 162
/**
* The matrix transforms a 2-component point (including translation component)
* and returns the result. This assumes the matrix is an affine transform.
*/
68
inline LVecBase2f LMatrix3f::xform_point(LVecBase2f const &v) const;
3040 9 xform_vec 0 4 3570 20 LMatrix3f::xform_vec 0 2 1253 1254 357
/**
* The matrix transforms a 2-component vector (without translation component)
* and returns the result. This assumes the matrix is an affine transform.
*/
/**
* The matrix transforms a 3-component vector and returns the result. This
* assumes the matrix is an orthonormal transform.
*
* In practice, this is the same computation as xform().
*/
133
inline LVecBase2f LMatrix3f::xform_vec(LVecBase2f const &v) const;
inline LVecBase3f LMatrix3f::xform_vec(LVecBase3f const &v) const;
3041 17 xform_vec_general 0 4 3570 28 LMatrix3f::xform_vec_general 0 1 1255 142
/**
* The matrix transforms a 3-component vector (without translation component)
* and returns the result, as a fully general operation.
*/
74
inline LVecBase3f LMatrix3f::xform_vec_general(LVecBase3f const &v) const;
3042 14 xform_in_place 0 4 3570 25 LMatrix3f::xform_in_place 0 1 1256 52
/**
* 3-component vector or point times matrix.
*/
59
inline void LMatrix3f::xform_in_place(LVecBase3f &v) const;
3043 20 xform_point_in_place 0 4 3570 31 LMatrix3f::xform_point_in_place 0 1 1257 139
/**
* The matrix transforms a 2-component point (including translation
* component). This assumes the matrix is an affine transform.
*/
65
inline void LMatrix3f::xform_point_in_place(LVecBase2f &v) const;
3044 18 xform_vec_in_place 0 4 3570 29 LMatrix3f::xform_vec_in_place 0 2 1258 1259 310
/**
* The matrix transforms a 2-component vector (without translation component).
* This assumes the matrix is an affine transform.
*/
/**
* The matrix transforms a 3-component vector. This assumes the matrix is an
* orthonormal transform.
*
* In practice, this is the same computation as xform().
*/
127
inline void LMatrix3f::xform_vec_in_place(LVecBase2f &v) const;
inline void LMatrix3f::xform_vec_in_place(LVecBase3f &v) const;
3045 26 xform_vec_general_in_place 0 4 3570 37 LMatrix3f::xform_vec_general_in_place 0 1 1260 119
/**
* The matrix transforms a 3-component vector (without translation component),
* as a fully general operation.
*/
71
inline void LMatrix3f::xform_vec_general_in_place(LVecBase3f &v) const;
3046 8 multiply 0 4 3570 19 LMatrix3f::multiply 0 1 1261 52
// this = other1 * other2
// this = other1 * other2
82
inline void LMatrix3f::multiply(LMatrix3f const &other1, LMatrix3f const &other2);
3047 10 operator * 0 4 3570 21 LMatrix3f::operator * 0 2 1262 1263 0
129
inline LMatrix3f LMatrix3f::operator *(LMatrix3f const &other) const;
inline LMatrix3f LMatrix3f::operator *(float scalar) const;
3048 10 operator / 0 4 3570 21 LMatrix3f::operator / 0 1 1264 0
59
inline LMatrix3f LMatrix3f::operator /(float scalar) const;
3049 11 operator += 0 4 3570 22 LMatrix3f::operator += 0 1 1265 63
/**
* Performs a memberwise addition between two matrices.
*/
65
inline LMatrix3f &LMatrix3f::operator +=(LMatrix3f const &other);
3050 11 operator -= 0 4 3570 22 LMatrix3f::operator -= 0 1 1266 66
/**
* Performs a memberwise subtraction between two matrices.
*/
65
inline LMatrix3f &LMatrix3f::operator -=(LMatrix3f const &other);
3051 11 operator *= 0 4 3570 22 LMatrix3f::operator *= 0 2 1267 1268 51
/**
*
*/
/**
* Performs a memberwise scale.
*/
121
inline LMatrix3f &LMatrix3f::operator *=(LMatrix3f const &other);
inline LMatrix3f &LMatrix3f::operator *=(float scalar);
3052 11 operator /= 0 4 3570 22 LMatrix3f::operator /= 0 1 1269 39
/**
* Performs a memberwise scale.
*/
55
inline LMatrix3f &LMatrix3f::operator /=(float scalar);
3053 18 componentwise_mult 0 4 3570 29 LMatrix3f::componentwise_mult 0 1 1270 10
/**
*
*/
66
inline void LMatrix3f::componentwise_mult(LMatrix3f const &other);
3054 11 determinant 0 4 3570 22 LMatrix3f::determinant 0 1 1271 49
/**
* Returns the determinant of the matrix.
*/
48
inline float LMatrix3f::determinant(void) const;
3055 14 transpose_from 0 4 3570 25 LMatrix3f::transpose_from 0 1 1272 10
/**
*
*/
62
inline void LMatrix3f::transpose_from(LMatrix3f const &other);
3056 18 transpose_in_place 0 4 3570 29 LMatrix3f::transpose_in_place 0 1 1273 10
/**
*
*/
48
inline void LMatrix3f::transpose_in_place(void);
3057 11 invert_from 0 4 3570 22 LMatrix3f::invert_from 0 1 1274 463
/**
* Computes the inverse of the other matrix, and stores the result in this
* matrix. This is a fully general operation and makes no assumptions about
* the type of transform represented by the matrix.
*
* The other matrix must be a different object than this matrix. However, if
* you need to invert a matrix in place, see invert_in_place.
*
* The return value is true if the matrix was successfully inverted, false if
* there was a singularity.
*/
59
inline bool LMatrix3f::invert_from(LMatrix3f const &other);
3058 15 invert_in_place 0 4 3570 26 LMatrix3f::invert_in_place 0 1 1275 119
/**
* Inverts the current matrix. Returns true if the inverse is successful,
* false if the matrix was singular.
*/
45
inline bool LMatrix3f::invert_in_place(void);
3059 21 invert_transpose_from 0 4 3570 32 LMatrix3f::invert_transpose_from 0 2 1276 1277 230
/**
* Simultaneously computes the inverse of the indicated matrix, and then the
* transpose of that inverse.
*/
/**
* Simultaneously computes the inverse of the indicated matrix, and then the
* transpose of that inverse.
*/
139
inline bool LMatrix3f::invert_transpose_from(LMatrix3f const &other);
inline bool LMatrix3f::invert_transpose_from(LMatrix4f const &other);
3060 9 ident_mat 0 4 3570 20 LMatrix3f::ident_mat 0 1 1278 147
/**
* Returns an identity matrix.
*
* This function definition must appear first, since some inline functions
* below take advantage of it.
*/
58
static inline LMatrix3f const &LMatrix3f::ident_mat(void);
3061 17 set_translate_mat 0 4 3570 28 LMatrix3f::set_translate_mat 0 1 1279 74
/**
* Fills mat with a matrix that applies the indicated translation.
*/
66
inline void LMatrix3f::set_translate_mat(LVecBase2f const &trans);
3062 14 set_rotate_mat 0 4 3570 25 LMatrix3f::set_rotate_mat 0 2 1280 1281 225
/**
* Fills mat with a matrix that rotates by the given angle in degrees
* counterclockwise.
*/
/**
* Fills mat with a matrix that rotates by the given angle in degrees
* counterclockwise about the indicated vector.
*/
156
inline void LMatrix3f::set_rotate_mat(float angle);
void LMatrix3f::set_rotate_mat(float angle, LVecBase3f const &axis, CoordinateSystem cs = ::CS_default);
3063 13 set_scale_mat 0 4 3570 24 LMatrix3f::set_scale_mat 0 2 1282 1283 194
/**
* Fills mat with a matrix that applies the indicated scale in each of the two
* axes.
*/
/**
* Fills mat with a matrix that applies the indicated scale in each of the
* three axes.
*/
125
inline void LMatrix3f::set_scale_mat(LVecBase2f const &scale);
inline void LMatrix3f::set_scale_mat(LVecBase3f const &scale);
3064 13 translate_mat 0 4 3570 24 LMatrix3f::translate_mat 0 2 1284 1285 136
/**
* Returns a matrix that applies the indicated translation.
*/
/**
* Returns a matrix that applies the indicated translation.
*/
144
static inline LMatrix3f LMatrix3f::translate_mat(LVecBase2f const &trans);
static inline LMatrix3f LMatrix3f::translate_mat(float tx, float ty);
3065 10 rotate_mat 0 4 3570 21 LMatrix3f::rotate_mat 0 2 1286 1287 211
/**
* Returns a matrix that rotates by the given angle in degrees
* counterclockwise.
*/
/**
* Returns a matrix that rotates by the given angle in degrees
* counterclockwise about the indicated vector.
*/
179
static inline LMatrix3f LMatrix3f::rotate_mat(float angle);
static inline LMatrix3f LMatrix3f::rotate_mat(float angle, LVecBase3f const &axis, CoordinateSystem cs = ::CS_default);
3066 9 scale_mat 0 4 3570 20 LMatrix3f::scale_mat 0 4 1288 1289 1290 1291 356
/**
* Returns a matrix that applies the indicated scale in each of the two axes.
*/
/**
* Returns a matrix that applies the indicated scale in each of the two axes.
*/
/**
* Returns a matrix that applies the indicated scale in each of the three
* axes.
*/
/**
* Returns a matrix that applies the indicated scale in each of the three
* axes.
*/
283
static inline LMatrix3f LMatrix3f::scale_mat(LVecBase2f const &scale);
static inline LMatrix3f LMatrix3f::scale_mat(float sx, float sy);
static inline LMatrix3f LMatrix3f::scale_mat(LVecBase3f const &scale);
static inline LMatrix3f LMatrix3f::scale_mat(float sx, float sy, float sz);
3067 23 set_rotate_mat_normaxis 0 4 3570 34 LMatrix3f::set_rotate_mat_normaxis 0 1 1292 163
/**
* Fills mat with a matrix that rotates by the given angle in degrees
* counterclockwise about the indicated vector. Assumes axis has been
* normalized.
*/
113
void LMatrix3f::set_rotate_mat_normaxis(float angle, LVecBase3f const &axis, CoordinateSystem cs = ::CS_default);
3068 19 rotate_mat_normaxis 0 4 3570 30 LMatrix3f::rotate_mat_normaxis 0 1 1293 156
/**
* Returns a matrix that rotates by the given angle in degrees
* counterclockwise about the indicated vector. Assumes axis has been
* normalized.
*/
128
static inline LMatrix3f LMatrix3f::rotate_mat_normaxis(float angle, LVecBase3f const &axis, CoordinateSystem cs = ::CS_default);
3069 13 set_shear_mat 0 4 3570 24 LMatrix3f::set_shear_mat 0 1 1294 99
/**
* Fills mat with a matrix that applies the indicated shear in each of the
* three planes.
*/
98
inline void LMatrix3f::set_shear_mat(LVecBase3f const &shear, CoordinateSystem cs = ::CS_default);
3070 9 shear_mat 0 4 3570 20 LMatrix3f::shear_mat 0 2 1295 1296 186
/**
* Returns a matrix that applies the indicated shear in each of the three
* planes.
*/
/**
* Returns a matrix that applies the indicated shear in each of the three
* planes.
*/
224
static inline LMatrix3f LMatrix3f::shear_mat(LVecBase3f const &shear, CoordinateSystem cs = ::CS_default);
static inline LMatrix3f LMatrix3f::shear_mat(float shxy, float shxz, float shyz, CoordinateSystem cs = ::CS_default);
3071 19 set_scale_shear_mat 0 4 3570 30 LMatrix3f::set_scale_shear_mat 0 1 1297 78
/**
* Fills mat with a matrix that applies the indicated scale and shear.
*/
122
void LMatrix3f::set_scale_shear_mat(LVecBase3f const &scale, LVecBase3f const &shear, CoordinateSystem cs = ::CS_default);
3072 15 scale_shear_mat 0 4 3570 26 LMatrix3f::scale_shear_mat 0 2 1298 1299 144
/**
* Returns a matrix that applies the indicated scale and shear.
*/
/**
* Returns a matrix that applies the indicated scale and shear.
*/
291
static inline LMatrix3f LMatrix3f::scale_shear_mat(LVecBase3f const &scale, LVecBase3f const &shear, CoordinateSystem cs = ::CS_default);
static inline LMatrix3f LMatrix3f::scale_shear_mat(float sx, float sy, float sz, float shxy, float shxz, float shyz, CoordinateSystem cs = ::CS_default);
3073 11 convert_mat 0 4 3570 22 LMatrix3f::convert_mat 0 1 1300 119
/**
* Returns a matrix that transforms from the indicated coordinate system to
* the indicated coordinate system.
*/
91
static LMatrix3f const &LMatrix3f::convert_mat(CoordinateSystem from, CoordinateSystem to);
3074 12 almost_equal 0 4 3570 23 LMatrix3f::almost_equal 0 2 1301 1302 212
/**
* Returns true if two matrices are memberwise equal within a default
* tolerance based on the numeric type.
*/
/**
* Returns true if two matrices are memberwise equal within a specified
* tolerance.
*/
143
bool LMatrix3f::almost_equal(LMatrix3f const &other, float threshold) const;
inline bool LMatrix3f::almost_equal(LMatrix3f const &other) const;
3075 6 output 0 4 3570 17 LMatrix3f::output 0 1 1303 10
/**
*
*/
48
void LMatrix3f::output(std::ostream &out) const;
3076 5 write 0 4 3570 16 LMatrix3f::write 0 1 1304 10
/**
*
*/
69
void LMatrix3f::write(std::ostream &out, int indent_level = 0) const;
3077 8 __repr__ 0 4 3570 19 LMatrix3f::__repr__ 0 1 1305 0
51
inline std::string LMatrix3f::__repr__(void) const;
3078 13 generate_hash 0 4 3570 24 LMatrix3f::generate_hash 0 2 1306 1307 120
/**
* Adds the vector to the indicated hash generator.
*/
/**
* Adds the vector to the indicated hash generator.
*/
161
inline void LMatrix3f::generate_hash(ChecksumHashGenerator &hashgen) const;
void LMatrix3f::generate_hash(ChecksumHashGenerator &hashgen, float threshold) const;
3079 20 write_datagram_fixed 0 4 3570 31 LMatrix3f::write_datagram_fixed 0 1 1308 332
/**
* Writes the matrix to the Datagram using add_float32() or add_float64(),
* depending on the type of floats in the matrix, regardless of the setting of
* Datagram::set_stdfloat_double(). This is appropriate when you want to
* write a fixed-width value to the datagram, especially when you are not
* writing a bam file.
*/
66
void LMatrix3f::write_datagram_fixed(Datagram &destination) const;
3080 19 read_datagram_fixed 0 4 3570 30 LMatrix3f::read_datagram_fixed 0 1 1309 114
/**
* Reads the matrix from the Datagram using get_float32() or get_float64().
* See write_datagram_fixed().
*/
60
void LMatrix3f::read_datagram_fixed(DatagramIterator &scan);
3081 14 write_datagram 0 4 3570 25 LMatrix3f::write_datagram 0 1 1310 205
/**
* Writes the matrix to the Datagram using add_stdfloat(). This is
* appropriate when you want to write the matrix using the standard width
* setting, especially when you are writing a bam file.
*/
60
void LMatrix3f::write_datagram(Datagram &destination) const;
3082 13 read_datagram 0 4 3570 24 LMatrix3f::read_datagram 0 1 1311 67
/**
* Reads the matrix from the Datagram using get_stdfloat().
*/
56
void LMatrix3f::read_datagram(DatagramIterator &source);
3083 14 get_class_type 0 4 3570 25 LMatrix3f::get_class_type 0 1 1312 0
50
static TypeHandle LMatrix3f::get_class_type(void);
3084 10 ~LMatrix3f 0 4 3570 21 LMatrix3f::~LMatrix3f 0 0 0
28
LMatrix3f::~LMatrix3f(void);
3085 9 transpose 0 1 0 9 transpose 0 4 1884 1885 1886 1887 0
191
inline LMatrix3f transpose(LMatrix3f const &a);
inline LMatrix4f transpose(LMatrix4f const &a);
inline LMatrix3d transpose(LMatrix3d const &a);
inline LMatrix4d transpose(LMatrix4d const &a);
3086 6 invert 0 1 0 6 invert 0 6 1888 1889 1890 1891 1892 1893 0
281
inline LMatrix3f invert(LMatrix3f const &a);
inline LMatrix4f invert(LMatrix4f const &a);
inline LMatrix3d invert(LMatrix3d const &a);
inline LMatrix4d invert(LMatrix4d const &a);
inline LQuaternionf invert(LQuaternionf const &a);
inline LQuaterniond invert(LQuaterniond const &a);
3087 11 operator [] 0 4 3576 27 LMatrix4f::Row::operator [] 0 2 1434 1435 10
/**
*
*/
104
inline float LMatrix4f::Row::operator [](int i) const;
inline float &LMatrix4f::Row::operator [](int i);
3088 4 size 0 4 3576 20 LMatrix4f::Row::size 0 1 1436 58
/**
* Returns 4: the number of columns of a LMatrix4.
*/
45
static inline int LMatrix4f::Row::size(void);
3089 17 operator typecast 0 132 3576 33 LMatrix4f::Row::operator typecast 0 1 1437 0
47
inline operator LVecBase4f const &(void) const;
3090 3 Row 0 4 3576 19 LMatrix4f::Row::Row 0 1 1433 60
/**
* Defines a row-level index accessor to the matrix.
*/
61
inline LMatrix4f::Row::Row(LMatrix4f::Row const &) = default;
3091 4 ~Row 0 4 3576 20 LMatrix4f::Row::~Row 0 0 0
27
LMatrix4f::Row::~Row(void);
3092 11 operator [] 0 4 3577 28 LMatrix4f::CRow::operator [] 0 1 1439 0
55
inline float LMatrix4f::CRow::operator [](int i) const;
3093 4 size 0 4 3577 21 LMatrix4f::CRow::size 0 1 1440 58
/**
* Returns 4: the number of columns of a LMatrix4.
*/
46
static inline int LMatrix4f::CRow::size(void);
3094 17 operator typecast 0 132 3577 34 LMatrix4f::CRow::operator typecast 0 1 1441 0
47
inline operator LVecBase4f const &(void) const;
3095 4 CRow 0 4 3577 21 LMatrix4f::CRow::CRow 0 1 1438 63
/**
* Defines a row-level constant accessor to the matrix.
*/
64
inline LMatrix4f::CRow::CRow(LMatrix4f::CRow const &) = default;
3096 5 ~CRow 0 4 3577 22 LMatrix4f::CRow::~CRow 0 0 0
29
LMatrix4f::CRow::~CRow(void);
3097 9 LMatrix4f 0 4 3574 20 LMatrix4f::LMatrix4f 0 7 1322 1323 1324 1325 1326 1327 1328 228
// Construct a 4x4 matrix given a 3x3 rotation matrix and an optional
// translation component.
/**
*
*/
/**
*
*/
/**
*
*/
/**
*
*/
/**
* Constructs the matrix from four individual rows.
*/
/**
*
*/
/**
*
*/
548
inline LMatrix4f::LMatrix4f(void);
inline LMatrix4f::LMatrix4f(LMatrix4f const &other);
inline LMatrix4f::LMatrix4f(UnalignedLMatrix4f const &other);
inline LMatrix4f::LMatrix4f(float , float , float , float , float , float , float , float , float , float , float , float , float , float , float , float );
inline LMatrix4f::LMatrix4f(LVecBase4f const &, LVecBase4f const &, LVecBase4f const &, LVecBase4f const &);
inline LMatrix4f::LMatrix4f(LMatrix3f const &upper3);
inline LMatrix4f::LMatrix4f(LMatrix3f const &upper3, LVecBase3f const &trans);
3098 10 operator = 0 4 3574 21 LMatrix4f::operator = 0 3 1329 1330 1331 34
/**
*
*/
/**
*
*/
/**
*
*/
179
inline void LMatrix4f::operator =(LMatrix4f const &other);
inline void LMatrix4f::operator =(UnalignedLMatrix4f const &other);
inline void LMatrix4f::operator =(float fill_value);
3099 12 operator new 0 4 3574 23 LMatrix4f::operator new 0 1 1332 0
122
inline void *LMatrix4f::operator new(std::size_t size);
inline void *LMatrix4f::operator new(std::size_t size, void *ptr);
3100 15 operator delete 0 4 3574 26 LMatrix4f::operator delete 0 0 0
106
inline void LMatrix4f::operator delete(void *ptr);
inline void LMatrix4f::operator delete(void *, void *);
3101 12 validate_ptr 0 4 3574 23 LMatrix4f::validate_ptr 0 0 0
60
static inline bool LMatrix4f::validate_ptr(void const *ptr);
3102 10 __reduce__ 0 4 3574 21 LMatrix4f::__reduce__ 0 1 1333 0
61
inline PyObject *LMatrix4f::__reduce__(PyObject *self) const;
3103 4 fill 0 4 3574 15 LMatrix4f::fill 0 1 1334 157
/**
* Sets each element of the matrix to the indicated fill_value. This is of
* questionable value, but is sometimes useful when initializing to zero.
*/
46
inline void LMatrix4f::fill(float fill_value);
3104 3 set 0 4 3574 14 LMatrix4f::set 0 1 1335 10
/**
*
*/
203
inline void LMatrix4f::set(float e00, float e01, float e02, float e03, float e10, float e11, float e12, float e13, float e20, float e21, float e22, float e23, float e30, float e31, float e32, float e33);
3105 11 set_upper_3 0 4 3574 22 LMatrix4f::set_upper_3 0 1 1336 87
// Get and set the upper 3x3 rotation matrix.
/**
* Sets the upper 3x3 submatrix.
*/
60
inline void LMatrix4f::set_upper_3(LMatrix3f const &upper3);
3106 11 get_upper_3 0 4 3574 22 LMatrix4f::get_upper_3 0 1 1337 45
/**
* Retrieves the upper 3x3 submatrix.
*/
52
inline LMatrix3f LMatrix4f::get_upper_3(void) const;
3107 11 operator [] 0 4 3574 22 LMatrix4f::operator [] 0 2 1338 1339 0
112
inline LMatrix4f::CRow LMatrix4f::operator [](int i) const;
inline LMatrix4f::Row LMatrix4f::operator [](int i);
3108 4 size 0 4 3574 15 LMatrix4f::size 0 1 1340 55
/**
* Returns 4: the number of rows of a LMatrix4.
*/
40
static inline int LMatrix4f::size(void);
3109 7 set_row 0 4 3574 18 LMatrix4f::set_row 0 2 1341 1342 173
/**
* Replaces the indicated row of the matrix.
*/
/**
* Replaces the indicated row of the matrix with the indicated 3-component
* vector, ignoring the last column.
*/
123
inline void LMatrix4f::set_row(int row, LVecBase4f const &v);
inline void LMatrix4f::set_row(int row, LVecBase3f const &v);
3110 7 set_col 0 4 3574 18 LMatrix4f::set_col 0 2 1343 1344 176
/**
* Replaces the indicated column of the matrix.
*/
/**
* Replaces the indicated column of the matrix with the indicated 3-component
* vector, ignoring the last row.
*/
123
inline void LMatrix4f::set_col(int col, LVecBase4f const &v);
inline void LMatrix4f::set_col(int col, LVecBase3f const &v);
3111 7 get_row 0 4 3574 18 LMatrix4f::get_row 0 2 1345 1346 186
// these versions inline better
/**
* Retrieves the indicated row of the matrix as a 4-component vector.
*/
/**
* Stores the indicated row of the matrix as a 4-component vector.
*/
123
inline LVecBase4f LMatrix4f::get_row(int row) const;
inline void LMatrix4f::get_row(LVecBase4f &result_vec, int row) const;
3112 7 get_col 0 4 3574 18 LMatrix4f::get_col 0 1 1347 80
/**
* Retrieves the indicated column of the matrix as a 4-component vector.
*/
52
inline LVecBase4f LMatrix4f::get_col(int col) const;
3113 8 get_row3 0 4 3574 19 LMatrix4f::get_row3 0 2 1348 1349 205
/**
* Retrieves the row column of the matrix as a 3-component vector, ignoring
* the last column.
*/
/**
* Stores the row column of the matrix as a 3-component vector, ignoring the
* last column.
*/
125
inline LVecBase3f LMatrix4f::get_row3(int row) const;
inline void LMatrix4f::get_row3(LVecBase3f &result_vec, int row) const;
3114 0 0 0 0 0 0 0 0
0
3115 0 0 0 0 0 0 0 0
0
3116 8 get_col3 0 4 3574 19 LMatrix4f::get_col3 0 1 1350 106
/**
* Retrieves the indicated column of the matrix as a 3-component vector,
* ignoring the last row.
*/
53
inline LVecBase3f LMatrix4f::get_col3(int col) const;
3117 11 operator () 0 4 3574 22 LMatrix4f::operator () 0 2 1351 1352 10
/**
*
*/
116
inline float &LMatrix4f::operator ()(int row, int col);
inline float LMatrix4f::operator ()(int row, int col) const;
3118 6 is_nan 0 4 3574 17 LMatrix4f::is_nan 0 1 1353 91
/**
* Returns true if any component of the matrix is not-a-number, false
* otherwise.
*/
42
inline bool LMatrix4f::is_nan(void) const;
3119 11 is_identity 0 4 3574 22 LMatrix4f::is_identity 0 1 1354 93
/**
* Returns true if this is (close enough to) the identity matrix, false
* otherwise.
*/
47
inline bool LMatrix4f::is_identity(void) const;
3120 8 get_cell 0 4 3574 19 LMatrix4f::get_cell 0 1 1355 54
/**
* Returns a particular element of the matrix.
*/
57
inline float LMatrix4f::get_cell(int row, int col) const;
3121 8 set_cell 0 4 3574 19 LMatrix4f::set_cell 0 1 1356 54
/**
* Changes a particular element of the matrix.
*/
63
inline void LMatrix4f::set_cell(int row, int col, float value);
3122 8 get_data 0 4 3574 19 LMatrix4f::get_data 0 1 1357 162
/**
* Returns the address of the first of the nine data elements in the matrix.
* The remaining elements occupy the next eight positions in row-major order.
*/
52
inline float const *LMatrix4f::get_data(void) const;
3123 18 get_num_components 0 4 3574 29 LMatrix4f::get_num_components 0 1 1358 60
/**
* Returns the number of elements in the matrix, 16.
*/
53
inline int LMatrix4f::get_num_components(void) const;
3124 5 begin 0 4 3574 16 LMatrix4f::begin 0 2 1359 1360 204
/**
* Returns an iterator that may be used to traverse the elements of the
* matrix, STL-style.
*/
/**
* Returns an iterator that may be used to traverse the elements of the
* matrix, STL-style.
*/
113
inline LMatrix4f::iterator LMatrix4f::begin(void);
inline LMatrix4f::const_iterator LMatrix4f::begin(void) const;
3125 3 end 0 4 3574 14 LMatrix4f::end 0 2 1361 1362 204
/**
* Returns an iterator that may be used to traverse the elements of the
* matrix, STL-style.
*/
/**
* Returns an iterator that may be used to traverse the elements of the
* matrix, STL-style.
*/
109
inline LMatrix4f::iterator LMatrix4f::end(void);
inline LMatrix4f::const_iterator LMatrix4f::end(void) const;
3126 10 operator < 0 4 3574 21 LMatrix4f::operator < 0 1 1363 0
64
inline bool LMatrix4f::operator <(LMatrix4f const &other) const;
3127 11 operator == 0 4 3574 22 LMatrix4f::operator == 0 1 1364 0
65
inline bool LMatrix4f::operator ==(LMatrix4f const &other) const;
3128 11 operator != 0 4 3574 22 LMatrix4f::operator != 0 1 1365 0
65
inline bool LMatrix4f::operator !=(LMatrix4f const &other) const;
3129 10 compare_to 0 4 3574 21 LMatrix4f::compare_to 0 2 1366 1367 333
/**
* This flavor of compare_to uses a default threshold value based on the
* numeric type.
*/
/**
* Sorts matrices lexicographically, componentwise. Returns a number less
* than 0 if this matrix sorts before the other one, greater than zero if it
* sorts after, 0 if they are equivalent (within the indicated tolerance).
*/
137
inline int LMatrix4f::compare_to(LMatrix4f const &other) const;
int LMatrix4f::compare_to(LMatrix4f const &other, float threshold) const;
3130 8 get_hash 0 4 3574 19 LMatrix4f::get_hash 0 2 1368 1369 100
/**
* Returns a suitable hash for phash_map.
*/
/**
* Returns a suitable hash for phash_map.
*/
114
inline std::size_t LMatrix4f::get_hash(void) const;
inline std::size_t LMatrix4f::get_hash(float threshold) const;
3131 8 add_hash 0 4 3574 19 LMatrix4f::add_hash 0 2 1370 1371 100
/**
* Adds the vector into the running hash.
*/
/**
* Adds the vector into the running hash.
*/
144
inline std::size_t LMatrix4f::add_hash(std::size_t hash) const;
inline std::size_t LMatrix4f::add_hash(std::size_t hash, float threshold) const;
3132 5 xform 0 4 3574 16 LMatrix4f::xform 0 1 1372 91
/**
* 4-component vector or point times matrix. This is a fully general
* operation.
*/
62
inline LVecBase4f LMatrix4f::xform(LVecBase4f const &v) const;
3133 11 xform_point 0 4 3574 22 LMatrix4f::xform_point 0 1 1373 162
/**
* The matrix transforms a 3-component point (including translation component)
* and returns the result. This assumes the matrix is an affine transform.
*/
68
inline LVecBase3f LMatrix4f::xform_point(LVecBase3f const &v) const;
3134 19 xform_point_general 0 4 3574 30 LMatrix4f::xform_point_general 0 1 1374 143
/**
* The matrix transforms a 3-component point (including translation component)
* and returns the result, as a fully general operation.
*/
76
inline LVecBase3f LMatrix4f::xform_point_general(LVecBase3f const &v) const;
3135 9 xform_vec 0 4 3574 20 LMatrix4f::xform_vec 0 1 1375 169
/**
* The matrix transforms a 3-component vector (without translation component)
* and returns the result. This assumes the matrix is an orthonormal
* transform.
*/
66
inline LVecBase3f LMatrix4f::xform_vec(LVecBase3f const &v) const;
3136 17 xform_vec_general 0 4 3574 28 LMatrix4f::xform_vec_general 0 1 1376 142
/**
* The matrix transforms a 3-component vector (without translation component)
* and returns the result, as a fully general operation.
*/
74
inline LVecBase3f LMatrix4f::xform_vec_general(LVecBase3f const &v) const;
3137 14 xform_in_place 0 4 3574 25 LMatrix4f::xform_in_place 0 1 1377 91
/**
* 4-component vector or point times matrix. This is a fully general
* operation.
*/
59
inline void LMatrix4f::xform_in_place(LVecBase4f &v) const;
3138 20 xform_point_in_place 0 4 3574 31 LMatrix4f::xform_point_in_place 0 1 1378 139
/**
* The matrix transforms a 3-component point (including translation
* component). This assumes the matrix is an affine transform.
*/
65
inline void LMatrix4f::xform_point_in_place(LVecBase3f &v) const;
3139 28 xform_point_general_in_place 0 4 3574 39 LMatrix4f::xform_point_general_in_place 0 1 1379 120
/**
* The matrix transforms a 3-component point (including translation
* component), as a fully general operation.
*/
73
inline void LMatrix4f::xform_point_general_in_place(LVecBase3f &v) const;
3140 18 xform_vec_in_place 0 4 3574 29 LMatrix4f::xform_vec_in_place 0 1 1380 142
/**
* The matrix transforms a 3-component vector (without translation component).
* This assumes the matrix is an orthonormal transform.
*/
63
inline void LMatrix4f::xform_vec_in_place(LVecBase3f &v) const;
3141 26 xform_vec_general_in_place 0 4 3574 37 LMatrix4f::xform_vec_general_in_place 0 1 1381 119
/**
* The matrix transforms a 3-component vector (without translation component),
* as a fully general operation.
*/
71
inline void LMatrix4f::xform_vec_general_in_place(LVecBase3f &v) const;
3142 8 multiply 0 4 3574 19 LMatrix4f::multiply 0 1 1382 52
// this = other1 * other2
// this = other1 * other2
82
inline void LMatrix4f::multiply(LMatrix4f const &other1, LMatrix4f const &other2);
3143 10 operator * 0 4 3574 21 LMatrix4f::operator * 0 2 1383 1384 0
129
inline LMatrix4f LMatrix4f::operator *(LMatrix4f const &other) const;
inline LMatrix4f LMatrix4f::operator *(float scalar) const;
3144 10 operator / 0 4 3574 21 LMatrix4f::operator / 0 1 1385 0
59
inline LMatrix4f LMatrix4f::operator /(float scalar) const;
3145 11 operator += 0 4 3574 22 LMatrix4f::operator += 0 1 1386 63
/**
* Performs a memberwise addition between two matrices.
*/
65
inline LMatrix4f &LMatrix4f::operator +=(LMatrix4f const &other);
3146 11 operator -= 0 4 3574 22 LMatrix4f::operator -= 0 1 1387 63
/**
* Performs a memberwise addition between two matrices.
*/
65
inline LMatrix4f &LMatrix4f::operator -=(LMatrix4f const &other);
3147 11 operator *= 0 4 3574 22 LMatrix4f::operator *= 0 2 1388 1389 22
/**
*
*/
/**
*
*/
121
inline LMatrix4f &LMatrix4f::operator *=(LMatrix4f const &other);
inline LMatrix4f &LMatrix4f::operator *=(float scalar);
3148 11 operator /= 0 4 3574 22 LMatrix4f::operator /= 0 1 1390 10
/**
*
*/
55
inline LMatrix4f &LMatrix4f::operator /=(float scalar);
3149 18 componentwise_mult 0 4 3574 29 LMatrix4f::componentwise_mult 0 1 1391 10
/**
*
*/
66
inline void LMatrix4f::componentwise_mult(LMatrix4f const &other);
3150 14 transpose_from 0 4 3574 25 LMatrix4f::transpose_from 0 1 1392 10
/**
*
*/
62
inline void LMatrix4f::transpose_from(LMatrix4f const &other);
3151 18 transpose_in_place 0 4 3574 29 LMatrix4f::transpose_in_place 0 1 1393 10
/**
*
*/
48
inline void LMatrix4f::transpose_in_place(void);
3152 11 invert_from 0 4 3574 22 LMatrix4f::invert_from 0 1 1394 461
/**
* Computes the inverse of the other matrix, and stores the result in this
* matrix. This is a fully general operation and makes no assumptions about
* the type of transform represented by the matrix.
*
* The other matrix must be a different object than this matrix. However, if
* you need to invert a matrix in place, see invert_in_place.
*
* The return value is true if the matrix was successfully inverted, false if
* the was a singularity.
*/
59
inline bool LMatrix4f::invert_from(LMatrix4f const &other);
3153 18 invert_affine_from 0 4 3574 29 LMatrix4f::invert_affine_from 0 1 1395 139
// bugbug: we could optimize this for rotationscaletranslation matrices
// (transpose upper 3x3 and take negative of translation component)
66
inline bool LMatrix4f::invert_affine_from(LMatrix4f const &other);
3154 15 invert_in_place 0 4 3574 26 LMatrix4f::invert_in_place 0 1 1396 119
/**
* Inverts the current matrix. Returns true if the inverse is successful,
* false if the matrix was singular.
*/
45
inline bool LMatrix4f::invert_in_place(void);
3155 10 accumulate 0 4 3574 21 LMatrix4f::accumulate 0 1 1397 46
/**
* Computes (*this) += other * weight.
*/
72
inline void LMatrix4f::accumulate(LMatrix4f const &other, float weight);
3156 9 ident_mat 0 4 3574 20 LMatrix4f::ident_mat 0 1 1398 147
/**
* Returns an identity matrix.
*
* This function definition must appear first, since some inline functions
* below take advantage of it.
*/
58
static inline LMatrix4f const &LMatrix4f::ident_mat(void);
3157 8 ones_mat 0 4 3574 19 LMatrix4f::ones_mat 0 1 1399 46
/**
* Returns an matrix filled with ones.
*/
57
static inline LMatrix4f const &LMatrix4f::ones_mat(void);
3158 9 zeros_mat 0 4 3574 20 LMatrix4f::zeros_mat 0 1 1400 47
/**
* Returns an matrix filled with zeros.
*/
58
static inline LMatrix4f const &LMatrix4f::zeros_mat(void);
3159 17 set_translate_mat 0 4 3574 28 LMatrix4f::set_translate_mat 0 1 1401 74
/**
* Fills mat with a matrix that applies the indicated translation.
*/
66
inline void LMatrix4f::set_translate_mat(LVecBase3f const &trans);
3160 14 set_rotate_mat 0 4 3574 25 LMatrix4f::set_rotate_mat 0 1 1402 122
/**
* Sets mat to a matrix that rotates by the given angle in degrees
* counterclockwise about the indicated vector.
*/
104
void LMatrix4f::set_rotate_mat(float angle, LVecBase3f const &axis, CoordinateSystem cs = ::CS_default);
3161 23 set_rotate_mat_normaxis 0 4 3574 34 LMatrix4f::set_rotate_mat_normaxis 0 1 1403 166
/**
* Fills mat with a matrix that rotates by the given angle in degrees
* counterclockwise about the indicated vector. Assumes axis has been
* prenormalized.
*/
113
void LMatrix4f::set_rotate_mat_normaxis(float angle, LVecBase3f const &axis, CoordinateSystem cs = ::CS_default);
3162 13 set_scale_mat 0 4 3574 24 LMatrix4f::set_scale_mat 0 1 1404 97
/**
* Fills mat with a matrix that applies the indicated scale in each of the
* three axes.
*/
62
inline void LMatrix4f::set_scale_mat(LVecBase3f const &scale);
3163 13 set_shear_mat 0 4 3574 24 LMatrix4f::set_shear_mat 0 1 1405 99
/**
* Fills mat with a matrix that applies the indicated shear in each of the
* three planes.
*/
98
inline void LMatrix4f::set_shear_mat(LVecBase3f const &shear, CoordinateSystem cs = ::CS_default);
3164 19 set_scale_shear_mat 0 4 3574 30 LMatrix4f::set_scale_shear_mat 0 1 1406 78
/**
* Fills mat with a matrix that applies the indicated scale and shear.
*/
129
inline void LMatrix4f::set_scale_shear_mat(LVecBase3f const &scale, LVecBase3f const &shear, CoordinateSystem cs = ::CS_default);
3165 13 translate_mat 0 4 3574 24 LMatrix4f::translate_mat 0 2 1407 1408 136
/**
* Returns a matrix that applies the indicated translation.
*/
/**
* Returns a matrix that applies the indicated translation.
*/
154
static inline LMatrix4f LMatrix4f::translate_mat(LVecBase3f const &trans);
static inline LMatrix4f LMatrix4f::translate_mat(float tx, float ty, float tz);
3166 10 rotate_mat 0 4 3574 21 LMatrix4f::rotate_mat 0 1 1409 118
/**
* Returns a matrix that rotates by the given angle in degrees
* counterclockwise about the indicated vector.
*/
119
static inline LMatrix4f LMatrix4f::rotate_mat(float angle, LVecBase3f const &axis, CoordinateSystem cs = ::CS_default);
3167 19 rotate_mat_normaxis 0 4 3574 30 LMatrix4f::rotate_mat_normaxis 0 1 1410 159
/**
* Returns a matrix that rotates by the given angle in degrees
* counterclockwise about the indicated vector. Assumes axis has been
* prenormalized.
*/
128
static inline LMatrix4f LMatrix4f::rotate_mat_normaxis(float angle, LVecBase3f const &axis, CoordinateSystem cs = ::CS_default);
3168 9 scale_mat 0 4 3574 20 LMatrix4f::scale_mat 0 3 1411 1412 1413 253
/**
* Returns a matrix that applies the indicated scale in each of the three
* axes.
*/
/**
* Returns a matrix that applies the indicated scale in each of the three
* axes.
*/
/**
* Returns a matrix that applies the indicated uniform scale.
*/
205
static inline LMatrix4f LMatrix4f::scale_mat(LVecBase3f const &scale);
static inline LMatrix4f LMatrix4f::scale_mat(float sx, float sy, float sz);
static inline LMatrix4f LMatrix4f::scale_mat(float scale);
3169 9 shear_mat 0 4 3574 20 LMatrix4f::shear_mat 0 2 1414 1415 186
/**
* Returns a matrix that applies the indicated shear in each of the three
* planes.
*/
/**
* Returns a matrix that applies the indicated shear in each of the three
* planes.
*/
224
static inline LMatrix4f LMatrix4f::shear_mat(LVecBase3f const &shear, CoordinateSystem cs = ::CS_default);
static inline LMatrix4f LMatrix4f::shear_mat(float shxy, float shxz, float shyz, CoordinateSystem cs = ::CS_default);
3170 15 scale_shear_mat 0 4 3574 26 LMatrix4f::scale_shear_mat 0 2 1416 1417 144
/**
* Returns a matrix that applies the indicated scale and shear.
*/
/**
* Returns a matrix that applies the indicated scale and shear.
*/
291
static inline LMatrix4f LMatrix4f::scale_shear_mat(LVecBase3f const &scale, LVecBase3f const &shear, CoordinateSystem cs = ::CS_default);
static inline LMatrix4f LMatrix4f::scale_shear_mat(float sx, float sy, float sz, float shxy, float shxz, float shyz, CoordinateSystem cs = ::CS_default);
3171 13 y_to_z_up_mat 0 4 3574 24 LMatrix4f::y_to_z_up_mat 0 1 1418 109
/**
* Returns a matrix that transforms from the Y-up coordinate system to the
* Z-up coordinate system.
*/
62
static inline LMatrix4f const &LMatrix4f::y_to_z_up_mat(void);
3172 13 z_to_y_up_mat 0 4 3574 24 LMatrix4f::z_to_y_up_mat 0 1 1419 109
/**
* Returns a matrix that transforms from the Y-up coordinate system to the
* Z-up coordinate system.
*/
62
static inline LMatrix4f const &LMatrix4f::z_to_y_up_mat(void);
3173 11 convert_mat 0 4 3574 22 LMatrix4f::convert_mat 0 1 1420 119
/**
* Returns a matrix that transforms from the indicated coordinate system to
* the indicated coordinate system.
*/
91
static LMatrix4f const &LMatrix4f::convert_mat(CoordinateSystem from, CoordinateSystem to);
3174 12 almost_equal 0 4 3574 23 LMatrix4f::almost_equal 0 2 1421 1422 318
/**
* Returns true if two matrices are memberwise equal within a default
* tolerance based on the numeric type.
*/
/**
* Returns true if two matrices are memberwise equal within a specified
* tolerance. This is faster than the equivalence operator as this doesn't
* have to guarantee that it is transitive.
*/
143
bool LMatrix4f::almost_equal(LMatrix4f const &other, float threshold) const;
inline bool LMatrix4f::almost_equal(LMatrix4f const &other) const;
3175 6 output 0 4 3574 17 LMatrix4f::output 0 1 1423 10
/**
*
*/
48
void LMatrix4f::output(std::ostream &out) const;
3176 5 write 0 4 3574 16 LMatrix4f::write 0 1 1424 10
/**
*
*/
69
void LMatrix4f::write(std::ostream &out, int indent_level = 0) const;
3177 8 __repr__ 0 4 3574 19 LMatrix4f::__repr__ 0 1 1425 0
51
inline std::string LMatrix4f::__repr__(void) const;
3178 13 generate_hash 0 4 3574 24 LMatrix4f::generate_hash 0 2 1426 1427 120
/**
* Adds the vector to the indicated hash generator.
*/
/**
* Adds the vector to the indicated hash generator.
*/
157
inline void LMatrix4f::generate_hash(ChecksumHashGenerator &hashgen) const;
void LMatrix4f::generate_hash(ChecksumHashGenerator &hashgen, float scale) const;
3179 20 write_datagram_fixed 0 4 3574 31 LMatrix4f::write_datagram_fixed 0 1 1428 332
/**
* Writes the matrix to the Datagram using add_float32() or add_float64(),
* depending on the type of floats in the matrix, regardless of the setting of
* Datagram::set_stdfloat_double(). This is appropriate when you want to
* write a fixed-width value to the datagram, especially when you are not
* writing a bam file.
*/
66
void LMatrix4f::write_datagram_fixed(Datagram &destination) const;
3180 19 read_datagram_fixed 0 4 3574 30 LMatrix4f::read_datagram_fixed 0 1 1429 114
/**
* Reads the matrix from the Datagram using get_float32() or get_float64().
* See write_datagram_fixed().
*/
60
void LMatrix4f::read_datagram_fixed(DatagramIterator &scan);
3181 14 write_datagram 0 4 3574 25 LMatrix4f::write_datagram 0 1 1430 205
/**
* Writes the matrix to the Datagram using add_stdfloat(). This is
* appropriate when you want to write the matrix using the standard width
* setting, especially when you are writing a bam file.
*/
60
void LMatrix4f::write_datagram(Datagram &destination) const;
3182 13 read_datagram 0 4 3574 24 LMatrix4f::read_datagram 0 1 1431 67
/**
* Reads the matrix from the Datagram using get_stdfloat().
*/
56
void LMatrix4f::read_datagram(DatagramIterator &source);
3183 14 get_class_type 0 4 3574 25 LMatrix4f::get_class_type 0 1 1432 0
50
static TypeHandle LMatrix4f::get_class_type(void);
3184 10 ~LMatrix4f 0 4 3574 21 LMatrix4f::~LMatrix4f 0 0 0
28
LMatrix4f::~LMatrix4f(void);
3185 18 UnalignedLMatrix4f 0 4 3578 38 UnalignedLMatrix4f::UnalignedLMatrix4f 0 4 1442 1443 1444 1445 46
/**
*
*/
/**
*
*/
/**
*
*/
/**
*
*/
424
inline UnalignedLMatrix4f::UnalignedLMatrix4f(void);
inline UnalignedLMatrix4f::UnalignedLMatrix4f(LMatrix4f const &copy);
inline UnalignedLMatrix4f::UnalignedLMatrix4f(UnalignedLMatrix4f const &copy);
inline UnalignedLMatrix4f::UnalignedLMatrix4f(float e00, float e01, float e02, float e03, float e10, float e11, float e12, float e13, float e20, float e21, float e22, float e23, float e30, float e31, float e32, float e33);
3186 10 operator = 0 4 3578 30 UnalignedLMatrix4f::operator = 0 2 1446 1447 22
/**
*
*/
/**
*
*/
142
inline void UnalignedLMatrix4f::operator =(LMatrix4f const &copy);
inline void UnalignedLMatrix4f::operator =(UnalignedLMatrix4f const &copy);
3187 3 set 0 4 3578 23 UnalignedLMatrix4f::set 0 1 1448 10
/**
*
*/
212
inline void UnalignedLMatrix4f::set(float e00, float e01, float e02, float e03, float e10, float e11, float e12, float e13, float e20, float e21, float e22, float e23, float e30, float e31, float e32, float e33);
3188 11 operator () 0 4 3578 31 UnalignedLMatrix4f::operator () 0 2 1449 1450 10
/**
*
*/
134
inline float &UnalignedLMatrix4f::operator ()(int row, int col);
inline float UnalignedLMatrix4f::operator ()(int row, int col) const;
3189 8 get_data 0 4 3578 28 UnalignedLMatrix4f::get_data 0 1 1451 162
/**
* Returns the address of the first of the nine data elements in the matrix.
* The remaining elements occupy the next eight positions in row-major order.
*/
61
inline float const *UnalignedLMatrix4f::get_data(void) const;
3190 18 get_num_components 0 4 3578 38 UnalignedLMatrix4f::get_num_components 0 1 1452 65
/**
* Returns the number of elements in the matrix, sixteen.
*/
62
inline int UnalignedLMatrix4f::get_num_components(void) const;
3191 11 operator == 0 4 3578 31 UnalignedLMatrix4f::operator == 0 1 1453 0
83
inline bool UnalignedLMatrix4f::operator ==(UnalignedLMatrix4f const &other) const;
3192 11 operator != 0 4 3578 31 UnalignedLMatrix4f::operator != 0 1 1454 0
83
inline bool UnalignedLMatrix4f::operator !=(UnalignedLMatrix4f const &other) const;
3193 14 get_class_type 0 4 3578 34 UnalignedLMatrix4f::get_class_type 0 1 1455 0
59
static TypeHandle UnalignedLMatrix4f::get_class_type(void);
3194 19 ~UnalignedLMatrix4f 0 4 3578 39 UnalignedLMatrix4f::~UnalignedLMatrix4f 0 0 0
46
UnalignedLMatrix4f::~UnalignedLMatrix4f(void);
3195 11 operator [] 0 4 3582 27 LMatrix3d::Row::operator [] 0 2 1558 1559 10
/**
*
*/
106
inline double LMatrix3d::Row::operator [](int i) const;
inline double &LMatrix3d::Row::operator [](int i);
3196 4 size 0 4 3582 20 LMatrix3d::Row::size 0 1 1560 58
/**
* Returns 3: the number of columns of a LMatrix3.
*/
45
static inline int LMatrix3d::Row::size(void);
3197 17 operator typecast 0 132 3582 33 LMatrix3d::Row::operator typecast 0 1 1561 0
47
inline operator LVecBase3d const &(void) const;
3198 3 Row 0 4 3582 19 LMatrix3d::Row::Row 0 1 1557 60
/**
* Defines a row-level index accessor to the matrix.
*/
61
inline LMatrix3d::Row::Row(LMatrix3d::Row const &) = default;
3199 4 ~Row 0 4 3582 20 LMatrix3d::Row::~Row 0 0 0
27
LMatrix3d::Row::~Row(void);
3200 11 operator [] 0 4 3583 28 LMatrix3d::CRow::operator [] 0 1 1563 0
56
inline double LMatrix3d::CRow::operator [](int i) const;
3201 4 size 0 4 3583 21 LMatrix3d::CRow::size 0 1 1564 58
/**
* Returns 3: the number of columns of a LMatrix3.
*/
46
static inline int LMatrix3d::CRow::size(void);
3202 17 operator typecast 0 132 3583 34 LMatrix3d::CRow::operator typecast 0 1 1565 0
47
inline operator LVecBase3d const &(void) const;
3203 4 CRow 0 4 3583 21 LMatrix3d::CRow::CRow 0 1 1562 63
/**
* Defines a row-level constant accessor to the matrix.
*/
64
inline LMatrix3d::CRow::CRow(LMatrix3d::CRow const &) = default;
3204 5 ~CRow 0 4 3583 22 LMatrix3d::CRow::~CRow 0 0 0
29
LMatrix3d::CRow::~CRow(void);
3205 9 LMatrix3d 0 4 3580 20 LMatrix3d::LMatrix3d 0 4 1456 1457 1458 1459 96
/**
*
*/
/**
*
*/
/**
*
*/
/**
* Constructs the matrix from three individual rows.
*/
286
inline LMatrix3d::LMatrix3d(void);
inline LMatrix3d::LMatrix3d(LMatrix3d const &other);
inline LMatrix3d::LMatrix3d(double , double , double , double , double , double , double , double , double );
inline LMatrix3d::LMatrix3d(LVecBase3d const &, LVecBase3d const &, LVecBase3d const &);
3206 10 operator = 0 4 3580 21 LMatrix3d::operator = 0 2 1460 1461 22
/**
*
*/
/**
*
*/
112
inline void LMatrix3d::operator =(LMatrix3d const &other);
inline void LMatrix3d::operator =(double fill_value);
3207 12 operator new 0 4 3580 23 LMatrix3d::operator new 0 1 1462 0
122
inline void *LMatrix3d::operator new(std::size_t size);
inline void *LMatrix3d::operator new(std::size_t size, void *ptr);
3208 15 operator delete 0 4 3580 26 LMatrix3d::operator delete 0 0 0
106
inline void LMatrix3d::operator delete(void *ptr);
inline void LMatrix3d::operator delete(void *, void *);
3209 12 validate_ptr 0 4 3580 23 LMatrix3d::validate_ptr 0 0 0
60
static inline bool LMatrix3d::validate_ptr(void const *ptr);
3210 10 __reduce__ 0 4 3580 21 LMatrix3d::__reduce__ 0 1 1463 0
61
inline PyObject *LMatrix3d::__reduce__(PyObject *self) const;
3211 4 fill 0 4 3580 15 LMatrix3d::fill 0 1 1464 157
/**
* Sets each element of the matrix to the indicated fill_value. This is of
* questionable value, but is sometimes useful when initializing to zero.
*/
40
void LMatrix3d::fill(double fill_value);
3212 3 set 0 4 3580 14 LMatrix3d::set 0 1 1465 10
/**
*
*/
135
inline void LMatrix3d::set(double e00, double e01, double e02, double e10, double e11, double e12, double e20, double e21, double e22);
3213 11 operator [] 0 4 3580 22 LMatrix3d::operator [] 0 2 1466 1467 0
112
inline LMatrix3d::CRow LMatrix3d::operator [](int i) const;
inline LMatrix3d::Row LMatrix3d::operator [](int i);
3214 4 size 0 4 3580 15 LMatrix3d::size 0 1 1468 55
/**
* Returns 3: the number of rows of a LMatrix3.
*/
40
static inline int LMatrix3d::size(void);
3215 7 set_row 0 4 3580 18 LMatrix3d::set_row 0 2 1469 1470 193
/**
* Replaces the indicated row of the matrix from a three-component vector.
*/
/**
* Replaces the indicated row of the matrix from a two-component vector,
* ignoring the last column.
*/
123
inline void LMatrix3d::set_row(int row, LVecBase3d const &v);
inline void LMatrix3d::set_row(int row, LVecBase2d const &v);
3216 7 set_col 0 4 3580 18 LMatrix3d::set_col 0 2 1471 1472 196
/**
* Replaces the indicated column of the matrix from a three-component vector.
*/
/**
* Replaces the indicated column of the matrix from a two-component vector,
* ignoring the last row.
*/
123
inline void LMatrix3d::set_col(int col, LVecBase3d const &v);
inline void LMatrix3d::set_col(int col, LVecBase2d const &v);
3217 7 get_row 0 4 3580 18 LMatrix3d::get_row 0 2 1473 1474 192
// these versions inline better
/**
* Returns the indicated row of the matrix as a three-component vector.
*/
/**
* Stores the indicated row of the matrix as a three-component vector.
*/
123
inline LVecBase3d LMatrix3d::get_row(int row) const;
inline void LMatrix3d::get_row(LVecBase3d &result_vec, int row) const;
3218 7 get_col 0 4 3580 18 LMatrix3d::get_col 0 1 1475 82
/**
* Returns the indicated column of the matrix as a three-component vector.
*/
52
inline LVecBase3d LMatrix3d::get_col(int col) const;
3219 0 0 0 0 0 0 0 0
0
3220 0 0 0 0 0 0 0 0
0
3221 8 get_row2 0 4 3580 19 LMatrix3d::get_row2 0 1 1476 106
/**
* Returns the indicated row of the matrix as a two-component vector, ignoring
* the last column.
*/
53
inline LVecBase2d LMatrix3d::get_row2(int row) const;
3222 8 get_col2 0 4 3580 19 LMatrix3d::get_col2 0 1 1477 106
/**
* Returns the indicated column of the matrix as a two-component vector,
* ignoring the last row.
*/
53
inline LVecBase2d LMatrix3d::get_col2(int col) const;
3223 11 operator () 0 4 3580 22 LMatrix3d::operator () 0 2 1478 1479 10
/**
*
*/
118
inline double &LMatrix3d::operator ()(int row, int col);
inline double LMatrix3d::operator ()(int row, int col) const;
3224 6 is_nan 0 4 3580 17 LMatrix3d::is_nan 0 1 1480 91
/**
* Returns true if any component of the matrix is not-a-number, false
* otherwise.
*/
42
inline bool LMatrix3d::is_nan(void) const;
3225 11 is_identity 0 4 3580 22 LMatrix3d::is_identity 0 1 1481 93
/**
* Returns true if this is (close enough to) the identity matrix, false
* otherwise.
*/
47
inline bool LMatrix3d::is_identity(void) const;
3226 8 get_cell 0 4 3580 19 LMatrix3d::get_cell 0 1 1482 54
/**
* Returns a particular element of the matrix.
*/
58
inline double LMatrix3d::get_cell(int row, int col) const;
3227 8 set_cell 0 4 3580 19 LMatrix3d::set_cell 0 1 1483 54
/**
* Changes a particular element of the matrix.
*/
64
inline void LMatrix3d::set_cell(int row, int col, double value);
3228 8 get_data 0 4 3580 19 LMatrix3d::get_data 0 1 1484 162
/**
* Returns the address of the first of the nine data elements in the matrix.
* The remaining elements occupy the next eight positions in row-major order.
*/
53
inline double const *LMatrix3d::get_data(void) const;
3229 18 get_num_components 0 4 3580 29 LMatrix3d::get_num_components 0 1 1485 62
/**
* Returns the number of elements in the matrix, nine.
*/
53
inline int LMatrix3d::get_num_components(void) const;
3230 10 operator < 0 4 3580 21 LMatrix3d::operator < 0 1 1486 0
64
inline bool LMatrix3d::operator <(LMatrix3d const &other) const;
3231 11 operator == 0 4 3580 22 LMatrix3d::operator == 0 1 1487 0
65
inline bool LMatrix3d::operator ==(LMatrix3d const &other) const;
3232 11 operator != 0 4 3580 22 LMatrix3d::operator != 0 1 1488 0
65
inline bool LMatrix3d::operator !=(LMatrix3d const &other) const;
3233 10 compare_to 0 4 3580 21 LMatrix3d::compare_to 0 2 1489 1490 333
/**
* This flavor of compare_to uses a default threshold value based on the
* numeric type.
*/
/**
* Sorts matrices lexicographically, componentwise. Returns a number less
* than 0 if this matrix sorts before the other one, greater than zero if it
* sorts after, 0 if they are equivalent (within the indicated tolerance).
*/
138
inline int LMatrix3d::compare_to(LMatrix3d const &other) const;
int LMatrix3d::compare_to(LMatrix3d const &other, double threshold) const;
3234 8 get_hash 0 4 3580 19 LMatrix3d::get_hash 0 2 1491 1492 100
/**
* Returns a suitable hash for phash_map.
*/
/**
* Returns a suitable hash for phash_map.
*/
115
inline std::size_t LMatrix3d::get_hash(void) const;
inline std::size_t LMatrix3d::get_hash(double threshold) const;
3235 8 add_hash 0 4 3580 19 LMatrix3d::add_hash 0 2 1493 1494 100
/**
* Adds the vector into the running hash.
*/
/**
* Adds the vector into the running hash.
*/
145
inline std::size_t LMatrix3d::add_hash(std::size_t hash) const;
inline std::size_t LMatrix3d::add_hash(std::size_t hash, double threshold) const;
3236 5 xform 0 4 3580 16 LMatrix3d::xform 0 1 1495 52
/**
* 3-component vector or point times matrix.
*/
62
inline LVecBase3d LMatrix3d::xform(LVecBase3d const &v) const;
3237 11 xform_point 0 4 3580 22 LMatrix3d::xform_point 0 1 1496 162
/**
* The matrix transforms a 2-component point (including translation component)
* and returns the result. This assumes the matrix is an affine transform.
*/
68
inline LVecBase2d LMatrix3d::xform_point(LVecBase2d const &v) const;
3238 9 xform_vec 0 4 3580 20 LMatrix3d::xform_vec 0 2 1497 1498 357
/**
* The matrix transforms a 2-component vector (without translation component)
* and returns the result. This assumes the matrix is an affine transform.
*/
/**
* The matrix transforms a 3-component vector and returns the result. This
* assumes the matrix is an orthonormal transform.
*
* In practice, this is the same computation as xform().
*/
133
inline LVecBase2d LMatrix3d::xform_vec(LVecBase2d const &v) const;
inline LVecBase3d LMatrix3d::xform_vec(LVecBase3d const &v) const;
3239 17 xform_vec_general 0 4 3580 28 LMatrix3d::xform_vec_general 0 1 1499 142
/**
* The matrix transforms a 3-component vector (without translation component)
* and returns the result, as a fully general operation.
*/
74
inline LVecBase3d LMatrix3d::xform_vec_general(LVecBase3d const &v) const;
3240 14 xform_in_place 0 4 3580 25 LMatrix3d::xform_in_place 0 1 1500 52
/**
* 3-component vector or point times matrix.
*/
59
inline void LMatrix3d::xform_in_place(LVecBase3d &v) const;
3241 20 xform_point_in_place 0 4 3580 31 LMatrix3d::xform_point_in_place 0 1 1501 139
/**
* The matrix transforms a 2-component point (including translation
* component). This assumes the matrix is an affine transform.
*/
65
inline void LMatrix3d::xform_point_in_place(LVecBase2d &v) const;
3242 18 xform_vec_in_place 0 4 3580 29 LMatrix3d::xform_vec_in_place 0 2 1502 1503 310
/**
* The matrix transforms a 2-component vector (without translation component).
* This assumes the matrix is an affine transform.
*/
/**
* The matrix transforms a 3-component vector. This assumes the matrix is an
* orthonormal transform.
*
* In practice, this is the same computation as xform().
*/
127
inline void LMatrix3d::xform_vec_in_place(LVecBase2d &v) const;
inline void LMatrix3d::xform_vec_in_place(LVecBase3d &v) const;
3243 26 xform_vec_general_in_place 0 4 3580 37 LMatrix3d::xform_vec_general_in_place 0 1 1504 119
/**
* The matrix transforms a 3-component vector (without translation component),
* as a fully general operation.
*/
71
inline void LMatrix3d::xform_vec_general_in_place(LVecBase3d &v) const;
3244 8 multiply 0 4 3580 19 LMatrix3d::multiply 0 1 1505 52
// this = other1 * other2
// this = other1 * other2
82
inline void LMatrix3d::multiply(LMatrix3d const &other1, LMatrix3d const &other2);
3245 10 operator * 0 4 3580 21 LMatrix3d::operator * 0 2 1506 1507 0
130
inline LMatrix3d LMatrix3d::operator *(LMatrix3d const &other) const;
inline LMatrix3d LMatrix3d::operator *(double scalar) const;
3246 10 operator / 0 4 3580 21 LMatrix3d::operator / 0 1 1508 0
60
inline LMatrix3d LMatrix3d::operator /(double scalar) const;
3247 11 operator += 0 4 3580 22 LMatrix3d::operator += 0 1 1509 63
/**
* Performs a memberwise addition between two matrices.
*/
65
inline LMatrix3d &LMatrix3d::operator +=(LMatrix3d const &other);
3248 11 operator -= 0 4 3580 22 LMatrix3d::operator -= 0 1 1510 66
/**
* Performs a memberwise subtraction between two matrices.
*/
65
inline LMatrix3d &LMatrix3d::operator -=(LMatrix3d const &other);
3249 11 operator *= 0 4 3580 22 LMatrix3d::operator *= 0 2 1511 1512 51
/**
*
*/
/**
* Performs a memberwise scale.
*/
122
inline LMatrix3d &LMatrix3d::operator *=(LMatrix3d const &other);
inline LMatrix3d &LMatrix3d::operator *=(double scalar);
3250 11 operator /= 0 4 3580 22 LMatrix3d::operator /= 0 1 1513 39
/**
* Performs a memberwise scale.
*/
56
inline LMatrix3d &LMatrix3d::operator /=(double scalar);
3251 18 componentwise_mult 0 4 3580 29 LMatrix3d::componentwise_mult 0 1 1514 10
/**
*
*/
66
inline void LMatrix3d::componentwise_mult(LMatrix3d const &other);
3252 11 determinant 0 4 3580 22 LMatrix3d::determinant 0 1 1515 49
/**
* Returns the determinant of the matrix.
*/
49
inline double LMatrix3d::determinant(void) const;
3253 14 transpose_from 0 4 3580 25 LMatrix3d::transpose_from 0 1 1516 10
/**
*
*/
62
inline void LMatrix3d::transpose_from(LMatrix3d const &other);
3254 18 transpose_in_place 0 4 3580 29 LMatrix3d::transpose_in_place 0 1 1517 10
/**
*
*/
48
inline void LMatrix3d::transpose_in_place(void);
3255 11 invert_from 0 4 3580 22 LMatrix3d::invert_from 0 1 1518 463
/**
* Computes the inverse of the other matrix, and stores the result in this
* matrix. This is a fully general operation and makes no assumptions about
* the type of transform represented by the matrix.
*
* The other matrix must be a different object than this matrix. However, if
* you need to invert a matrix in place, see invert_in_place.
*
* The return value is true if the matrix was successfully inverted, false if
* there was a singularity.
*/
59
inline bool LMatrix3d::invert_from(LMatrix3d const &other);
3256 15 invert_in_place 0 4 3580 26 LMatrix3d::invert_in_place 0 1 1519 119
/**
* Inverts the current matrix. Returns true if the inverse is successful,
* false if the matrix was singular.
*/
45
inline bool LMatrix3d::invert_in_place(void);
3257 21 invert_transpose_from 0 4 3580 32 LMatrix3d::invert_transpose_from 0 2 1520 1521 230
/**
* Simultaneously computes the inverse of the indicated matrix, and then the
* transpose of that inverse.
*/
/**
* Simultaneously computes the inverse of the indicated matrix, and then the
* transpose of that inverse.
*/
139
inline bool LMatrix3d::invert_transpose_from(LMatrix3d const &other);
inline bool LMatrix3d::invert_transpose_from(LMatrix4d const &other);
3258 9 ident_mat 0 4 3580 20 LMatrix3d::ident_mat 0 1 1522 147
/**
* Returns an identity matrix.
*
* This function definition must appear first, since some inline functions
* below take advantage of it.
*/
58
static inline LMatrix3d const &LMatrix3d::ident_mat(void);
3259 17 set_translate_mat 0 4 3580 28 LMatrix3d::set_translate_mat 0 1 1523 74
/**
* Fills mat with a matrix that applies the indicated translation.
*/
66
inline void LMatrix3d::set_translate_mat(LVecBase2d const &trans);
3260 14 set_rotate_mat 0 4 3580 25 LMatrix3d::set_rotate_mat 0 2 1524 1525 225
/**
* Fills mat with a matrix that rotates by the given angle in degrees
* counterclockwise.
*/
/**
* Fills mat with a matrix that rotates by the given angle in degrees
* counterclockwise about the indicated vector.
*/
158
inline void LMatrix3d::set_rotate_mat(double angle);
void LMatrix3d::set_rotate_mat(double angle, LVecBase3d const &axis, CoordinateSystem cs = ::CS_default);
3261 13 set_scale_mat 0 4 3580 24 LMatrix3d::set_scale_mat 0 2 1526 1527 194
/**
* Fills mat with a matrix that applies the indicated scale in each of the two
* axes.
*/
/**
* Fills mat with a matrix that applies the indicated scale in each of the
* three axes.
*/
125
inline void LMatrix3d::set_scale_mat(LVecBase2d const &scale);
inline void LMatrix3d::set_scale_mat(LVecBase3d const &scale);
3262 13 translate_mat 0 4 3580 24 LMatrix3d::translate_mat 0 2 1528 1529 136
/**
* Returns a matrix that applies the indicated translation.
*/
/**
* Returns a matrix that applies the indicated translation.
*/
146
static inline LMatrix3d LMatrix3d::translate_mat(LVecBase2d const &trans);
static inline LMatrix3d LMatrix3d::translate_mat(double tx, double ty);
3263 10 rotate_mat 0 4 3580 21 LMatrix3d::rotate_mat 0 2 1530 1531 211
/**
* Returns a matrix that rotates by the given angle in degrees
* counterclockwise.
*/
/**
* Returns a matrix that rotates by the given angle in degrees
* counterclockwise about the indicated vector.
*/
181
static inline LMatrix3d LMatrix3d::rotate_mat(double angle);
static inline LMatrix3d LMatrix3d::rotate_mat(double angle, LVecBase3d const &axis, CoordinateSystem cs = ::CS_default);
3264 9 scale_mat 0 4 3580 20 LMatrix3d::scale_mat 0 4 1532 1533 1534 1535 356
/**
* Returns a matrix that applies the indicated scale in each of the two axes.
*/
/**
* Returns a matrix that applies the indicated scale in each of the two axes.
*/
/**
* Returns a matrix that applies the indicated scale in each of the three
* axes.
*/
/**
* Returns a matrix that applies the indicated scale in each of the three
* axes.
*/
288
static inline LMatrix3d LMatrix3d::scale_mat(LVecBase2d const &scale);
static inline LMatrix3d LMatrix3d::scale_mat(double sx, double sy);
static inline LMatrix3d LMatrix3d::scale_mat(LVecBase3d const &scale);
static inline LMatrix3d LMatrix3d::scale_mat(double sx, double sy, double sz);
3265 23 set_rotate_mat_normaxis 0 4 3580 34 LMatrix3d::set_rotate_mat_normaxis 0 1 1536 163
/**
* Fills mat with a matrix that rotates by the given angle in degrees
* counterclockwise about the indicated vector. Assumes axis has been
* normalized.
*/
114
void LMatrix3d::set_rotate_mat_normaxis(double angle, LVecBase3d const &axis, CoordinateSystem cs = ::CS_default);
3266 19 rotate_mat_normaxis 0 4 3580 30 LMatrix3d::rotate_mat_normaxis 0 1 1537 156
/**
* Returns a matrix that rotates by the given angle in degrees
* counterclockwise about the indicated vector. Assumes axis has been
* normalized.
*/
129
static inline LMatrix3d LMatrix3d::rotate_mat_normaxis(double angle, LVecBase3d const &axis, CoordinateSystem cs = ::CS_default);
3267 13 set_shear_mat 0 4 3580 24 LMatrix3d::set_shear_mat 0 1 1538 99
/**
* Fills mat with a matrix that applies the indicated shear in each of the
* three planes.
*/
98
inline void LMatrix3d::set_shear_mat(LVecBase3d const &shear, CoordinateSystem cs = ::CS_default);
3268 9 shear_mat 0 4 3580 20 LMatrix3d::shear_mat 0 2 1539 1540 186
/**
* Returns a matrix that applies the indicated shear in each of the three
* planes.
*/
/**
* Returns a matrix that applies the indicated shear in each of the three
* planes.
*/
227
static inline LMatrix3d LMatrix3d::shear_mat(LVecBase3d const &shear, CoordinateSystem cs = ::CS_default);
static inline LMatrix3d LMatrix3d::shear_mat(double shxy, double shxz, double shyz, CoordinateSystem cs = ::CS_default);
3269 19 set_scale_shear_mat 0 4 3580 30 LMatrix3d::set_scale_shear_mat 0 1 1541 78
/**
* Fills mat with a matrix that applies the indicated scale and shear.
*/
122
void LMatrix3d::set_scale_shear_mat(LVecBase3d const &scale, LVecBase3d const &shear, CoordinateSystem cs = ::CS_default);
3270 15 scale_shear_mat 0 4 3580 26 LMatrix3d::scale_shear_mat 0 2 1542 1543 144
/**
* Returns a matrix that applies the indicated scale and shear.
*/
/**
* Returns a matrix that applies the indicated scale and shear.
*/
297
static inline LMatrix3d LMatrix3d::scale_shear_mat(LVecBase3d const &scale, LVecBase3d const &shear, CoordinateSystem cs = ::CS_default);
static inline LMatrix3d LMatrix3d::scale_shear_mat(double sx, double sy, double sz, double shxy, double shxz, double shyz, CoordinateSystem cs = ::CS_default);
3271 11 convert_mat 0 4 3580 22 LMatrix3d::convert_mat 0 1 1544 119
/**
* Returns a matrix that transforms from the indicated coordinate system to
* the indicated coordinate system.
*/
91
static LMatrix3d const &LMatrix3d::convert_mat(CoordinateSystem from, CoordinateSystem to);
3272 12 almost_equal 0 4 3580 23 LMatrix3d::almost_equal 0 2 1545 1546 212
/**
* Returns true if two matrices are memberwise equal within a default
* tolerance based on the numeric type.
*/
/**
* Returns true if two matrices are memberwise equal within a specified
* tolerance.
*/
144
bool LMatrix3d::almost_equal(LMatrix3d const &other, double threshold) const;
inline bool LMatrix3d::almost_equal(LMatrix3d const &other) const;
3273 6 output 0 4 3580 17 LMatrix3d::output 0 1 1547 10
/**
*
*/
48
void LMatrix3d::output(std::ostream &out) const;
3274 5 write 0 4 3580 16 LMatrix3d::write 0 1 1548 10
/**
*
*/
69
void LMatrix3d::write(std::ostream &out, int indent_level = 0) const;
3275 8 __repr__ 0 4 3580 19 LMatrix3d::__repr__ 0 1 1549 0
51
inline std::string LMatrix3d::__repr__(void) const;
3276 13 generate_hash 0 4 3580 24 LMatrix3d::generate_hash 0 2 1550 1551 120
/**
* Adds the vector to the indicated hash generator.
*/
/**
* Adds the vector to the indicated hash generator.
*/
162
inline void LMatrix3d::generate_hash(ChecksumHashGenerator &hashgen) const;
void LMatrix3d::generate_hash(ChecksumHashGenerator &hashgen, double threshold) const;
3277 20 write_datagram_fixed 0 4 3580 31 LMatrix3d::write_datagram_fixed 0 1 1552 332
/**
* Writes the matrix to the Datagram using add_float32() or add_float64(),
* depending on the type of floats in the matrix, regardless of the setting of
* Datagram::set_stdfloat_double(). This is appropriate when you want to
* write a fixed-width value to the datagram, especially when you are not
* writing a bam file.
*/
66
void LMatrix3d::write_datagram_fixed(Datagram &destination) const;
3278 19 read_datagram_fixed 0 4 3580 30 LMatrix3d::read_datagram_fixed 0 1 1553 114
/**
* Reads the matrix from the Datagram using get_float32() or get_float64().
* See write_datagram_fixed().
*/
60
void LMatrix3d::read_datagram_fixed(DatagramIterator &scan);
3279 14 write_datagram 0 4 3580 25 LMatrix3d::write_datagram 0 1 1554 205
/**
* Writes the matrix to the Datagram using add_stdfloat(). This is
* appropriate when you want to write the matrix using the standard width
* setting, especially when you are writing a bam file.
*/
60
void LMatrix3d::write_datagram(Datagram &destination) const;
3280 13 read_datagram 0 4 3580 24 LMatrix3d::read_datagram 0 1 1555 67
/**
* Reads the matrix from the Datagram using get_stdfloat().
*/
56
void LMatrix3d::read_datagram(DatagramIterator &source);
3281 14 get_class_type 0 4 3580 25 LMatrix3d::get_class_type 0 1 1556 0
50
static TypeHandle LMatrix3d::get_class_type(void);
3282 10 ~LMatrix3d 0 4 3580 21 LMatrix3d::~LMatrix3d 0 0 0
28
LMatrix3d::~LMatrix3d(void);
3283 11 operator [] 0 4 3586 27 LMatrix4d::Row::operator [] 0 2 1678 1679 10
/**
*
*/
106
inline double LMatrix4d::Row::operator [](int i) const;
inline double &LMatrix4d::Row::operator [](int i);
3284 4 size 0 4 3586 20 LMatrix4d::Row::size 0 1 1680 58
/**
* Returns 4: the number of columns of a LMatrix4.
*/
45
static inline int LMatrix4d::Row::size(void);
3285 17 operator typecast 0 132 3586 33 LMatrix4d::Row::operator typecast 0 1 1681 0
47
inline operator LVecBase4d const &(void) const;
3286 3 Row 0 4 3586 19 LMatrix4d::Row::Row 0 1 1677 60
/**
* Defines a row-level index accessor to the matrix.
*/
61
inline LMatrix4d::Row::Row(LMatrix4d::Row const &) = default;
3287 4 ~Row 0 4 3586 20 LMatrix4d::Row::~Row 0 0 0
27
LMatrix4d::Row::~Row(void);
3288 11 operator [] 0 4 3587 28 LMatrix4d::CRow::operator [] 0 1 1683 0
56
inline double LMatrix4d::CRow::operator [](int i) const;
3289 4 size 0 4 3587 21 LMatrix4d::CRow::size 0 1 1684 58
/**
* Returns 4: the number of columns of a LMatrix4.
*/
46
static inline int LMatrix4d::CRow::size(void);
3290 17 operator typecast 0 132 3587 34 LMatrix4d::CRow::operator typecast 0 1 1685 0
47
inline operator LVecBase4d const &(void) const;
3291 4 CRow 0 4 3587 21 LMatrix4d::CRow::CRow 0 1 1682 63
/**
* Defines a row-level constant accessor to the matrix.
*/
64
inline LMatrix4d::CRow::CRow(LMatrix4d::CRow const &) = default;
3292 5 ~CRow 0 4 3587 22 LMatrix4d::CRow::~CRow 0 0 0
29
LMatrix4d::CRow::~CRow(void);
3293 9 LMatrix4d 0 4 3584 20 LMatrix4d::LMatrix4d 0 7 1566 1567 1568 1569 1570 1571 1572 228
// Construct a 4x4 matrix given a 3x3 rotation matrix and an optional
// translation component.
/**
*
*/
/**
*
*/
/**
*
*/
/**
*
*/
/**
* Constructs the matrix from four individual rows.
*/
/**
*
*/
/**
*
*/
564
inline LMatrix4d::LMatrix4d(void);
inline LMatrix4d::LMatrix4d(LMatrix4d const &other);
inline LMatrix4d::LMatrix4d(UnalignedLMatrix4d const &other);
inline LMatrix4d::LMatrix4d(double , double , double , double , double , double , double , double , double , double , double , double , double , double , double , double );
inline LMatrix4d::LMatrix4d(LVecBase4d const &, LVecBase4d const &, LVecBase4d const &, LVecBase4d const &);
inline LMatrix4d::LMatrix4d(LMatrix3d const &upper3);
inline LMatrix4d::LMatrix4d(LMatrix3d const &upper3, LVecBase3d const &trans);
3294 10 operator = 0 4 3584 21 LMatrix4d::operator = 0 3 1573 1574 1575 34
/**
*
*/
/**
*
*/
/**
*
*/
180
inline void LMatrix4d::operator =(LMatrix4d const &other);
inline void LMatrix4d::operator =(UnalignedLMatrix4d const &other);
inline void LMatrix4d::operator =(double fill_value);
3295 12 operator new 0 4 3584 23 LMatrix4d::operator new 0 1 1576 0
122
inline void *LMatrix4d::operator new(std::size_t size);
inline void *LMatrix4d::operator new(std::size_t size, void *ptr);
3296 15 operator delete 0 4 3584 26 LMatrix4d::operator delete 0 0 0
106
inline void LMatrix4d::operator delete(void *ptr);
inline void LMatrix4d::operator delete(void *, void *);
3297 12 validate_ptr 0 4 3584 23 LMatrix4d::validate_ptr 0 0 0
60
static inline bool LMatrix4d::validate_ptr(void const *ptr);
3298 10 __reduce__ 0 4 3584 21 LMatrix4d::__reduce__ 0 1 1577 0
61
inline PyObject *LMatrix4d::__reduce__(PyObject *self) const;
3299 4 fill 0 4 3584 15 LMatrix4d::fill 0 1 1578 157
/**
* Sets each element of the matrix to the indicated fill_value. This is of
* questionable value, but is sometimes useful when initializing to zero.
*/
47
inline void LMatrix4d::fill(double fill_value);
3300 3 set 0 4 3584 14 LMatrix4d::set 0 1 1579 10
/**
*
*/
219
inline void LMatrix4d::set(double e00, double e01, double e02, double e03, double e10, double e11, double e12, double e13, double e20, double e21, double e22, double e23, double e30, double e31, double e32, double e33);
3301 11 set_upper_3 0 4 3584 22 LMatrix4d::set_upper_3 0 1 1580 87
// Get and set the upper 3x3 rotation matrix.
/**
* Sets the upper 3x3 submatrix.
*/
60
inline void LMatrix4d::set_upper_3(LMatrix3d const &upper3);
3302 11 get_upper_3 0 4 3584 22 LMatrix4d::get_upper_3 0 1 1581 45
/**
* Retrieves the upper 3x3 submatrix.
*/
52
inline LMatrix3d LMatrix4d::get_upper_3(void) const;
3303 11 operator [] 0 4 3584 22 LMatrix4d::operator [] 0 2 1582 1583 0
112
inline LMatrix4d::CRow LMatrix4d::operator [](int i) const;
inline LMatrix4d::Row LMatrix4d::operator [](int i);
3304 4 size 0 4 3584 15 LMatrix4d::size 0 1 1584 55
/**
* Returns 4: the number of rows of a LMatrix4.
*/
40
static inline int LMatrix4d::size(void);
3305 7 set_row 0 4 3584 18 LMatrix4d::set_row 0 2 1585 1586 173
/**
* Replaces the indicated row of the matrix.
*/
/**
* Replaces the indicated row of the matrix with the indicated 3-component
* vector, ignoring the last column.
*/
123
inline void LMatrix4d::set_row(int row, LVecBase4d const &v);
inline void LMatrix4d::set_row(int row, LVecBase3d const &v);
3306 7 set_col 0 4 3584 18 LMatrix4d::set_col 0 2 1587 1588 176
/**
* Replaces the indicated column of the matrix.
*/
/**
* Replaces the indicated column of the matrix with the indicated 3-component
* vector, ignoring the last row.
*/
123
inline void LMatrix4d::set_col(int col, LVecBase4d const &v);
inline void LMatrix4d::set_col(int col, LVecBase3d const &v);
3307 7 get_row 0 4 3584 18 LMatrix4d::get_row 0 2 1589 1590 186
// these versions inline better
/**
* Retrieves the indicated row of the matrix as a 4-component vector.
*/
/**
* Stores the indicated row of the matrix as a 4-component vector.
*/
123
inline LVecBase4d LMatrix4d::get_row(int row) const;
inline void LMatrix4d::get_row(LVecBase4d &result_vec, int row) const;
3308 7 get_col 0 4 3584 18 LMatrix4d::get_col 0 1 1591 80
/**
* Retrieves the indicated column of the matrix as a 4-component vector.
*/
52
inline LVecBase4d LMatrix4d::get_col(int col) const;
3309 8 get_row3 0 4 3584 19 LMatrix4d::get_row3 0 2 1592 1593 205
/**
* Retrieves the row column of the matrix as a 3-component vector, ignoring
* the last column.
*/
/**
* Stores the row column of the matrix as a 3-component vector, ignoring the
* last column.
*/
125
inline LVecBase3d LMatrix4d::get_row3(int row) const;
inline void LMatrix4d::get_row3(LVecBase3d &result_vec, int row) const;
3310 0 0 0 0 0 0 0 0
0
3311 0 0 0 0 0 0 0 0
0
3312 8 get_col3 0 4 3584 19 LMatrix4d::get_col3 0 1 1594 106
/**
* Retrieves the indicated column of the matrix as a 3-component vector,
* ignoring the last row.
*/
53
inline LVecBase3d LMatrix4d::get_col3(int col) const;
3313 11 operator () 0 4 3584 22 LMatrix4d::operator () 0 2 1595 1596 10
/**
*
*/
118
inline double &LMatrix4d::operator ()(int row, int col);
inline double LMatrix4d::operator ()(int row, int col) const;
3314 6 is_nan 0 4 3584 17 LMatrix4d::is_nan 0 1 1597 91
/**
* Returns true if any component of the matrix is not-a-number, false
* otherwise.
*/
42
inline bool LMatrix4d::is_nan(void) const;
3315 11 is_identity 0 4 3584 22 LMatrix4d::is_identity 0 1 1598 93
/**
* Returns true if this is (close enough to) the identity matrix, false
* otherwise.
*/
47
inline bool LMatrix4d::is_identity(void) const;
3316 8 get_cell 0 4 3584 19 LMatrix4d::get_cell 0 1 1599 54
/**
* Returns a particular element of the matrix.
*/
58
inline double LMatrix4d::get_cell(int row, int col) const;
3317 8 set_cell 0 4 3584 19 LMatrix4d::set_cell 0 1 1600 54
/**
* Changes a particular element of the matrix.
*/
64
inline void LMatrix4d::set_cell(int row, int col, double value);
3318 8 get_data 0 4 3584 19 LMatrix4d::get_data 0 1 1601 162
/**
* Returns the address of the first of the nine data elements in the matrix.
* The remaining elements occupy the next eight positions in row-major order.
*/
53
inline double const *LMatrix4d::get_data(void) const;
3319 18 get_num_components 0 4 3584 29 LMatrix4d::get_num_components 0 1 1602 60
/**
* Returns the number of elements in the matrix, 16.
*/
53
inline int LMatrix4d::get_num_components(void) const;
3320 5 begin 0 4 3584 16 LMatrix4d::begin 0 2 1603 1604 204
/**
* Returns an iterator that may be used to traverse the elements of the
* matrix, STL-style.
*/
/**
* Returns an iterator that may be used to traverse the elements of the
* matrix, STL-style.
*/
113
inline LMatrix4d::iterator LMatrix4d::begin(void);
inline LMatrix4d::const_iterator LMatrix4d::begin(void) const;
3321 3 end 0 4 3584 14 LMatrix4d::end 0 2 1605 1606 204
/**
* Returns an iterator that may be used to traverse the elements of the
* matrix, STL-style.
*/
/**
* Returns an iterator that may be used to traverse the elements of the
* matrix, STL-style.
*/
109
inline LMatrix4d::iterator LMatrix4d::end(void);
inline LMatrix4d::const_iterator LMatrix4d::end(void) const;
3322 10 operator < 0 4 3584 21 LMatrix4d::operator < 0 1 1607 0
64
inline bool LMatrix4d::operator <(LMatrix4d const &other) const;
3323 11 operator == 0 4 3584 22 LMatrix4d::operator == 0 1 1608 0
65
inline bool LMatrix4d::operator ==(LMatrix4d const &other) const;
3324 11 operator != 0 4 3584 22 LMatrix4d::operator != 0 1 1609 0
65
inline bool LMatrix4d::operator !=(LMatrix4d const &other) const;
3325 10 compare_to 0 4 3584 21 LMatrix4d::compare_to 0 2 1610 1611 333
/**
* This flavor of compare_to uses a default threshold value based on the
* numeric type.
*/
/**
* Sorts matrices lexicographically, componentwise. Returns a number less
* than 0 if this matrix sorts before the other one, greater than zero if it
* sorts after, 0 if they are equivalent (within the indicated tolerance).
*/
138
inline int LMatrix4d::compare_to(LMatrix4d const &other) const;
int LMatrix4d::compare_to(LMatrix4d const &other, double threshold) const;
3326 8 get_hash 0 4 3584 19 LMatrix4d::get_hash 0 2 1612 1613 100
/**
* Returns a suitable hash for phash_map.
*/
/**
* Returns a suitable hash for phash_map.
*/
115
inline std::size_t LMatrix4d::get_hash(void) const;
inline std::size_t LMatrix4d::get_hash(double threshold) const;
3327 8 add_hash 0 4 3584 19 LMatrix4d::add_hash 0 2 1614 1615 100
/**
* Adds the vector into the running hash.
*/
/**
* Adds the vector into the running hash.
*/
145
inline std::size_t LMatrix4d::add_hash(std::size_t hash) const;
inline std::size_t LMatrix4d::add_hash(std::size_t hash, double threshold) const;
3328 5 xform 0 4 3584 16 LMatrix4d::xform 0 1 1616 91
/**
* 4-component vector or point times matrix. This is a fully general
* operation.
*/
62
inline LVecBase4d LMatrix4d::xform(LVecBase4d const &v) const;
3329 11 xform_point 0 4 3584 22 LMatrix4d::xform_point 0 1 1617 162
/**
* The matrix transforms a 3-component point (including translation component)
* and returns the result. This assumes the matrix is an affine transform.
*/
68
inline LVecBase3d LMatrix4d::xform_point(LVecBase3d const &v) const;
3330 19 xform_point_general 0 4 3584 30 LMatrix4d::xform_point_general 0 1 1618 143
/**
* The matrix transforms a 3-component point (including translation component)
* and returns the result, as a fully general operation.
*/
76
inline LVecBase3d LMatrix4d::xform_point_general(LVecBase3d const &v) const;
3331 9 xform_vec 0 4 3584 20 LMatrix4d::xform_vec 0 1 1619 169
/**
* The matrix transforms a 3-component vector (without translation component)
* and returns the result. This assumes the matrix is an orthonormal
* transform.
*/
66
inline LVecBase3d LMatrix4d::xform_vec(LVecBase3d const &v) const;
3332 17 xform_vec_general 0 4 3584 28 LMatrix4d::xform_vec_general 0 1 1620 142
/**
* The matrix transforms a 3-component vector (without translation component)
* and returns the result, as a fully general operation.
*/
74
inline LVecBase3d LMatrix4d::xform_vec_general(LVecBase3d const &v) const;
3333 14 xform_in_place 0 4 3584 25 LMatrix4d::xform_in_place 0 1 1621 91
/**
* 4-component vector or point times matrix. This is a fully general
* operation.
*/
59
inline void LMatrix4d::xform_in_place(LVecBase4d &v) const;
3334 20 xform_point_in_place 0 4 3584 31 LMatrix4d::xform_point_in_place 0 1 1622 139
/**
* The matrix transforms a 3-component point (including translation
* component). This assumes the matrix is an affine transform.
*/
65
inline void LMatrix4d::xform_point_in_place(LVecBase3d &v) const;
3335 28 xform_point_general_in_place 0 4 3584 39 LMatrix4d::xform_point_general_in_place 0 1 1623 120
/**
* The matrix transforms a 3-component point (including translation
* component), as a fully general operation.
*/
73
inline void LMatrix4d::xform_point_general_in_place(LVecBase3d &v) const;
3336 18 xform_vec_in_place 0 4 3584 29 LMatrix4d::xform_vec_in_place 0 1 1624 142
/**
* The matrix transforms a 3-component vector (without translation component).
* This assumes the matrix is an orthonormal transform.
*/
63
inline void LMatrix4d::xform_vec_in_place(LVecBase3d &v) const;
3337 26 xform_vec_general_in_place 0 4 3584 37 LMatrix4d::xform_vec_general_in_place 0 1 1625 119
/**
* The matrix transforms a 3-component vector (without translation component),
* as a fully general operation.
*/
71
inline void LMatrix4d::xform_vec_general_in_place(LVecBase3d &v) const;
3338 8 multiply 0 4 3584 19 LMatrix4d::multiply 0 1 1626 52
// this = other1 * other2
// this = other1 * other2
82
inline void LMatrix4d::multiply(LMatrix4d const &other1, LMatrix4d const &other2);
3339 10 operator * 0 4 3584 21 LMatrix4d::operator * 0 2 1627 1628 0
130
inline LMatrix4d LMatrix4d::operator *(LMatrix4d const &other) const;
inline LMatrix4d LMatrix4d::operator *(double scalar) const;
3340 10 operator / 0 4 3584 21 LMatrix4d::operator / 0 1 1629 0
60
inline LMatrix4d LMatrix4d::operator /(double scalar) const;
3341 11 operator += 0 4 3584 22 LMatrix4d::operator += 0 1 1630 63
/**
* Performs a memberwise addition between two matrices.
*/
65
inline LMatrix4d &LMatrix4d::operator +=(LMatrix4d const &other);
3342 11 operator -= 0 4 3584 22 LMatrix4d::operator -= 0 1 1631 63
/**
* Performs a memberwise addition between two matrices.
*/
65
inline LMatrix4d &LMatrix4d::operator -=(LMatrix4d const &other);
3343 11 operator *= 0 4 3584 22 LMatrix4d::operator *= 0 2 1632 1633 22
/**
*
*/
/**
*
*/
122
inline LMatrix4d &LMatrix4d::operator *=(LMatrix4d const &other);
inline LMatrix4d &LMatrix4d::operator *=(double scalar);
3344 11 operator /= 0 4 3584 22 LMatrix4d::operator /= 0 1 1634 10
/**
*
*/
56
inline LMatrix4d &LMatrix4d::operator /=(double scalar);
3345 18 componentwise_mult 0 4 3584 29 LMatrix4d::componentwise_mult 0 1 1635 10
/**
*
*/
66
inline void LMatrix4d::componentwise_mult(LMatrix4d const &other);
3346 14 transpose_from 0 4 3584 25 LMatrix4d::transpose_from 0 1 1636 10
/**
*
*/
62
inline void LMatrix4d::transpose_from(LMatrix4d const &other);
3347 18 transpose_in_place 0 4 3584 29 LMatrix4d::transpose_in_place 0 1 1637 10
/**
*
*/
48
inline void LMatrix4d::transpose_in_place(void);
3348 11 invert_from 0 4 3584 22 LMatrix4d::invert_from 0 1 1638 461
/**
* Computes the inverse of the other matrix, and stores the result in this
* matrix. This is a fully general operation and makes no assumptions about
* the type of transform represented by the matrix.
*
* The other matrix must be a different object than this matrix. However, if
* you need to invert a matrix in place, see invert_in_place.
*
* The return value is true if the matrix was successfully inverted, false if
* the was a singularity.
*/
59
inline bool LMatrix4d::invert_from(LMatrix4d const &other);
3349 18 invert_affine_from 0 4 3584 29 LMatrix4d::invert_affine_from 0 1 1639 139
// bugbug: we could optimize this for rotationscaletranslation matrices
// (transpose upper 3x3 and take negative of translation component)
66
inline bool LMatrix4d::invert_affine_from(LMatrix4d const &other);
3350 15 invert_in_place 0 4 3584 26 LMatrix4d::invert_in_place 0 1 1640 119
/**
* Inverts the current matrix. Returns true if the inverse is successful,
* false if the matrix was singular.
*/
45
inline bool LMatrix4d::invert_in_place(void);
3351 10 accumulate 0 4 3584 21 LMatrix4d::accumulate 0 1 1641 46
/**
* Computes (*this) += other * weight.
*/
73
inline void LMatrix4d::accumulate(LMatrix4d const &other, double weight);
3352 9 ident_mat 0 4 3584 20 LMatrix4d::ident_mat 0 1 1642 147
/**
* Returns an identity matrix.
*
* This function definition must appear first, since some inline functions
* below take advantage of it.
*/
58
static inline LMatrix4d const &LMatrix4d::ident_mat(void);
3353 8 ones_mat 0 4 3584 19 LMatrix4d::ones_mat 0 1 1643 46
/**
* Returns an matrix filled with ones.
*/
57
static inline LMatrix4d const &LMatrix4d::ones_mat(void);
3354 9 zeros_mat 0 4 3584 20 LMatrix4d::zeros_mat 0 1 1644 47
/**
* Returns an matrix filled with zeros.
*/
58
static inline LMatrix4d const &LMatrix4d::zeros_mat(void);
3355 17 set_translate_mat 0 4 3584 28 LMatrix4d::set_translate_mat 0 1 1645 74
/**
* Fills mat with a matrix that applies the indicated translation.
*/
66
inline void LMatrix4d::set_translate_mat(LVecBase3d const &trans);
3356 14 set_rotate_mat 0 4 3584 25 LMatrix4d::set_rotate_mat 0 1 1646 122
/**
* Sets mat to a matrix that rotates by the given angle in degrees
* counterclockwise about the indicated vector.
*/
105
void LMatrix4d::set_rotate_mat(double angle, LVecBase3d const &axis, CoordinateSystem cs = ::CS_default);
3357 23 set_rotate_mat_normaxis 0 4 3584 34 LMatrix4d::set_rotate_mat_normaxis 0 1 1647 166
/**
* Fills mat with a matrix that rotates by the given angle in degrees
* counterclockwise about the indicated vector. Assumes axis has been
* prenormalized.
*/
114
void LMatrix4d::set_rotate_mat_normaxis(double angle, LVecBase3d const &axis, CoordinateSystem cs = ::CS_default);
3358 13 set_scale_mat 0 4 3584 24 LMatrix4d::set_scale_mat 0 1 1648 97
/**
* Fills mat with a matrix that applies the indicated scale in each of the
* three axes.
*/
62
inline void LMatrix4d::set_scale_mat(LVecBase3d const &scale);
3359 13 set_shear_mat 0 4 3584 24 LMatrix4d::set_shear_mat 0 1 1649 99
/**
* Fills mat with a matrix that applies the indicated shear in each of the
* three planes.
*/
98
inline void LMatrix4d::set_shear_mat(LVecBase3d const &shear, CoordinateSystem cs = ::CS_default);
3360 19 set_scale_shear_mat 0 4 3584 30 LMatrix4d::set_scale_shear_mat 0 1 1650 78
/**
* Fills mat with a matrix that applies the indicated scale and shear.
*/
129
inline void LMatrix4d::set_scale_shear_mat(LVecBase3d const &scale, LVecBase3d const &shear, CoordinateSystem cs = ::CS_default);
3361 13 translate_mat 0 4 3584 24 LMatrix4d::translate_mat 0 2 1651 1652 136
/**
* Returns a matrix that applies the indicated translation.
*/
/**
* Returns a matrix that applies the indicated translation.
*/
157
static inline LMatrix4d LMatrix4d::translate_mat(LVecBase3d const &trans);
static inline LMatrix4d LMatrix4d::translate_mat(double tx, double ty, double tz);
3362 10 rotate_mat 0 4 3584 21 LMatrix4d::rotate_mat 0 1 1653 118
/**
* Returns a matrix that rotates by the given angle in degrees
* counterclockwise about the indicated vector.
*/
120
static inline LMatrix4d LMatrix4d::rotate_mat(double angle, LVecBase3d const &axis, CoordinateSystem cs = ::CS_default);
3363 19 rotate_mat_normaxis 0 4 3584 30 LMatrix4d::rotate_mat_normaxis 0 1 1654 159
/**
* Returns a matrix that rotates by the given angle in degrees
* counterclockwise about the indicated vector. Assumes axis has been
* prenormalized.
*/
129
static inline LMatrix4d LMatrix4d::rotate_mat_normaxis(double angle, LVecBase3d const &axis, CoordinateSystem cs = ::CS_default);
3364 9 scale_mat 0 4 3584 20 LMatrix4d::scale_mat 0 3 1655 1656 1657 253
/**
* Returns a matrix that applies the indicated scale in each of the three
* axes.
*/
/**
* Returns a matrix that applies the indicated scale in each of the three
* axes.
*/
/**
* Returns a matrix that applies the indicated uniform scale.
*/
209
static inline LMatrix4d LMatrix4d::scale_mat(LVecBase3d const &scale);
static inline LMatrix4d LMatrix4d::scale_mat(double sx, double sy, double sz);
static inline LMatrix4d LMatrix4d::scale_mat(double scale);
3365 9 shear_mat 0 4 3584 20 LMatrix4d::shear_mat 0 2 1658 1659 186
/**
* Returns a matrix that applies the indicated shear in each of the three
* planes.
*/
/**
* Returns a matrix that applies the indicated shear in each of the three
* planes.
*/
227
static inline LMatrix4d LMatrix4d::shear_mat(LVecBase3d const &shear, CoordinateSystem cs = ::CS_default);
static inline LMatrix4d LMatrix4d::shear_mat(double shxy, double shxz, double shyz, CoordinateSystem cs = ::CS_default);
3366 15 scale_shear_mat 0 4 3584 26 LMatrix4d::scale_shear_mat 0 2 1660 1661 144
/**
* Returns a matrix that applies the indicated scale and shear.
*/
/**
* Returns a matrix that applies the indicated scale and shear.
*/
297
static inline LMatrix4d LMatrix4d::scale_shear_mat(LVecBase3d const &scale, LVecBase3d const &shear, CoordinateSystem cs = ::CS_default);
static inline LMatrix4d LMatrix4d::scale_shear_mat(double sx, double sy, double sz, double shxy, double shxz, double shyz, CoordinateSystem cs = ::CS_default);
3367 13 y_to_z_up_mat 0 4 3584 24 LMatrix4d::y_to_z_up_mat 0 1 1662 109
/**
* Returns a matrix that transforms from the Y-up coordinate system to the
* Z-up coordinate system.
*/
62
static inline LMatrix4d const &LMatrix4d::y_to_z_up_mat(void);
3368 13 z_to_y_up_mat 0 4 3584 24 LMatrix4d::z_to_y_up_mat 0 1 1663 109
/**
* Returns a matrix that transforms from the Y-up coordinate system to the
* Z-up coordinate system.
*/
62
static inline LMatrix4d const &LMatrix4d::z_to_y_up_mat(void);
3369 11 convert_mat 0 4 3584 22 LMatrix4d::convert_mat 0 1 1664 119
/**
* Returns a matrix that transforms from the indicated coordinate system to
* the indicated coordinate system.
*/
91
static LMatrix4d const &LMatrix4d::convert_mat(CoordinateSystem from, CoordinateSystem to);
3370 12 almost_equal 0 4 3584 23 LMatrix4d::almost_equal 0 2 1665 1666 318
/**
* Returns true if two matrices are memberwise equal within a default
* tolerance based on the numeric type.
*/
/**
* Returns true if two matrices are memberwise equal within a specified
* tolerance. This is faster than the equivalence operator as this doesn't
* have to guarantee that it is transitive.
*/
144
bool LMatrix4d::almost_equal(LMatrix4d const &other, double threshold) const;
inline bool LMatrix4d::almost_equal(LMatrix4d const &other) const;
3371 6 output 0 4 3584 17 LMatrix4d::output 0 1 1667 10
/**
*
*/
48
void LMatrix4d::output(std::ostream &out) const;
3372 5 write 0 4 3584 16 LMatrix4d::write 0 1 1668 10
/**
*
*/
69
void LMatrix4d::write(std::ostream &out, int indent_level = 0) const;
3373 8 __repr__ 0 4 3584 19 LMatrix4d::__repr__ 0 1 1669 0
51
inline std::string LMatrix4d::__repr__(void) const;
3374 13 generate_hash 0 4 3584 24 LMatrix4d::generate_hash 0 2 1670 1671 120
/**
* Adds the vector to the indicated hash generator.
*/
/**
* Adds the vector to the indicated hash generator.
*/
158
inline void LMatrix4d::generate_hash(ChecksumHashGenerator &hashgen) const;
void LMatrix4d::generate_hash(ChecksumHashGenerator &hashgen, double scale) const;
3375 20 write_datagram_fixed 0 4 3584 31 LMatrix4d::write_datagram_fixed 0 1 1672 332
/**
* Writes the matrix to the Datagram using add_float32() or add_float64(),
* depending on the type of floats in the matrix, regardless of the setting of
* Datagram::set_stdfloat_double(). This is appropriate when you want to
* write a fixed-width value to the datagram, especially when you are not
* writing a bam file.
*/
66
void LMatrix4d::write_datagram_fixed(Datagram &destination) const;
3376 19 read_datagram_fixed 0 4 3584 30 LMatrix4d::read_datagram_fixed 0 1 1673 114
/**
* Reads the matrix from the Datagram using get_float32() or get_float64().
* See write_datagram_fixed().
*/
60
void LMatrix4d::read_datagram_fixed(DatagramIterator &scan);
3377 14 write_datagram 0 4 3584 25 LMatrix4d::write_datagram 0 1 1674 205
/**
* Writes the matrix to the Datagram using add_stdfloat(). This is
* appropriate when you want to write the matrix using the standard width
* setting, especially when you are writing a bam file.
*/
60
void LMatrix4d::write_datagram(Datagram &destination) const;
3378 13 read_datagram 0 4 3584 24 LMatrix4d::read_datagram 0 1 1675 67
/**
* Reads the matrix from the Datagram using get_stdfloat().
*/
56
void LMatrix4d::read_datagram(DatagramIterator &source);
3379 14 get_class_type 0 4 3584 25 LMatrix4d::get_class_type 0 1 1676 0
50
static TypeHandle LMatrix4d::get_class_type(void);
3380 10 ~LMatrix4d 0 4 3584 21 LMatrix4d::~LMatrix4d 0 0 0
28
LMatrix4d::~LMatrix4d(void);
3381 18 UnalignedLMatrix4d 0 4 3588 38 UnalignedLMatrix4d::UnalignedLMatrix4d 0 4 1686 1687 1688 1689 46
/**
*
*/
/**
*
*/
/**
*
*/
/**
*
*/
440
inline UnalignedLMatrix4d::UnalignedLMatrix4d(void);
inline UnalignedLMatrix4d::UnalignedLMatrix4d(LMatrix4d const &copy);
inline UnalignedLMatrix4d::UnalignedLMatrix4d(UnalignedLMatrix4d const &copy);
inline UnalignedLMatrix4d::UnalignedLMatrix4d(double e00, double e01, double e02, double e03, double e10, double e11, double e12, double e13, double e20, double e21, double e22, double e23, double e30, double e31, double e32, double e33);
3382 10 operator = 0 4 3588 30 UnalignedLMatrix4d::operator = 0 2 1690 1691 22
/**
*
*/
/**
*
*/
142
inline void UnalignedLMatrix4d::operator =(LMatrix4d const &copy);
inline void UnalignedLMatrix4d::operator =(UnalignedLMatrix4d const &copy);
3383 3 set 0 4 3588 23 UnalignedLMatrix4d::set 0 1 1692 10
/**
*
*/
228
inline void UnalignedLMatrix4d::set(double e00, double e01, double e02, double e03, double e10, double e11, double e12, double e13, double e20, double e21, double e22, double e23, double e30, double e31, double e32, double e33);
3384 11 operator () 0 4 3588 31 UnalignedLMatrix4d::operator () 0 2 1693 1694 10
/**
*
*/
136
inline double &UnalignedLMatrix4d::operator ()(int row, int col);
inline double UnalignedLMatrix4d::operator ()(int row, int col) const;
3385 8 get_data 0 4 3588 28 UnalignedLMatrix4d::get_data 0 1 1695 162
/**
* Returns the address of the first of the nine data elements in the matrix.
* The remaining elements occupy the next eight positions in row-major order.
*/
62
inline double const *UnalignedLMatrix4d::get_data(void) const;
3386 18 get_num_components 0 4 3588 38 UnalignedLMatrix4d::get_num_components 0 1 1696 65
/**
* Returns the number of elements in the matrix, sixteen.
*/
62
inline int UnalignedLMatrix4d::get_num_components(void) const;
3387 11 operator == 0 4 3588 31 UnalignedLMatrix4d::operator == 0 1 1697 0
83
inline bool UnalignedLMatrix4d::operator ==(UnalignedLMatrix4d const &other) const;
3388 11 operator != 0 4 3588 31 UnalignedLMatrix4d::operator != 0 1 1698 0
83
inline bool UnalignedLMatrix4d::operator !=(UnalignedLMatrix4d const &other) const;
3389 14 get_class_type 0 4 3588 34 UnalignedLMatrix4d::get_class_type 0 1 1699 0
59
static TypeHandle UnalignedLMatrix4d::get_class_type(void);
3390 19 ~UnalignedLMatrix4d 0 4 3588 39 UnalignedLMatrix4d::~UnalignedLMatrix4d 0 0 0
46
UnalignedLMatrix4d::~UnalignedLMatrix4d(void);
3391 10 operator * 0 1 0 10 operator * 0 24 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 0
1659
inline LVecBase3f operator *(LVecBase3f const &v, LMatrix3f const &m);
inline LVector3f operator *(LVector3f const &v, LMatrix3f const &m);
inline LPoint3f operator *(LPoint3f const &v, LMatrix3f const &m);
inline LVector2f operator *(LVector2f const &v, LMatrix3f const &m);
inline LPoint2f operator *(LPoint2f const &v, LMatrix3f const &m);
inline LVecBase4f operator *(LVecBase4f const &v, LMatrix4f const &m);
inline LPoint4f operator *(LPoint4f const &v, LMatrix4f const &m);
inline LVector4f operator *(LVector4f const &v, LMatrix4f const &m);
inline LVector3f operator *(LVector3f const &v, LMatrix4f const &m);
inline LPoint3f operator *(LPoint3f const &v, LMatrix4f const &m);
inline LVecBase3d operator *(LVecBase3d const &v, LMatrix3d const &m);
inline LVector3d operator *(LVector3d const &v, LMatrix3d const &m);
inline LPoint3d operator *(LPoint3d const &v, LMatrix3d const &m);
inline LVector2d operator *(LVector2d const &v, LMatrix3d const &m);
inline LPoint2d operator *(LPoint2d const &v, LMatrix3d const &m);
inline LVecBase4d operator *(LVecBase4d const &v, LMatrix4d const &m);
inline LPoint4d operator *(LPoint4d const &v, LMatrix4d const &m);
inline LVector4d operator *(LVector4d const &v, LMatrix4d const &m);
inline LVector3d operator *(LVector3d const &v, LMatrix4d const &m);
inline LPoint3d operator *(LPoint3d const &v, LMatrix4d const &m);
inline LMatrix3f operator *(LMatrix3f const &m, LQuaternionf const &q);
inline LMatrix4f operator *(LMatrix4f const &m, LQuaternionf const &q);
inline LMatrix3d operator *(LMatrix3d const &m, LQuaterniond const &q);
inline LMatrix4d operator *(LMatrix4d const &m, LQuaterniond const &q);
3392 11 operator *= 0 1 0 11 operator *= 0 16 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 0
941
inline void operator *=(LVecBase3f &v, LMatrix3f const &m);
inline void operator *=(LVector3f &v, LMatrix3f const &m);
inline void operator *=(LPoint3f &v, LMatrix3f const &m);
inline void operator *=(LVector2f &v, LMatrix3f const &m);
inline void operator *=(LPoint2f &v, LMatrix3f const &m);
inline void operator *=(LVecBase4f &v, LMatrix4f const &m);
inline void operator *=(LVector3f &v, LMatrix4f const &m);
inline void operator *=(LPoint3f &v, LMatrix4f const &m);
inline void operator *=(LVecBase3d &v, LMatrix3d const &m);
inline void operator *=(LVector3d &v, LMatrix3d const &m);
inline void operator *=(LPoint3d &v, LMatrix3d const &m);
inline void operator *=(LVector2d &v, LMatrix3d const &m);
inline void operator *=(LPoint2d &v, LMatrix3d const &m);
inline void operator *=(LVecBase4d &v, LMatrix4d const &m);
inline void operator *=(LVector3d &v, LMatrix4d const &m);
inline void operator *=(LPoint3d &v, LMatrix4d const &m);
3393 22 generic_write_datagram 0 1 0 22 generic_write_datagram 0 4 1934 1935 1936 1937 0
303
inline void generic_write_datagram(Datagram &dest, LMatrix3f const &value);
inline void generic_write_datagram(Datagram &dest, LMatrix4f const &value);
inline void generic_write_datagram(Datagram &dest, LMatrix3d const &value);
inline void generic_write_datagram(Datagram &dest, LMatrix4d const &value);
3394 21 generic_read_datagram 0 1 0 21 generic_read_datagram 0 4 1938 1939 1940 1941 0
319
inline void generic_read_datagram(LMatrix3f &result, DatagramIterator &source);
inline void generic_read_datagram(LMatrix4f &result, DatagramIterator &source);
inline void generic_read_datagram(LMatrix3d &result, DatagramIterator &source);
inline void generic_read_datagram(LMatrix4d &result, DatagramIterator &source);
3395 14 compose_matrix 0 1 0 14 compose_matrix 0 10 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 0
1484
void compose_matrix(LMatrix3f &mat, LVecBase3f const &scale, LVecBase3f const &shear, LVecBase3f const &hpr, CoordinateSystem cs = ::CS_default);
inline void compose_matrix(LMatrix4f &mat, LVecBase3f const &scale, LVecBase3f const &shear, LVecBase3f const &hpr, LVecBase3f const &translate, CoordinateSystem cs = ::CS_default);
inline void compose_matrix(LMatrix4f &mat, float const components[::num_matrix_components], CoordinateSystem cs = ::CS_default);
inline void compose_matrix(LMatrix3f &mat, LVecBase3f const &scale, LVecBase3f const &hpr, CoordinateSystem cs = ::CS_default);
inline void compose_matrix(LMatrix4f &mat, LVecBase3f const &scale, LVecBase3f const &hpr, LVecBase3f const &translate, CoordinateSystem cs = ::CS_default);
void compose_matrix(LMatrix3d &mat, LVecBase3d const &scale, LVecBase3d const &shear, LVecBase3d const &hpr, CoordinateSystem cs = ::CS_default);
inline void compose_matrix(LMatrix4d &mat, LVecBase3d const &scale, LVecBase3d const &shear, LVecBase3d const &hpr, LVecBase3d const &translate, CoordinateSystem cs = ::CS_default);
inline void compose_matrix(LMatrix4d &mat, double const components[::num_matrix_components], CoordinateSystem cs = ::CS_default);
inline void compose_matrix(LMatrix3d &mat, LVecBase3d const &scale, LVecBase3d const &hpr, CoordinateSystem cs = ::CS_default);
inline void compose_matrix(LMatrix4d &mat, LVecBase3d const &scale, LVecBase3d const &hpr, LVecBase3d const &translate, CoordinateSystem cs = ::CS_default);
3396 16 decompose_matrix 0 1 0 16 decompose_matrix 0 10 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 0
1408
bool decompose_matrix(LMatrix3f const &mat, LVecBase3f &scale, LVecBase3f &shear, LVecBase3f &hpr, CoordinateSystem cs = ::CS_default);
inline bool decompose_matrix(LMatrix4f const &mat, LVecBase3f &scale, LVecBase3f &shear, LVecBase3f &hpr, LVecBase3f &translate, CoordinateSystem cs = ::CS_default);
inline bool decompose_matrix(LMatrix4f const &mat, float components[::num_matrix_components], CoordinateSystem CS = ::CS_default);
inline bool decompose_matrix(LMatrix3f const &mat, LVecBase3f &scale, LVecBase3f &hpr, CoordinateSystem cs = ::CS_default);
inline bool decompose_matrix(LMatrix4f const &mat, LVecBase3f &scale, LVecBase3f &hpr, LVecBase3f &translate, CoordinateSystem cs = ::CS_default);
bool decompose_matrix(LMatrix3d const &mat, LVecBase3d &scale, LVecBase3d &shear, LVecBase3d &hpr, CoordinateSystem cs = ::CS_default);
inline bool decompose_matrix(LMatrix4d const &mat, LVecBase3d &scale, LVecBase3d &shear, LVecBase3d &hpr, LVecBase3d &translate, CoordinateSystem cs = ::CS_default);
inline bool decompose_matrix(LMatrix4d const &mat, double components[::num_matrix_components], CoordinateSystem CS = ::CS_default);
inline bool decompose_matrix(LMatrix3d const &mat, LVecBase3d &scale, LVecBase3d &hpr, CoordinateSystem cs = ::CS_default);
inline bool decompose_matrix(LMatrix4d const &mat, LVecBase3d &scale, LVecBase3d &hpr, LVecBase3d &translate, CoordinateSystem cs = ::CS_default);
3397 24 decompose_matrix_old_hpr 0 1 0 24 decompose_matrix_old_hpr 0 2 1962 1963 0
287
bool decompose_matrix_old_hpr(LMatrix3f const &mat, LVecBase3f &scale, LVecBase3f &shear, LVecBase3f &hpr, CoordinateSystem cs = ::CS_default);
bool decompose_matrix_old_hpr(LMatrix3d const &mat, LVecBase3d &scale, LVecBase3d &shear, LVecBase3d &hpr, CoordinateSystem cs = ::CS_default);
3398 14 old_to_new_hpr 0 1 0 14 old_to_new_hpr 0 2 1964 1965 0
107
LVecBase3f old_to_new_hpr(LVecBase3f const &old_hpr);
LVecBase3d old_to_new_hpr(LVecBase3d const &old_hpr);
3399 12 LQuaternionf 0 4 3590 26 LQuaternionf::LQuaternionf 0 5 1700 1701 1702 1703 1704 46
/**
*
*/
/**
*
*/
/**
*
*/
/**
*
*/
305
inline LQuaternionf::LQuaternionf(void);
inline LQuaternionf::LQuaternionf(LVecBase4f const &copy);
inline LQuaternionf::LQuaternionf(float r, LVecBase3f const &copy);
inline LQuaternionf::LQuaternionf(float r, float i, float j, float k);
inline LQuaternionf::LQuaternionf(LQuaternionf const &) = default;
3400 14 pure_imaginary 0 4 3590 28 LQuaternionf::pure_imaginary 0 1 1705 10
/**
*
*/
69
static LQuaternionf LQuaternionf::pure_imaginary(LVector3f const &v);
3401 9 conjugate 0 4 3590 23 LQuaternionf::conjugate 0 1 1706 54
/**
* Returns the complex conjugate of this quat.
*/
56
inline LQuaternionf LQuaternionf::conjugate(void) const;
3402 5 xform 0 4 3590 19 LQuaternionf::xform 0 2 1707 1708 122
/**
* Transforms a 3-d vector by the indicated rotation
*/
/**
* Transforms a 4-d vector by the indicated rotation
*/
131
inline LVecBase3f LQuaternionf::xform(LVecBase3f const &v) const;
inline LVecBase4f LQuaternionf::xform(LVecBase4f const &v) const;
3403 8 multiply 0 4 3590 22 LQuaternionf::multiply 0 1 1709 45
/**
* actual multiply call (non virtual)
*/
74
inline LQuaternionf LQuaternionf::multiply(LQuaternionf const &rhs) const;
3404 10 operator - 0 68 3590 24 LQuaternionf::operator - 0 1 1710 0
57
inline LQuaternionf LQuaternionf::operator -(void) const;
3405 10 operator + 0 4 3590 24 LQuaternionf::operator + 0 1 1711 0
78
inline LQuaternionf LQuaternionf::operator +(LQuaternionf const &other) const;
3406 10 operator - 0 4 3590 24 LQuaternionf::operator - 0 1 1712 0
78
inline LQuaternionf LQuaternionf::operator -(LQuaternionf const &other) const;
3407 9 angle_rad 0 4 3590 23 LQuaternionf::angle_rad 0 1 1713 127
/**
* Returns the angle between the orientation represented by this quaternion
* and the other one, expressed in radians.
*/
70
inline float LQuaternionf::angle_rad(LQuaternionf const &other) const;
3408 9 angle_deg 0 4 3590 23 LQuaternionf::angle_deg 0 1 1714 127
/**
* Returns the angle between the orientation represented by this quaternion
* and the other one, expressed in degrees.
*/
70
inline float LQuaternionf::angle_deg(LQuaternionf const &other) const;
3409 10 operator * 0 4 3590 24 LQuaternionf::operator * 0 4 1715 1716 1717 1718 0
263
inline LQuaternionf LQuaternionf::operator *(float scalar) const;
inline LQuaternionf LQuaternionf::operator *(LQuaternionf const &) const;
inline LMatrix3f LQuaternionf::operator *(LMatrix3f const &);
inline LMatrix4f LQuaternionf::operator *(LMatrix4f const &);
3410 10 operator / 0 4 3590 24 LQuaternionf::operator / 0 1 1719 0
65
inline LQuaternionf LQuaternionf::operator /(float scalar) const;
3411 11 operator *= 0 4 3590 25 LQuaternionf::operator *= 0 1 1720 10
/**
*
*/
69
inline LQuaternionf &LQuaternionf::operator *=(LQuaternionf const &);
3412 7 __pow__ 0 4 3590 21 LQuaternionf::__pow__ 0 1 1721 97
/**
* Returns a new quaternion that represents this quaternion raised to the
* given power.
*/
49
LQuaternionf LQuaternionf::__pow__(float ) const;
3413 12 almost_equal 0 4 3590 26 LQuaternionf::almost_equal 0 2 1722 1723 218
/**
* Returns true if two quaternions are memberwise equal within a default
* tolerance based on the numeric type.
*/
/**
* Returns true if two quaternions are memberwise equal within a specified
* tolerance.
*/
162
inline bool LQuaternionf::almost_equal(LQuaternionf const &other) const;
inline bool LQuaternionf::almost_equal(LQuaternionf const &other, float threshold) const;
3414 17 is_same_direction 0 4 3590 31 LQuaternionf::is_same_direction 0 1 1724 127
/**
* Returns true if two quaternions represent the same rotation within a
* default tolerance based on the numeric type.
*/
77
inline bool LQuaternionf::is_same_direction(LQuaternionf const &other) const;
3415 21 almost_same_direction 0 4 3590 35 LQuaternionf::almost_same_direction 0 1 1725 103
/**
* Returns true if two quaternions represent the same rotation within a
* specified tolerance.
*/
98
inline bool LQuaternionf::almost_same_direction(LQuaternionf const &other, float threshold) const;
3416 6 output 0 4 3590 20 LQuaternionf::output 0 1 1726 10
/**
*
*/
55
inline void LQuaternionf::output(std::ostream &) const;
3417 17 extract_to_matrix 0 4 3590 31 LQuaternionf::extract_to_matrix 0 2 1727 1728 88
/**
* Based on the quat lib from VRPN.
*/
/**
* Based on the quat lib from VRPN.
*/
115
void LQuaternionf::extract_to_matrix(LMatrix3f &m) const;
void LQuaternionf::extract_to_matrix(LMatrix4f &m) const;
3418 15 set_from_matrix 0 4 3590 29 LQuaternionf::set_from_matrix 0 2 1729 1730 238
/**
*
*/
/**
* Sets the quaternion according to the rotation represented by the matrix.
* Originally we tried an algorithm presented by Do-While Jones, but that
* turned out to be broken. This is based on the quat lib from UNC.
*/
118
void LQuaternionf::set_from_matrix(LMatrix3f const &m);
inline void LQuaternionf::set_from_matrix(LMatrix4f const &m);
3419 7 set_hpr 0 4 3590 21 LQuaternionf::set_hpr 0 1 1731 132
/**
* Sets the quaternion as the unit quaternion that is equivalent to these
* Euler angles. (from Real-time Rendering, p.49)
*/
86
void LQuaternionf::set_hpr(LVecBase3f const &hpr, CoordinateSystem cs = ::CS_default);
3420 7 get_hpr 0 4 3590 21 LQuaternionf::get_hpr 0 1 1732 73
/**
* Extracts the equivalent Euler angles from the unit quaternion.
*/
75
LVecBase3f LQuaternionf::get_hpr(CoordinateSystem cs = ::CS_default) const;
3421 8 get_axis 0 4 3590 22 LQuaternionf::get_axis 0 1 1733 180
/**
* This, along with get_angle(), returns the rotation represented by the
* quaternion as an angle about an arbitrary axis. This returns the axis; it
* is not normalized.
*/
52
inline LVector3f LQuaternionf::get_axis(void) const;
3422 19 get_axis_normalized 0 4 3590 33 LQuaternionf::get_axis_normalized 0 1 1734 169
/**
* This, along with get_angle(), returns the rotation represented by the
* quaternion as an angle about an arbitrary axis. This returns the
* normalized axis.
*/
63
inline LVector3f LQuaternionf::get_axis_normalized(void) const;
3423 13 get_angle_rad 0 4 3590 27 LQuaternionf::get_angle_rad 0 1 1735 343
/**
* This, along with get_axis(), returns the rotation represented by the
* quaternion as an angle about an arbitrary axis. This returns the angle, in
* radians counterclockwise about the axis.
*
* It is necessary to ensure the quaternion has been normalized (for instance,
* with a call to normalize()) before calling this method.
*/
53
inline float LQuaternionf::get_angle_rad(void) const;
3424 9 get_angle 0 4 3590 23 LQuaternionf::get_angle 0 1 1736 343
/**
* This, along with get_axis(), returns the rotation represented by the
* quaternion as an angle about an arbitrary axis. This returns the angle, in
* degrees counterclockwise about the axis.
*
* It is necessary to ensure the quaternion has been normalized (for instance,
* with a call to normalize()) before calling this method.
*/
49
inline float LQuaternionf::get_angle(void) const;
3425 23 set_from_axis_angle_rad 0 4 3590 37 LQuaternionf::set_from_axis_angle_rad 0 1 1737 86
/**
* angle_rad is the angle about the axis in radians. axis must be normalized.
*/
90
inline void LQuaternionf::set_from_axis_angle_rad(float angle_rad, LVector3f const &axis);
3426 19 set_from_axis_angle 0 4 3590 33 LQuaternionf::set_from_axis_angle 0 1 1738 86
/**
* angle_deg is the angle about the axis in degrees. axis must be normalized.
*/
86
inline void LQuaternionf::set_from_axis_angle(float angle_deg, LVector3f const &axis);
3427 6 get_up 0 4 3590 20 LQuaternionf::get_up 0 1 1739 96
/**
* Returns the orientation represented by this quaternion, expressed as an up
* vector.
*/
80
inline LVector3f LQuaternionf::get_up(CoordinateSystem cs = ::CS_default) const;
3428 9 get_right 0 4 3590 23 LQuaternionf::get_right 0 1 1740 98
/**
* Returns the orientation represented by this quaternion, expressed as a
* right vector.
*/
83
inline LVector3f LQuaternionf::get_right(CoordinateSystem cs = ::CS_default) const;
3429 11 get_forward 0 4 3590 25 LQuaternionf::get_forward 0 1 1741 100
/**
* Returns the orientation represented by this quaternion, expressed as a
* forward vector.
*/
85
inline LVector3f LQuaternionf::get_forward(CoordinateSystem cs = ::CS_default) const;
3430 5 get_r 0 4 3590 19 LQuaternionf::get_r 0 1 1742 10
/**
*
*/
45
inline float LQuaternionf::get_r(void) const;
3431 5 get_i 0 4 3590 19 LQuaternionf::get_i 0 1 1743 10
/**
*
*/
45
inline float LQuaternionf::get_i(void) const;
3432 5 get_j 0 4 3590 19 LQuaternionf::get_j 0 1 1744 10
/**
*
*/
45
inline float LQuaternionf::get_j(void) const;
3433 5 get_k 0 4 3590 19 LQuaternionf::get_k 0 1 1745 10
/**
*
*/
45
inline float LQuaternionf::get_k(void) const;
3434 5 set_r 0 4 3590 19 LQuaternionf::set_r 0 1 1746 10
/**
*
*/
41
inline void LQuaternionf::set_r(float r);
3435 5 set_i 0 4 3590 19 LQuaternionf::set_i 0 1 1747 10
/**
*
*/
41
inline void LQuaternionf::set_i(float i);
3436 5 set_j 0 4 3590 19 LQuaternionf::set_j 0 1 1748 10
/**
*
*/
41
inline void LQuaternionf::set_j(float j);
3437 5 set_k 0 4 3590 19 LQuaternionf::set_k 0 1 1749 10
/**
*
*/
41
inline void LQuaternionf::set_k(float k);
3438 9 normalize 0 4 3590 23 LQuaternionf::normalize 0 1 1750 10
/**
*
*/
42
inline bool LQuaternionf::normalize(void);
3439 14 conjugate_from 0 4 3590 28 LQuaternionf::conjugate_from 0 1 1751 466
/**
* Computes the conjugate of the other quat, and stores the result in this
* quat. This is a fully general operation and makes no assumptions about the
* type of transform represented by the quat.
*
* The other quat must be a different object than this quat. However, if you
* need to get a conjugate of a quat in place, see conjugate_in_place.
*
* The return value is true if the quat was successfully inverted, false if
* there was a singularity.
*/
68
inline bool LQuaternionf::conjugate_from(LQuaternionf const &other);
3440 18 conjugate_in_place 0 4 3590 32 LQuaternionf::conjugate_in_place 0 1 1752 129
/**
* Sets this to be the conjugate of the current quat. Returns true if the
* successful, false if the quat was singular.
*/
51
inline bool LQuaternionf::conjugate_in_place(void);
3441 11 invert_from 0 4 3590 25 LQuaternionf::invert_from 0 1 1753 448
/**
* Computes the inverse of the other quat, and stores the result in this quat.
* This is a fully general operation and makes no assumptions about the type
* of transform represented by the quat.
*
* The other quat must be a different object than this quat. However, if you
* need to invert a quat in place, see invert_in_place.
*
* The return value is true if the quat was successfully inverted, false if
* there was a singularity.
*/
65
inline bool LQuaternionf::invert_from(LQuaternionf const &other);
3442 15 invert_in_place 0 4 3590 29 LQuaternionf::invert_in_place 0 1 1754 115
/**
* Inverts the current quat. Returns true if the inverse is successful, false
* if the quat was singular.
*/
48
inline bool LQuaternionf::invert_in_place(void);
3443 11 is_identity 0 4 3590 25 LQuaternionf::is_identity 0 1 1755 98
/**
* Returns true if this quaternion represents the identity transformation: no
* rotation.
*/
50
inline bool LQuaternionf::is_identity(void) const;
3444 18 is_almost_identity 0 4 3590 32 LQuaternionf::is_almost_identity 0 1 1756 110
/**
* Returns true if this quaternion represents the identity transformation
* within a given tolerance.
*/
68
inline bool LQuaternionf::is_almost_identity(float tolerance) const;
3445 10 ident_quat 0 4 3590 24 LQuaternionf::ident_quat 0 1 1757 42
/**
* Returns an identity quaternion.
*/
65
static inline LQuaternionf const &LQuaternionf::ident_quat(void);
3446 14 get_class_type 0 4 3590 28 LQuaternionf::get_class_type 0 1 1758 0
53
static TypeHandle LQuaternionf::get_class_type(void);
3447 13 ~LQuaternionf 0 4 3590 27 LQuaternionf::~LQuaternionf 0 0 0
34
LQuaternionf::~LQuaternionf(void);
3448 12 LQuaterniond 0 4 3591 26 LQuaterniond::LQuaterniond 0 5 1759 1760 1761 1762 1763 46
/**
*
*/
/**
*
*/
/**
*
*/
/**
*
*/
310
inline LQuaterniond::LQuaterniond(void);
inline LQuaterniond::LQuaterniond(LVecBase4d const &copy);
inline LQuaterniond::LQuaterniond(double r, LVecBase3d const &copy);
inline LQuaterniond::LQuaterniond(double r, double i, double j, double k);
inline LQuaterniond::LQuaterniond(LQuaterniond const &) = default;
3449 14 pure_imaginary 0 4 3591 28 LQuaterniond::pure_imaginary 0 1 1764 10
/**
*
*/
69
static LQuaterniond LQuaterniond::pure_imaginary(LVector3d const &v);
3450 9 conjugate 0 4 3591 23 LQuaterniond::conjugate 0 1 1765 54
/**
* Returns the complex conjugate of this quat.
*/
56
inline LQuaterniond LQuaterniond::conjugate(void) const;
3451 5 xform 0 4 3591 19 LQuaterniond::xform 0 2 1766 1767 122
/**
* Transforms a 3-d vector by the indicated rotation
*/
/**
* Transforms a 4-d vector by the indicated rotation
*/
131
inline LVecBase3d LQuaterniond::xform(LVecBase3d const &v) const;
inline LVecBase4d LQuaterniond::xform(LVecBase4d const &v) const;
3452 8 multiply 0 4 3591 22 LQuaterniond::multiply 0 1 1768 45
/**
* actual multiply call (non virtual)
*/
74
inline LQuaterniond LQuaterniond::multiply(LQuaterniond const &rhs) const;
3453 10 operator - 0 68 3591 24 LQuaterniond::operator - 0 1 1769 0
57
inline LQuaterniond LQuaterniond::operator -(void) const;
3454 10 operator + 0 4 3591 24 LQuaterniond::operator + 0 1 1770 0
78
inline LQuaterniond LQuaterniond::operator +(LQuaterniond const &other) const;
3455 10 operator - 0 4 3591 24 LQuaterniond::operator - 0 1 1771 0
78
inline LQuaterniond LQuaterniond::operator -(LQuaterniond const &other) const;
3456 9 angle_rad 0 4 3591 23 LQuaterniond::angle_rad 0 1 1772 127
/**
* Returns the angle between the orientation represented by this quaternion
* and the other one, expressed in radians.
*/
71
inline double LQuaterniond::angle_rad(LQuaterniond const &other) const;
3457 9 angle_deg 0 4 3591 23 LQuaterniond::angle_deg 0 1 1773 127
/**
* Returns the angle between the orientation represented by this quaternion
* and the other one, expressed in degrees.
*/
71
inline double LQuaterniond::angle_deg(LQuaterniond const &other) const;
3458 10 operator * 0 4 3591 24 LQuaterniond::operator * 0 4 1774 1775 1776 1777 0
264
inline LQuaterniond LQuaterniond::operator *(double scalar) const;
inline LQuaterniond LQuaterniond::operator *(LQuaterniond const &) const;
inline LMatrix3d LQuaterniond::operator *(LMatrix3d const &);
inline LMatrix4d LQuaterniond::operator *(LMatrix4d const &);
3459 10 operator / 0 4 3591 24 LQuaterniond::operator / 0 1 1778 0
66
inline LQuaterniond LQuaterniond::operator /(double scalar) const;
3460 11 operator *= 0 4 3591 25 LQuaterniond::operator *= 0 1 1779 10
/**
*
*/
69
inline LQuaterniond &LQuaterniond::operator *=(LQuaterniond const &);
3461 7 __pow__ 0 4 3591 21 LQuaterniond::__pow__ 0 1 1780 97
/**
* Returns a new quaternion that represents this quaternion raised to the
* given power.
*/
50
LQuaterniond LQuaterniond::__pow__(double ) const;
3462 12 almost_equal 0 4 3591 26 LQuaterniond::almost_equal 0 2 1781 1782 218
/**
* Returns true if two quaternions are memberwise equal within a default
* tolerance based on the numeric type.
*/
/**
* Returns true if two quaternions are memberwise equal within a specified
* tolerance.
*/
163
inline bool LQuaterniond::almost_equal(LQuaterniond const &other) const;
inline bool LQuaterniond::almost_equal(LQuaterniond const &other, double threshold) const;
3463 17 is_same_direction 0 4 3591 31 LQuaterniond::is_same_direction 0 1 1783 127
/**
* Returns true if two quaternions represent the same rotation within a
* default tolerance based on the numeric type.
*/
77
inline bool LQuaterniond::is_same_direction(LQuaterniond const &other) const;
3464 21 almost_same_direction 0 4 3591 35 LQuaterniond::almost_same_direction 0 1 1784 103
/**
* Returns true if two quaternions represent the same rotation within a
* specified tolerance.
*/
99
inline bool LQuaterniond::almost_same_direction(LQuaterniond const &other, double threshold) const;
3465 6 output 0 4 3591 20 LQuaterniond::output 0 1 1785 10
/**
*
*/
55
inline void LQuaterniond::output(std::ostream &) const;
3466 17 extract_to_matrix 0 4 3591 31 LQuaterniond::extract_to_matrix 0 2 1786 1787 88
/**
* Based on the quat lib from VRPN.
*/
/**
* Based on the quat lib from VRPN.
*/
115
void LQuaterniond::extract_to_matrix(LMatrix3d &m) const;
void LQuaterniond::extract_to_matrix(LMatrix4d &m) const;
3467 15 set_from_matrix 0 4 3591 29 LQuaterniond::set_from_matrix 0 2 1788 1789 238
/**
*
*/
/**
* Sets the quaternion according to the rotation represented by the matrix.
* Originally we tried an algorithm presented by Do-While Jones, but that
* turned out to be broken. This is based on the quat lib from UNC.
*/
118
void LQuaterniond::set_from_matrix(LMatrix3d const &m);
inline void LQuaterniond::set_from_matrix(LMatrix4d const &m);
3468 7 set_hpr 0 4 3591 21 LQuaterniond::set_hpr 0 1 1790 132
/**
* Sets the quaternion as the unit quaternion that is equivalent to these
* Euler angles. (from Real-time Rendering, p.49)
*/
86
void LQuaterniond::set_hpr(LVecBase3d const &hpr, CoordinateSystem cs = ::CS_default);
3469 7 get_hpr 0 4 3591 21 LQuaterniond::get_hpr 0 1 1791 73
/**
* Extracts the equivalent Euler angles from the unit quaternion.
*/
75
LVecBase3d LQuaterniond::get_hpr(CoordinateSystem cs = ::CS_default) const;
3470 8 get_axis 0 4 3591 22 LQuaterniond::get_axis 0 1 1792 180
/**
* This, along with get_angle(), returns the rotation represented by the
* quaternion as an angle about an arbitrary axis. This returns the axis; it
* is not normalized.
*/
52
inline LVector3d LQuaterniond::get_axis(void) const;
3471 19 get_axis_normalized 0 4 3591 33 LQuaterniond::get_axis_normalized 0 1 1793 169
/**
* This, along with get_angle(), returns the rotation represented by the
* quaternion as an angle about an arbitrary axis. This returns the
* normalized axis.
*/
63
inline LVector3d LQuaterniond::get_axis_normalized(void) const;
3472 13 get_angle_rad 0 4 3591 27 LQuaterniond::get_angle_rad 0 1 1794 343
/**
* This, along with get_axis(), returns the rotation represented by the
* quaternion as an angle about an arbitrary axis. This returns the angle, in
* radians counterclockwise about the axis.
*
* It is necessary to ensure the quaternion has been normalized (for instance,
* with a call to normalize()) before calling this method.
*/
54
inline double LQuaterniond::get_angle_rad(void) const;
3473 9 get_angle 0 4 3591 23 LQuaterniond::get_angle 0 1 1795 343
/**
* This, along with get_axis(), returns the rotation represented by the
* quaternion as an angle about an arbitrary axis. This returns the angle, in
* degrees counterclockwise about the axis.
*
* It is necessary to ensure the quaternion has been normalized (for instance,
* with a call to normalize()) before calling this method.
*/
50
inline double LQuaterniond::get_angle(void) const;
3474 23 set_from_axis_angle_rad 0 4 3591 37 LQuaterniond::set_from_axis_angle_rad 0 1 1796 86
/**
* angle_rad is the angle about the axis in radians. axis must be normalized.
*/
91
inline void LQuaterniond::set_from_axis_angle_rad(double angle_rad, LVector3d const &axis);
3475 19 set_from_axis_angle 0 4 3591 33 LQuaterniond::set_from_axis_angle 0 1 1797 86
/**
* angle_deg is the angle about the axis in degrees. axis must be normalized.
*/
87
inline void LQuaterniond::set_from_axis_angle(double angle_deg, LVector3d const &axis);
3476 6 get_up 0 4 3591 20 LQuaterniond::get_up 0 1 1798 96
/**
* Returns the orientation represented by this quaternion, expressed as an up
* vector.
*/
80
inline LVector3d LQuaterniond::get_up(CoordinateSystem cs = ::CS_default) const;
3477 9 get_right 0 4 3591 23 LQuaterniond::get_right 0 1 1799 98
/**
* Returns the orientation represented by this quaternion, expressed as a
* right vector.
*/
83
inline LVector3d LQuaterniond::get_right(CoordinateSystem cs = ::CS_default) const;
3478 11 get_forward 0 4 3591 25 LQuaterniond::get_forward 0 1 1800 100
/**
* Returns the orientation represented by this quaternion, expressed as a
* forward vector.
*/
85
inline LVector3d LQuaterniond::get_forward(CoordinateSystem cs = ::CS_default) const;
3479 5 get_r 0 4 3591 19 LQuaterniond::get_r 0 1 1801 10
/**
*
*/
46
inline double LQuaterniond::get_r(void) const;
3480 5 get_i 0 4 3591 19 LQuaterniond::get_i 0 1 1802 10
/**
*
*/
46
inline double LQuaterniond::get_i(void) const;
3481 5 get_j 0 4 3591 19 LQuaterniond::get_j 0 1 1803 10
/**
*
*/
46
inline double LQuaterniond::get_j(void) const;
3482 5 get_k 0 4 3591 19 LQuaterniond::get_k 0 1 1804 10
/**
*
*/
46
inline double LQuaterniond::get_k(void) const;
3483 5 set_r 0 4 3591 19 LQuaterniond::set_r 0 1 1805 10
/**
*
*/
42
inline void LQuaterniond::set_r(double r);
3484 5 set_i 0 4 3591 19 LQuaterniond::set_i 0 1 1806 10
/**
*
*/
42
inline void LQuaterniond::set_i(double i);
3485 5 set_j 0 4 3591 19 LQuaterniond::set_j 0 1 1807 10
/**
*
*/
42
inline void LQuaterniond::set_j(double j);
3486 5 set_k 0 4 3591 19 LQuaterniond::set_k 0 1 1808 10
/**
*
*/
42
inline void LQuaterniond::set_k(double k);
3487 9 normalize 0 4 3591 23 LQuaterniond::normalize 0 1 1809 10
/**
*
*/
42
inline bool LQuaterniond::normalize(void);
3488 14 conjugate_from 0 4 3591 28 LQuaterniond::conjugate_from 0 1 1810 466
/**
* Computes the conjugate of the other quat, and stores the result in this
* quat. This is a fully general operation and makes no assumptions about the
* type of transform represented by the quat.
*
* The other quat must be a different object than this quat. However, if you
* need to get a conjugate of a quat in place, see conjugate_in_place.
*
* The return value is true if the quat was successfully inverted, false if
* there was a singularity.
*/
68
inline bool LQuaterniond::conjugate_from(LQuaterniond const &other);
3489 18 conjugate_in_place 0 4 3591 32 LQuaterniond::conjugate_in_place 0 1 1811 129
/**
* Sets this to be the conjugate of the current quat. Returns true if the
* successful, false if the quat was singular.
*/
51
inline bool LQuaterniond::conjugate_in_place(void);
3490 11 invert_from 0 4 3591 25 LQuaterniond::invert_from 0 1 1812 448
/**
* Computes the inverse of the other quat, and stores the result in this quat.
* This is a fully general operation and makes no assumptions about the type
* of transform represented by the quat.
*
* The other quat must be a different object than this quat. However, if you
* need to invert a quat in place, see invert_in_place.
*
* The return value is true if the quat was successfully inverted, false if
* there was a singularity.
*/
65
inline bool LQuaterniond::invert_from(LQuaterniond const &other);
3491 15 invert_in_place 0 4 3591 29 LQuaterniond::invert_in_place 0 1 1813 115
/**
* Inverts the current quat. Returns true if the inverse is successful, false
* if the quat was singular.
*/
48
inline bool LQuaterniond::invert_in_place(void);
3492 11 is_identity 0 4 3591 25 LQuaterniond::is_identity 0 1 1814 98
/**
* Returns true if this quaternion represents the identity transformation: no
* rotation.
*/
50
inline bool LQuaterniond::is_identity(void) const;
3493 18 is_almost_identity 0 4 3591 32 LQuaterniond::is_almost_identity 0 1 1815 110
/**
* Returns true if this quaternion represents the identity transformation
* within a given tolerance.
*/
69
inline bool LQuaterniond::is_almost_identity(double tolerance) const;
3494 10 ident_quat 0 4 3591 24 LQuaterniond::ident_quat 0 1 1816 42
/**
* Returns an identity quaternion.
*/
65
static inline LQuaterniond const &LQuaterniond::ident_quat(void);
3495 14 get_class_type 0 4 3591 28 LQuaterniond::get_class_type 0 1 1817 0
53
static TypeHandle LQuaterniond::get_class_type(void);
3496 13 ~LQuaterniond 0 4 3591 27 LQuaterniond::~LQuaterniond 0 0 0
34
LQuaterniond::~LQuaterniond(void);
3497 10 LRotationf 0 4 3592 22 LRotationf::LRotationf 0 9 1818 1819 1820 1821 1822 1823 1824 1825 1826 185
/**
*
*/
/**
*
*/
/**
*
*/
/**
*
*/
/**
* lmatrix3
*/
/**
* lmatrix4
*/
/**
* axis + angle (in degrees)
*/
/**
* Sets the rotation from the given Euler angles.
*/
500
inline LRotationf::LRotationf(void);
inline LRotationf::LRotationf(LQuaternionf const &c);
inline LRotationf::LRotationf(LVecBase4f const &copy);
inline LRotationf::LRotationf(float r, float i, float j, float k);
inline LRotationf::LRotationf(LVector3f const &axis, float angle);
inline LRotationf::LRotationf(LMatrix3f const &m);
inline LRotationf::LRotationf(LMatrix4f const &m);
inline LRotationf::LRotationf(float h, float p, float r);
inline LRotationf::LRotationf(LRotationf const &) = default;
3498 10 operator * 0 4 3592 22 LRotationf::operator * 0 3 1827 1828 1829 0
211
inline LRotationf LRotationf::operator *(float scalar) const;
inline LRotationf LRotationf::operator *(LRotationf const &other) const;
inline LQuaternionf LRotationf::operator *(LQuaternionf const &other) const;
3499 10 operator / 0 4 3592 22 LRotationf::operator / 0 1 1830 0
61
inline LRotationf LRotationf::operator /(float scalar) const;
3500 14 get_class_type 0 4 3592 26 LRotationf::get_class_type 0 1 1831 0
51
static TypeHandle LRotationf::get_class_type(void);
3501 11 ~LRotationf 0 4 3592 23 LRotationf::~LRotationf 0 0 0
30
LRotationf::~LRotationf(void);
3502 10 LRotationd 0 4 3593 22 LRotationd::LRotationd 0 9 1832 1833 1834 1835 1836 1837 1838 1839 1840 185
/**
*
*/
/**
*
*/
/**
*
*/
/**
*
*/
/**
* lmatrix3
*/
/**
* lmatrix4
*/
/**
* axis + angle (in degrees)
*/
/**
* Sets the rotation from the given Euler angles.
*/
508
inline LRotationd::LRotationd(void);
inline LRotationd::LRotationd(LQuaterniond const &c);
inline LRotationd::LRotationd(LVecBase4d const &copy);
inline LRotationd::LRotationd(double r, double i, double j, double k);
inline LRotationd::LRotationd(LVector3d const &axis, double angle);
inline LRotationd::LRotationd(LMatrix3d const &m);
inline LRotationd::LRotationd(LMatrix4d const &m);
inline LRotationd::LRotationd(double h, double p, double r);
inline LRotationd::LRotationd(LRotationd const &) = default;
3503 10 operator * 0 4 3593 22 LRotationd::operator * 0 3 1841 1842 1843 0
212
inline LRotationd LRotationd::operator *(double scalar) const;
inline LRotationd LRotationd::operator *(LRotationd const &other) const;
inline LQuaterniond LRotationd::operator *(LQuaterniond const &other) const;
3504 10 operator / 0 4 3593 22 LRotationd::operator / 0 1 1844 0
62
inline LRotationd LRotationd::operator /(double scalar) const;
3505 14 get_class_type 0 4 3593 26 LRotationd::get_class_type 0 1 1845 0
51
static TypeHandle LRotationd::get_class_type(void);
3506 11 ~LRotationd 0 4 3593 23 LRotationd::~LRotationd 0 0 0
30
LRotationd::~LRotationd(void);
3507 13 LOrientationf 0 4 3594 28 LOrientationf::LOrientationf 0 7 1846 1847 1848 1849 1850 1851 1852 101
/**
*
*/
/**
*
*/
/**
*
*/
/**
* vector + twist
*/
/**
* matrix3
*/
/**
* matrix4
*/
436
inline LOrientationf::LOrientationf(void);
inline LOrientationf::LOrientationf(LQuaternionf const &c);
inline LOrientationf::LOrientationf(float r, float i, float j, float k);
inline LOrientationf::LOrientationf(LVector3f const &point_at, float twist);
inline LOrientationf::LOrientationf(LMatrix3f const &m);
inline LOrientationf::LOrientationf(LMatrix4f const &m);
inline LOrientationf::LOrientationf(LOrientationf const &) = default;
3508 10 operator * 0 4 3594 25 LOrientationf::operator * 0 2 1853 1854 0
159
inline LOrientationf LOrientationf::operator *(LRotationf const &other) const;
inline LOrientationf LOrientationf::operator *(LQuaternionf const &other) const;
3509 14 get_class_type 0 4 3594 29 LOrientationf::get_class_type 0 1 1855 0
54
static TypeHandle LOrientationf::get_class_type(void);
3510 14 ~LOrientationf 0 4 3594 29 LOrientationf::~LOrientationf 0 0 0
36
LOrientationf::~LOrientationf(void);
3511 13 LOrientationd 0 4 3595 28 LOrientationd::LOrientationd 0 7 1856 1857 1858 1859 1860 1861 1862 101
/**
*
*/
/**
*
*/
/**
*
*/
/**
* vector + twist
*/
/**
* matrix3
*/
/**
* matrix4
*/
441
inline LOrientationd::LOrientationd(void);
inline LOrientationd::LOrientationd(LQuaterniond const &c);
inline LOrientationd::LOrientationd(double r, double i, double j, double k);
inline LOrientationd::LOrientationd(LVector3d const &point_at, double twist);
inline LOrientationd::LOrientationd(LMatrix3d const &m);
inline LOrientationd::LOrientationd(LMatrix4d const &m);
inline LOrientationd::LOrientationd(LOrientationd const &) = default;
3512 10 operator * 0 4 3595 25 LOrientationd::operator * 0 2 1863 1864 0
159
inline LOrientationd LOrientationd::operator *(LRotationd const &other) const;
inline LOrientationd LOrientationd::operator *(LQuaterniond const &other) const;
3513 14 get_class_type 0 4 3595 29 LOrientationd::get_class_type 0 1 1865 0
54
static TypeHandle LOrientationd::get_class_type(void);
3514 14 ~LOrientationd 0 4 3595 29 LOrientationd::~LOrientationd 0 0 0
36
LOrientationd::~LOrientationd(void);
3515 19 ConfigVariableColor 0 4 3666 40 ConfigVariableColor::ConfigVariableColor 0 4 1866 1867 1868 1869 34
/**
*
*/
/**
*
*/
/**
*
*/
488
inline ConfigVariableColor::ConfigVariableColor(std::string const &name);
inline ConfigVariableColor::ConfigVariableColor(std::string const &name, LColor const &default_value, std::string const &description = string(), int flags = 0);
inline ConfigVariableColor::ConfigVariableColor(std::string const &name, std::string const &default_value, std::string const &description = string(), int flags = 0);
inline ConfigVariableColor::ConfigVariableColor(ConfigVariableColor const &) = default;
3516 10 operator = 0 4 3666 31 ConfigVariableColor::operator = 0 1 1870 0
65
inline void ConfigVariableColor::operator =(LColor const &value);
3517 17 operator typecast 0 132 3666 38 ConfigVariableColor::operator typecast 0 1 1875 0
43
inline operator LColor const &(void) const;
3518 11 operator [] 0 4 3666 32 ConfigVariableColor::operator [] 0 1 1871 0
65
inline PN_stdfloat ConfigVariableColor::operator [](int n) const;
3519 9 set_value 0 4 3666 30 ConfigVariableColor::set_value 0 1 1872 48
/**
* Reassigns the variable's local value.
*/
64
inline void ConfigVariableColor::set_value(LColor const &value);
3520 9 get_value 0 4 3666 30 ConfigVariableColor::get_value 0 1 1873 40
/**
* Returns the variable's value.
*/
64
inline LColor const &ConfigVariableColor::get_value(void) const;
3521 17 get_default_value 0 4 3666 38 ConfigVariableColor::get_default_value 0 1 1874 48
/**
* Returns the variable's default value.
*/
65
inline LColor ConfigVariableColor::get_default_value(void) const;
3522 20 ~ConfigVariableColor 0 4 3666 41 ConfigVariableColor::~ConfigVariableColor 0 0 0
48
ConfigVariableColor::~ConfigVariableColor(void);
1965
1 0 0 7 2 3668 1967 0 0 0
2 0 0 7 2 3668 1967 0 0 1 6 param0 0 3669
3 0 0 7 8 3671 2032 0 0 0
4 0 0 7 8 3671 2032 0 0 1 6 param0 0 3672
5 0 0 7 8 3671 2032 0 10 /**
*
*/ 1 10 fill_value 1 3526
6 0 0 7 8 3671 2032 0 10 /**
*
*/ 2 1 x 1 3526 1 y 1 3526
7 0 0 4 9 3676 0 0 0 2 4 this 3 3671 4 size 1 3674
8 0 0 6 12 3671 0 0 0 2 4 this 3 3671 4 copy 1 3672
9 0 0 6 12 3671 0 0 0 2 4 this 3 3671 10 fill_value 1 3526
10 0 0 6 13 3672 0 0 40 /**
* Returns a zero-length vector.
*/ 0
11 0 0 6 14 3672 0 0 35 /**
* Returns a unit X vector.
*/ 0
12 0 0 6 15 3672 0 0 35 /**
* Returns a unit Y vector.
*/ 0
13 0 0 6 16 3677 0 0 0 1 4 this 3 3672
14 0 0 6 17 3677 0 0 0 2 4 this 3 3672 9 attr_name 1 3680
15 0 0 6 18 3532 0 0 0 3 4 this 3 3671 9 attr_name 1 3680 6 assign 1 3677
16 0 0 4 19 3676 0 0 10 /**
*
*/ 3 4 this 3 3671 1 i 1 3532 10 assign_val 1 3526
17 0 0 6 19 3526 0 0 0 2 4 this 3 3672 1 i 1 3532
18 0 0 6 20 3532 0 0 0 0
19 0 0 6 21 3681 0 0 91 /**
* Returns true if any component of the vector is not-a-number, false
* otherwise.
*/ 1 4 this 3 3672
20 0 0 6 22 3526 0 0 10 /**
*
*/ 2 4 this 3 3672 1 i 1 3532
21 0 0 4 23 3676 0 0 10 /**
*
*/ 3 4 this 3 3671 1 i 1 3532 5 value 1 3526
22 0 0 6 24 3526 0 0 10 /**
*
*/ 1 4 this 3 3672
23 0 0 6 25 3526 0 0 10 /**
*
*/ 1 4 this 3 3672
24 0 0 4 26 3676 0 0 10 /**
*
*/ 2 4 this 3 3671 5 value 1 3526
25 0 0 4 27 3676 0 0 10 /**
*
*/ 2 4 this 3 3671 5 value 1 3526
26 0 0 4 31 3676 0 0 152 // These next functions add to an existing value. i.e.
// foo.set_x(foo.get_x() + value) These are useful to reduce overhead in
// scripting languages: 3 4 this 3 3671 1 i 1 3532 5 value 1 3526
27 0 0 4 32 3676 0 0 10 /**
*
*/ 2 4 this 3 3671 5 value 1 3526
28 0 0 4 33 3676 0 0 10 /**
*
*/ 2 4 this 3 3671 5 value 1 3526
29 0 0 4 34 3676 0 0 155 /**
* Returns the address of the first of the two data elements in the vector.
* The next element occupies the next position consecutively in memory.
*/ 1 4 this 3 3672
30 0 0 6 35 3532 0 0 0 0
31 0 0 4 36 3676 0 0 129 /**
* Sets each element of the vector to the indicated fill_value. This is
* particularly useful for initializing to zero.
*/ 2 4 this 3 3671 10 fill_value 1 3526
32 0 0 4 37 3676 0 0 10 /**
*
*/ 3 4 this 3 3671 1 x 1 3526 1 y 1 3526
33 0 0 6 38 3526 0 0 10 /**
*
*/ 2 4 this 3 3672 5 other 1 3672
34 0 0 6 39 3526 0 0 69 /**
* Returns the square of the vector's length, cheap and easy.
*/ 1 4 this 3 3672
35 0 0 6 40 3526 0 0 72 /**
* Returns the length of the vector, by the Pythagorean theorem.
*/ 1 4 this 3 3672
36 0 0 6 41 3681 0 0 127 /**
* Normalizes the vector in place. Returns true if the vector was normalized,
* false if it was a zero-length vector.
*/ 1 4 this 3 3671
37 0 0 7 42 3671 2032 0 160 /**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/ 1 4 this 3 3672
38 0 0 7 43 3671 2032 0 152 /**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/ 2 4 this 3 3672 4 onto 1 3672
39 0 0 6 44 3681 0 0 0 2 4 this 3 3672 5 other 1 3672
40 0 0 6 45 3681 0 0 0 2 4 this 3 3672 5 other 1 3672
41 0 0 6 46 3681 0 0 0 2 4 this 3 3672 5 other 1 3672
42 0 0 6 47 3532 0 0 97 /**
* This flavor of compare_to uses a default threshold value based on the
* numeric type.
*/ 2 4 this 3 3672 5 other 1 3672
43 0 0 6 47 3532 0 0 233 /**
* Sorts vectors lexicographically, componentwise. Returns a number less than
* 0 if this vector sorts before the other one, greater than zero if it sorts
* after, 0 if they are equivalent (within the indicated tolerance).
*/ 3 4 this 3 3672 5 other 1 3672 9 threshold 1 3526
44 0 0 6 48 3674 0 0 49 /**
* Returns a suitable hash for phash_map.
*/ 1 4 this 3 3672
45 0 0 6 48 3674 0 0 49 /**
* Returns a suitable hash for phash_map.
*/ 2 4 this 3 3672 9 threshold 1 3526
46 0 0 6 49 3674 0 0 49 /**
* Adds the vector into the running hash.
*/ 2 4 this 3 3672 4 hash 1 3674
47 0 0 6 49 3674 0 0 49 /**
* Adds the vector into the running hash.
*/ 3 4 this 3 3672 4 hash 1 3674 9 threshold 1 3526
48 0 0 4 50 3676 0 0 59 /**
* Adds the vector to the indicated hash generator.
*/ 2 4 this 3 3672 7 hashgen 1 3682
49 0 0 4 50 3676 0 0 59 /**
* Adds the vector to the indicated hash generator.
*/ 3 4 this 3 3672 7 hashgen 1 3682 9 threshold 1 3526
50 0 0 7 51 3671 2032 0 0 1 4 this 3 3672
51 0 0 7 52 3671 2032 0 0 2 4 this 3 3672 5 other 1 3672
52 0 0 7 53 3671 2032 0 0 2 4 this 3 3672 5 other 1 3672
53 0 0 7 54 3671 2032 0 0 2 4 this 3 3672 6 scalar 1 3526
54 0 0 7 55 3671 2032 0 0 2 4 this 3 3672 6 scalar 1 3526
55 0 0 6 56 3671 0 0 0 2 4 this 3 3671 5 other 1 3672
56 0 0 6 57 3671 0 0 0 2 4 this 3 3671 5 other 1 3672
57 0 0 6 58 3671 0 0 0 2 4 this 3 3671 6 scalar 1 3526
58 0 0 6 59 3671 0 0 0 2 4 this 3 3671 6 scalar 1 3526
59 0 0 4 60 3676 0 0 10 /**
*
*/ 2 4 this 3 3671 5 other 1 3672
60 0 0 7 61 3671 2032 0 0 2 4 this 3 3672 8 exponent 1 3526
61 0 0 6 62 3677 0 0 0 2 4 this 3 3671 8 exponent 1 3526
62 0 0 7 63 3671 2032 0 10 /**
*
*/ 2 4 this 3 3672 5 other 1 3672
63 0 0 7 64 3671 2032 0 10 /**
*
*/ 2 4 this 3 3672 5 other 1 3672
64 0 0 6 65 3681 0 0 116 /**
* Returns true if two vectors are memberwise equal within a default tolerance
* based on the numeric type.
*/ 2 4 this 3 3672 5 other 1 3672
65 0 0 6 65 3681 0 0 92 /**
* Returns true if two vectors are memberwise equal within a specified
* tolerance.
*/ 3 4 this 3 3672 5 other 1 3672 9 threshold 1 3526
66 0 0 4 66 3676 0 0 10 /**
*
*/ 2 4 this 3 3672 3 out 1 3684
67 0 0 6 67 3680 0 0 0 1 4 this 3 3672
68 0 0 4 68 3676 0 0 332 /**
* 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 appropriate when you want to
* write a fixed-width value to the datagram, especially when you are not
* writing a bam file.
*/ 2 4 this 3 3672 11 destination 1 3686
69 0 0 4 69 3676 0 0 114 /**
* Reads the vector from the Datagram using get_float32() or get_float64().
* See write_datagram_fixed().
*/ 2 4 this 3 3671 6 source 1 3688
70 0 0 4 70 3676 0 0 205 /**
* Writes the vector to the Datagram using add_stdfloat(). This is
* appropriate when you want to write the vector using the standard width
* setting, especially when you are writing a bam file.
*/ 2 4 this 3 3672 11 destination 1 3686
71 0 0 4 71 3676 0 0 67 /**
* Reads the vector from the Datagram using get_stdfloat().
*/ 2 4 this 3 3671 6 source 1 3688
72 0 0 7 72 3691 0 0 0 0
73 0 0 7 76 3692 2095 0 0 0
74 0 0 7 76 3692 2095 0 0 1 6 param0 0 3693
75 0 0 7 76 3692 2095 0 10 /**
*
*/ 1 10 fill_value 1 3529
76 0 0 7 76 3692 2095 0 10 /**
*
*/ 2 1 x 1 3529 1 y 1 3529
77 0 0 4 77 3676 0 0 0 2 4 this 3 3692 4 size 1 3674
78 0 0 6 80 3692 0 0 0 2 4 this 3 3692 4 copy 1 3693
79 0 0 6 80 3692 0 0 0 2 4 this 3 3692 10 fill_value 1 3529
80 0 0 6 81 3693 0 0 40 /**
* Returns a zero-length vector.
*/ 0
81 0 0 6 82 3693 0 0 35 /**
* Returns a unit X vector.
*/ 0
82 0 0 6 83 3693 0 0 35 /**
* Returns a unit Y vector.
*/ 0
83 0 0 6 84 3677 0 0 0 1 4 this 3 3693
84 0 0 6 85 3677 0 0 0 2 4 this 3 3693 9 attr_name 1 3680
85 0 0 6 86 3532 0 0 0 3 4 this 3 3692 9 attr_name 1 3680 6 assign 1 3677
86 0 0 4 87 3676 0 0 10 /**
*
*/ 3 4 this 3 3692 1 i 1 3532 10 assign_val 1 3529
87 0 0 6 87 3529 0 0 0 2 4 this 3 3693 1 i 1 3532
88 0 0 6 88 3532 0 0 0 0
89 0 0 6 89 3681 0 0 91 /**
* Returns true if any component of the vector is not-a-number, false
* otherwise.
*/ 1 4 this 3 3693
90 0 0 6 90 3529 0 0 10 /**
*
*/ 2 4 this 3 3693 1 i 1 3532
91 0 0 4 91 3676 0 0 10 /**
*
*/ 3 4 this 3 3692 1 i 1 3532 5 value 1 3529
92 0 0 6 92 3529 0 0 10 /**
*
*/ 1 4 this 3 3693
93 0 0 6 93 3529 0 0 10 /**
*
*/ 1 4 this 3 3693
94 0 0 4 94 3676 0 0 10 /**
*
*/ 2 4 this 3 3692 5 value 1 3529
95 0 0 4 95 3676 0 0 10 /**
*
*/ 2 4 this 3 3692 5 value 1 3529
96 0 0 4 99 3676 0 0 152 // These next functions add to an existing value. i.e.
// foo.set_x(foo.get_x() + value) These are useful to reduce overhead in
// scripting languages: 3 4 this 3 3692 1 i 1 3532 5 value 1 3529
97 0 0 4 100 3676 0 0 10 /**
*
*/ 2 4 this 3 3692 5 value 1 3529
98 0 0 4 101 3676 0 0 10 /**
*
*/ 2 4 this 3 3692 5 value 1 3529
99 0 0 4 102 3676 0 0 155 /**
* Returns the address of the first of the two data elements in the vector.
* The next element occupies the next position consecutively in memory.
*/ 1 4 this 3 3693
100 0 0 6 103 3532 0 0 0 0
101 0 0 4 104 3676 0 0 129 /**
* Sets each element of the vector to the indicated fill_value. This is
* particularly useful for initializing to zero.
*/ 2 4 this 3 3692 10 fill_value 1 3529
102 0 0 4 105 3676 0 0 10 /**
*
*/ 3 4 this 3 3692 1 x 1 3529 1 y 1 3529
103 0 0 6 106 3529 0 0 10 /**
*
*/ 2 4 this 3 3693 5 other 1 3693
104 0 0 6 107 3529 0 0 69 /**
* Returns the square of the vector's length, cheap and easy.
*/ 1 4 this 3 3693
105 0 0 6 108 3529 0 0 72 /**
* Returns the length of the vector, by the Pythagorean theorem.
*/ 1 4 this 3 3693
106 0 0 6 109 3681 0 0 127 /**
* Normalizes the vector in place. Returns true if the vector was normalized,
* false if it was a zero-length vector.
*/ 1 4 this 3 3692
107 0 0 7 110 3692 2095 0 160 /**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/ 1 4 this 3 3693
108 0 0 7 111 3692 2095 0 152 /**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/ 2 4 this 3 3693 4 onto 1 3693
109 0 0 6 112 3681 0 0 0 2 4 this 3 3693 5 other 1 3693
110 0 0 6 113 3681 0 0 0 2 4 this 3 3693 5 other 1 3693
111 0 0 6 114 3681 0 0 0 2 4 this 3 3693 5 other 1 3693
112 0 0 6 115 3532 0 0 97 /**
* This flavor of compare_to uses a default threshold value based on the
* numeric type.
*/ 2 4 this 3 3693 5 other 1 3693
113 0 0 6 115 3532 0 0 233 /**
* Sorts vectors lexicographically, componentwise. Returns a number less than
* 0 if this vector sorts before the other one, greater than zero if it sorts
* after, 0 if they are equivalent (within the indicated tolerance).
*/ 3 4 this 3 3693 5 other 1 3693 9 threshold 1 3529
114 0 0 6 116 3674 0 0 49 /**
* Returns a suitable hash for phash_map.
*/ 1 4 this 3 3693
115 0 0 6 116 3674 0 0 49 /**
* Returns a suitable hash for phash_map.
*/ 2 4 this 3 3693 9 threshold 1 3529
116 0 0 6 117 3674 0 0 49 /**
* Adds the vector into the running hash.
*/ 2 4 this 3 3693 4 hash 1 3674
117 0 0 6 117 3674 0 0 49 /**
* Adds the vector into the running hash.
*/ 3 4 this 3 3693 4 hash 1 3674 9 threshold 1 3529
118 0 0 4 118 3676 0 0 59 /**
* Adds the vector to the indicated hash generator.
*/ 2 4 this 3 3693 7 hashgen 1 3682
119 0 0 4 118 3676 0 0 59 /**
* Adds the vector to the indicated hash generator.
*/ 3 4 this 3 3693 7 hashgen 1 3682 9 threshold 1 3529
120 0 0 7 119 3692 2095 0 0 1 4 this 3 3693
121 0 0 7 120 3692 2095 0 0 2 4 this 3 3693 5 other 1 3693
122 0 0 7 121 3692 2095 0 0 2 4 this 3 3693 5 other 1 3693
123 0 0 7 122 3692 2095 0 0 2 4 this 3 3693 6 scalar 1 3529
124 0 0 7 123 3692 2095 0 0 2 4 this 3 3693 6 scalar 1 3529
125 0 0 6 124 3692 0 0 0 2 4 this 3 3692 5 other 1 3693
126 0 0 6 125 3692 0 0 0 2 4 this 3 3692 5 other 1 3693
127 0 0 6 126 3692 0 0 0 2 4 this 3 3692 6 scalar 1 3529
128 0 0 6 127 3692 0 0 0 2 4 this 3 3692 6 scalar 1 3529
129 0 0 4 128 3676 0 0 10 /**
*
*/ 2 4 this 3 3692 5 other 1 3693
130 0 0 7 129 3692 2095 0 0 2 4 this 3 3693 8 exponent 1 3529
131 0 0 6 130 3677 0 0 0 2 4 this 3 3692 8 exponent 1 3529
132 0 0 7 131 3692 2095 0 10 /**
*
*/ 2 4 this 3 3693 5 other 1 3693
133 0 0 7 132 3692 2095 0 10 /**
*
*/ 2 4 this 3 3693 5 other 1 3693
134 0 0 6 133 3681 0 0 116 /**
* Returns true if two vectors are memberwise equal within a default tolerance
* based on the numeric type.
*/ 2 4 this 3 3693 5 other 1 3693
135 0 0 6 133 3681 0 0 92 /**
* Returns true if two vectors are memberwise equal within a specified
* tolerance.
*/ 3 4 this 3 3693 5 other 1 3693 9 threshold 1 3529
136 0 0 4 134 3676 0 0 10 /**
*
*/ 2 4 this 3 3693 3 out 1 3684
137 0 0 6 135 3680 0 0 0 1 4 this 3 3693
138 0 0 4 136 3676 0 0 332 /**
* 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 appropriate when you want to
* write a fixed-width value to the datagram, especially when you are not
* writing a bam file.
*/ 2 4 this 3 3693 11 destination 1 3686
139 0 0 4 137 3676 0 0 114 /**
* Reads the vector from the Datagram using get_float32() or get_float64().
* See write_datagram_fixed().
*/ 2 4 this 3 3692 6 source 1 3688
140 0 0 4 138 3676 0 0 205 /**
* Writes the vector to the Datagram using add_stdfloat(). This is
* appropriate when you want to write the vector using the standard width
* setting, especially when you are writing a bam file.
*/ 2 4 this 3 3693 11 destination 1 3686
141 0 0 4 139 3676 0 0 67 /**
* Reads the vector from the Datagram using get_stdfloat().
*/ 2 4 this 3 3692 6 source 1 3688
142 0 0 7 140 3691 0 0 0 0
143 0 0 7 144 3695 2154 0 0 0
144 0 0 7 144 3695 2154 0 0 1 6 param0 0 3696
145 0 0 7 144 3695 2154 0 10 /**
*
*/ 1 10 fill_value 1 3532
146 0 0 7 144 3695 2154 0 10 /**
*
*/ 2 1 x 1 3532 1 y 1 3532
147 0 0 4 145 3676 0 0 0 2 4 this 3 3695 4 size 1 3674
148 0 0 6 148 3695 0 0 0 2 4 this 3 3695 4 copy 1 3696
149 0 0 6 148 3695 0 0 0 2 4 this 3 3695 10 fill_value 1 3532
150 0 0 6 149 3696 0 0 40 /**
* Returns a zero-length vector.
*/ 0
151 0 0 6 150 3696 0 0 35 /**
* Returns a unit X vector.
*/ 0
152 0 0 6 151 3696 0 0 35 /**
* Returns a unit Y vector.
*/ 0
153 0 0 6 152 3677 0 0 0 1 4 this 3 3696
154 0 0 6 153 3677 0 0 0 2 4 this 3 3696 9 attr_name 1 3680
155 0 0 6 154 3532 0 0 0 3 4 this 3 3695 9 attr_name 1 3680 6 assign 1 3677
156 0 0 4 155 3676 0 0 10 /**
*
*/ 3 4 this 3 3695 1 i 1 3532 10 assign_val 1 3532
157 0 0 6 155 3532 0 0 0 2 4 this 3 3696 1 i 1 3532
158 0 0 6 156 3532 0 0 0 0
159 0 0 6 157 3681 0 0 91 /**
* Returns true if any component of the vector is not-a-number, false
* otherwise.
*/ 1 4 this 3 3696
160 0 0 6 158 3532 0 0 10 /**
*
*/ 2 4 this 3 3696 1 i 1 3532
161 0 0 4 159 3676 0 0 10 /**
*
*/ 3 4 this 3 3695 1 i 1 3532 5 value 1 3532
162 0 0 6 160 3532 0 0 10 /**
*
*/ 1 4 this 3 3696
163 0 0 6 161 3532 0 0 10 /**
*
*/ 1 4 this 3 3696
164 0 0 4 162 3676 0 0 10 /**
*
*/ 2 4 this 3 3695 5 value 1 3532
165 0 0 4 163 3676 0 0 10 /**
*
*/ 2 4 this 3 3695 5 value 1 3532
166 0 0 4 167 3676 0 0 152 // These next functions add to an existing value. i.e.
// foo.set_x(foo.get_x() + value) These are useful to reduce overhead in
// scripting languages: 3 4 this 3 3695 1 i 1 3532 5 value 1 3532
167 0 0 4 168 3676 0 0 10 /**
*
*/ 2 4 this 3 3695 5 value 1 3532
168 0 0 4 169 3676 0 0 10 /**
*
*/ 2 4 this 3 3695 5 value 1 3532
169 0 0 4 170 3676 0 0 155 /**
* Returns the address of the first of the two data elements in the vector.
* The next element occupies the next position consecutively in memory.
*/ 1 4 this 3 3696
170 0 0 6 171 3532 0 0 0 0
171 0 0 4 172 3676 0 0 129 /**
* Sets each element of the vector to the indicated fill_value. This is
* particularly useful for initializing to zero.
*/ 2 4 this 3 3695 10 fill_value 1 3532
172 0 0 4 173 3676 0 0 10 /**
*
*/ 3 4 this 3 3695 1 x 1 3532 1 y 1 3532
173 0 0 6 174 3532 0 0 10 /**
*
*/ 2 4 this 3 3696 5 other 1 3696
174 0 0 6 175 3532 0 0 69 /**
* Returns the square of the vector's length, cheap and easy.
*/ 1 4 this 3 3696
175 0 0 6 176 3681 0 0 0 2 4 this 3 3696 5 other 1 3696
176 0 0 6 177 3681 0 0 0 2 4 this 3 3696 5 other 1 3696
177 0 0 6 178 3681 0 0 0 2 4 this 3 3696 5 other 1 3696
178 0 0 6 179 3532 0 0 97 /**
* This flavor of compare_to uses a default threshold value based on the
* numeric type.
*/ 2 4 this 3 3696 5 other 1 3696
179 0 0 6 180 3674 0 0 49 /**
* Returns a suitable hash for phash_map.
*/ 1 4 this 3 3696
180 0 0 6 181 3674 0 0 49 /**
* Adds the vector into the running hash.
*/ 2 4 this 3 3696 4 hash 1 3674
181 0 0 4 182 3676 0 0 59 /**
* Adds the vector to the indicated hash generator.
*/ 2 4 this 3 3696 7 hashgen 1 3682
182 0 0 7 183 3695 2154 0 0 1 4 this 3 3696
183 0 0 7 184 3695 2154 0 0 2 4 this 3 3696 5 other 1 3696
184 0 0 7 185 3695 2154 0 0 2 4 this 3 3696 5 other 1 3696
185 0 0 7 186 3695 2154 0 0 2 4 this 3 3696 6 scalar 1 3532
186 0 0 7 187 3695 2154 0 0 2 4 this 3 3696 6 scalar 1 3532
187 0 0 6 188 3695 0 0 0 2 4 this 3 3695 5 other 1 3696
188 0 0 6 189 3695 0 0 0 2 4 this 3 3695 5 other 1 3696
189 0 0 6 190 3695 0 0 0 2 4 this 3 3695 6 scalar 1 3532
190 0 0 6 191 3695 0 0 0 2 4 this 3 3695 6 scalar 1 3532
191 0 0 4 192 3676 0 0 10 /**
*
*/ 2 4 this 3 3695 5 other 1 3696
192 0 0 7 193 3695 2154 0 0 2 4 this 3 3696 8 exponent 1 3532
193 0 0 6 194 3677 0 0 0 2 4 this 3 3695 8 exponent 1 3532
194 0 0 7 195 3695 2154 0 10 /**
*
*/ 2 4 this 3 3696 5 other 1 3696
195 0 0 7 196 3695 2154 0 10 /**
*
*/ 2 4 this 3 3696 5 other 1 3696
196 0 0 6 197 3681 0 0 116 /**
* Returns true if two vectors are memberwise equal within a default tolerance
* based on the numeric type.
*/ 2 4 this 3 3696 5 other 1 3696
197 0 0 6 197 3681 0 0 92 /**
* Returns true if two vectors are memberwise equal within a specified
* tolerance.
*/ 3 4 this 3 3696 5 other 1 3696 9 threshold 1 3532
198 0 0 4 198 3676 0 0 10 /**
*
*/ 2 4 this 3 3696 3 out 1 3684
199 0 0 6 199 3680 0 0 0 1 4 this 3 3696
200 0 0 4 200 3676 0 0 332 /**
* 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 appropriate when you want to
* write a fixed-width value to the datagram, especially when you are not
* writing a bam file.
*/ 2 4 this 3 3696 11 destination 1 3686
201 0 0 4 201 3676 0 0 114 /**
* Reads the vector from the Datagram using get_float32() or get_float64().
* See write_datagram_fixed().
*/ 2 4 this 3 3695 6 source 1 3688
202 0 0 4 202 3676 0 0 205 /**
* Writes the vector to the Datagram using add_stdfloat(). This is
* appropriate when you want to write the vector using the standard width
* setting, especially when you are writing a bam file.
*/ 2 4 this 3 3696 11 destination 1 3686
203 0 0 4 203 3676 0 0 67 /**
* Reads the vector from the Datagram using get_stdfloat().
*/ 2 4 this 3 3695 6 source 1 3688
204 0 0 7 204 3691 0 0 0 0
205 0 0 7 207 3698 2172 0 0 0
206 0 0 7 207 3698 2172 0 53 /**
* Constructs a new LVector2 from a LVecBase2
*/ 1 4 copy 1 3672
207 0 0 7 207 3698 2172 0 0 1 6 param0 0 3699
208 0 0 7 207 3698 2172 0 79 /**
* Constructs a new LVector2 with all components set to the fill value.
*/ 1 10 fill_value 1 3526
209 0 0 7 207 3698 2172 0 10 /**
*
*/ 2 1 x 1 3526 1 y 1 3526
210 0 0 6 208 3677 0 0 0 2 4 this 3 3699 9 attr_name 1 3680
211 0 0 6 209 3532 0 0 0 3 4 this 3 3698 9 attr_name 1 3680 6 assign 1 3677
212 0 0 6 210 3699 0 0 40 /**
* Returns a zero-length vector.
*/ 0
213 0 0 6 211 3699 0 0 35 /**
* Returns a unit X vector.
*/ 0
214 0 0 6 212 3699 0 0 35 /**
* Returns a unit Y vector.
*/ 0
215 0 0 7 213 3698 2172 0 0 1 4 this 3 3699
216 0 0 7 214 3671 2032 0 0 2 4 this 3 3699 5 other 1 3672
217 0 0 7 214 3698 2172 0 0 2 4 this 3 3699 5 other 1 3699
218 0 0 7 215 3671 2032 0 0 2 4 this 3 3699 5 other 1 3672
219 0 0 7 215 3698 2172 0 0 2 4 this 3 3699 5 other 1 3699
220 0 0 7 216 3698 2172 0 0 2 4 this 3 3699 6 scalar 1 3526
221 0 0 7 217 3698 2172 0 0 2 4 this 3 3699 6 scalar 1 3526
222 0 0 7 218 3698 2172 0 160 /**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/ 1 4 this 3 3699
223 0 0 7 219 3698 2172 0 152 /**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/ 2 4 this 3 3699 4 onto 1 3672
224 0 0 6 220 3526 0 0 92 /**
* returns the signed angled between two vectors. normalization is NOT
* necessary
*/ 2 4 this 3 3699 5 other 1 3699
225 0 0 6 221 3526 0 0 92 /**
* returns the signed angled between two vectors. normalization is NOT
* necessary
*/ 2 4 this 3 3699 5 other 1 3699
226 0 0 6 222 3680 0 0 0 1 4 this 3 3699
227 0 0 7 223 3691 0 0 0 0
228 0 0 7 226 3701 2190 0 0 0
229 0 0 7 226 3701 2190 0 53 /**
* Constructs a new LVector2 from a LVecBase2
*/ 1 4 copy 1 3693
230 0 0 7 226 3701 2190 0 0 1 6 param0 0 3702
231 0 0 7 226 3701 2190 0 79 /**
* Constructs a new LVector2 with all components set to the fill value.
*/ 1 10 fill_value 1 3529
232 0 0 7 226 3701 2190 0 10 /**
*
*/ 2 1 x 1 3529 1 y 1 3529
233 0 0 6 227 3677 0 0 0 2 4 this 3 3702 9 attr_name 1 3680
234 0 0 6 228 3532 0 0 0 3 4 this 3 3701 9 attr_name 1 3680 6 assign 1 3677
235 0 0 6 229 3702 0 0 40 /**
* Returns a zero-length vector.
*/ 0
236 0 0 6 230 3702 0 0 35 /**
* Returns a unit X vector.
*/ 0
237 0 0 6 231 3702 0 0 35 /**
* Returns a unit Y vector.
*/ 0
238 0 0 7 232 3701 2190 0 0 1 4 this 3 3702
239 0 0 7 233 3692 2095 0 0 2 4 this 3 3702 5 other 1 3693
240 0 0 7 233 3701 2190 0 0 2 4 this 3 3702 5 other 1 3702
241 0 0 7 234 3692 2095 0 0 2 4 this 3 3702 5 other 1 3693
242 0 0 7 234 3701 2190 0 0 2 4 this 3 3702 5 other 1 3702
243 0 0 7 235 3701 2190 0 0 2 4 this 3 3702 6 scalar 1 3529
244 0 0 7 236 3701 2190 0 0 2 4 this 3 3702 6 scalar 1 3529
245 0 0 7 237 3701 2190 0 160 /**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/ 1 4 this 3 3702
246 0 0 7 238 3701 2190 0 152 /**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/ 2 4 this 3 3702 4 onto 1 3693
247 0 0 6 239 3529 0 0 92 /**
* returns the signed angled between two vectors. normalization is NOT
* necessary
*/ 2 4 this 3 3702 5 other 1 3702
248 0 0 6 240 3529 0 0 92 /**
* returns the signed angled between two vectors. normalization is NOT
* necessary
*/ 2 4 this 3 3702 5 other 1 3702
249 0 0 6 241 3680 0 0 0 1 4 this 3 3702
250 0 0 7 242 3691 0 0 0 0
251 0 0 7 245 3704 2204 0 0 0
252 0 0 7 245 3704 2204 0 53 /**
* Constructs a new LVector2 from a LVecBase2
*/ 1 4 copy 1 3696
253 0 0 7 245 3704 2204 0 0 1 6 param0 0 3705
254 0 0 7 245 3704 2204 0 79 /**
* Constructs a new LVector2 with all components set to the fill value.
*/ 1 10 fill_value 1 3532
255 0 0 7 245 3704 2204 0 10 /**
*
*/ 2 1 x 1 3532 1 y 1 3532
256 0 0 6 246 3677 0 0 0 2 4 this 3 3705 9 attr_name 1 3680
257 0 0 6 247 3532 0 0 0 3 4 this 3 3704 9 attr_name 1 3680 6 assign 1 3677
258 0 0 6 248 3705 0 0 40 /**
* Returns a zero-length vector.
*/ 0
259 0 0 6 249 3705 0 0 35 /**
* Returns a unit X vector.
*/ 0
260 0 0 6 250 3705 0 0 35 /**
* Returns a unit Y vector.
*/ 0
261 0 0 7 251 3704 2204 0 0 1 4 this 3 3705
262 0 0 7 252 3695 2154 0 0 2 4 this 3 3705 5 other 1 3696
263 0 0 7 252 3704 2204 0 0 2 4 this 3 3705 5 other 1 3705
264 0 0 7 253 3695 2154 0 0 2 4 this 3 3705 5 other 1 3696
265 0 0 7 253 3704 2204 0 0 2 4 this 3 3705 5 other 1 3705
266 0 0 7 254 3704 2204 0 0 2 4 this 3 3705 6 scalar 1 3532
267 0 0 7 255 3704 2204 0 0 2 4 this 3 3705 6 scalar 1 3532
268 0 0 6 256 3680 0 0 0 1 4 this 3 3705
269 0 0 7 257 3691 0 0 0 0
270 0 0 7 260 3707 2220 0 0 0
271 0 0 7 260 3707 2220 0 0 1 6 param0 0 3708
272 0 0 7 260 3707 2220 0 52 /**
* Constructs a new LPoint2 from a LVecBase2
*/ 1 4 copy 1 3672
273 0 0 7 260 3707 2220 0 73 /**
* Constructs a new LPoint2 all components set to the fill value.
*/ 1 10 fill_value 1 3526
274 0 0 7 260 3707 2220 0 61 /**
* Constructs a new LPoint2 with the given components
*/ 2 1 x 1 3526 1 y 1 3526
275 0 0 6 261 3677 0 0 0 2 4 this 3 3708 9 attr_name 1 3680
276 0 0 6 262 3532 0 0 0 3 4 this 3 3707 9 attr_name 1 3680 6 assign 1 3677
277 0 0 6 263 3708 0 0 39 /**
* Returns a zero-length point.
*/ 0
278 0 0 6 264 3708 0 0 34 /**
* Returns a unit X point.
*/ 0
279 0 0 6 265 3708 0 0 34 /**
* Returns a unit Y point.
*/ 0
280 0 0 7 266 3707 2220 0 0 1 4 this 3 3708
281 0 0 7 267 3671 2032 0 0 2 4 this 3 3708 5 other 1 3672
282 0 0 7 267 3707 2220 0 0 2 4 this 3 3708 5 other 1 3699
283 0 0 7 268 3698 2172 0 0 2 4 this 3 3708 5 other 1 3708
284 0 0 7 268 3671 2032 0 0 2 4 this 3 3708 5 other 1 3672
285 0 0 7 268 3707 2220 0 0 2 4 this 3 3708 5 other 1 3699
286 0 0 7 269 3707 2220 0 0 2 4 this 3 3708 6 scalar 1 3526
287 0 0 7 270 3707 2220 0 0 2 4 this 3 3708 6 scalar 1 3526
288 0 0 7 271 3707 2220 0 160 /**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/ 1 4 this 3 3708
289 0 0 7 272 3707 2220 0 152 /**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/ 2 4 this 3 3708 4 onto 1 3672
290 0 0 6 273 3680 0 0 0 1 4 this 3 3708
291 0 0 7 274 3691 0 0 0 0
292 0 0 7 277 3710 2236 0 0 0
293 0 0 7 277 3710 2236 0 0 1 6 param0 0 3711
294 0 0 7 277 3710 2236 0 52 /**
* Constructs a new LPoint2 from a LVecBase2
*/ 1 4 copy 1 3693
295 0 0 7 277 3710 2236 0 73 /**
* Constructs a new LPoint2 all components set to the fill value.
*/ 1 10 fill_value 1 3529
296 0 0 7 277 3710 2236 0 61 /**
* Constructs a new LPoint2 with the given components
*/ 2 1 x 1 3529 1 y 1 3529
297 0 0 6 278 3677 0 0 0 2 4 this 3 3711 9 attr_name 1 3680
298 0 0 6 279 3532 0 0 0 3 4 this 3 3710 9 attr_name 1 3680 6 assign 1 3677
299 0 0 6 280 3711 0 0 39 /**
* Returns a zero-length point.
*/ 0
300 0 0 6 281 3711 0 0 34 /**
* Returns a unit X point.
*/ 0
301 0 0 6 282 3711 0 0 34 /**
* Returns a unit Y point.
*/ 0
302 0 0 7 283 3710 2236 0 0 1 4 this 3 3711
303 0 0 7 284 3692 2095 0 0 2 4 this 3 3711 5 other 1 3693
304 0 0 7 284 3710 2236 0 0 2 4 this 3 3711 5 other 1 3702
305 0 0 7 285 3701 2190 0 0 2 4 this 3 3711 5 other 1 3711
306 0 0 7 285 3692 2095 0 0 2 4 this 3 3711 5 other 1 3693
307 0 0 7 285 3710 2236 0 0 2 4 this 3 3711 5 other 1 3702
308 0 0 7 286 3710 2236 0 0 2 4 this 3 3711 6 scalar 1 3529
309 0 0 7 287 3710 2236 0 0 2 4 this 3 3711 6 scalar 1 3529
310 0 0 7 288 3710 2236 0 160 /**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/ 1 4 this 3 3711
311 0 0 7 289 3710 2236 0 152 /**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/ 2 4 this 3 3711 4 onto 1 3693
312 0 0 6 290 3680 0 0 0 1 4 this 3 3711
313 0 0 7 291 3691 0 0 0 0
314 0 0 7 294 3713 2250 0 0 0
315 0 0 7 294 3713 2250 0 0 1 6 param0 0 3714
316 0 0 7 294 3713 2250 0 52 /**
* Constructs a new LPoint2 from a LVecBase2
*/ 1 4 copy 1 3696
317 0 0 7 294 3713 2250 0 73 /**
* Constructs a new LPoint2 all components set to the fill value.
*/ 1 10 fill_value 1 3532
318 0 0 7 294 3713 2250 0 61 /**
* Constructs a new LPoint2 with the given components
*/ 2 1 x 1 3532 1 y 1 3532
319 0 0 6 295 3677 0 0 0 2 4 this 3 3714 9 attr_name 1 3680
320 0 0 6 296 3532 0 0 0 3 4 this 3 3713 9 attr_name 1 3680 6 assign 1 3677
321 0 0 6 297 3714 0 0 39 /**
* Returns a zero-length point.
*/ 0
322 0 0 6 298 3714 0 0 34 /**
* Returns a unit X point.
*/ 0
323 0 0 6 299 3714 0 0 34 /**
* Returns a unit Y point.
*/ 0
324 0 0 7 300 3713 2250 0 0 1 4 this 3 3714
325 0 0 7 301 3695 2154 0 0 2 4 this 3 3714 5 other 1 3696
326 0 0 7 301 3713 2250 0 0 2 4 this 3 3714 5 other 1 3705
327 0 0 7 302 3704 2204 0 0 2 4 this 3 3714 5 other 1 3714
328 0 0 7 302 3695 2154 0 0 2 4 this 3 3714 5 other 1 3696
329 0 0 7 302 3713 2250 0 0 2 4 this 3 3714 5 other 1 3705
330 0 0 7 303 3713 2250 0 0 2 4 this 3 3714 6 scalar 1 3532
331 0 0 7 304 3713 2250 0 0 2 4 this 3 3714 6 scalar 1 3532
332 0 0 6 305 3680 0 0 0 1 4 this 3 3714
333 0 0 7 306 3691 0 0 0 0
334 0 0 7 310 3716 2323 0 0 0
335 0 0 7 310 3716 2323 0 10 /**
*
*/ 2 4 copy 1 3672 1 z 1 3526
336 0 0 7 310 3716 2323 0 0 1 6 param0 0 3717
337 0 0 7 310 3716 2323 0 10 /**
*
*/ 1 10 fill_value 1 3526
338 0 0 7 310 3716 2323 0 10 /**
*
*/ 3 1 x 1 3526 1 y 1 3526 1 z 1 3526
339 0 0 4 311 3676 0 0 0 2 4 this 3 3716 4 size 1 3674
340 0 0 6 314 3716 0 0 0 2 4 this 3 3716 4 copy 1 3717
341 0 0 6 314 3716 0 0 0 2 4 this 3 3716 10 fill_value 1 3526
342 0 0 6 315 3717 0 0 40 /**
* Returns a zero-length vector.
*/ 0
343 0 0 6 316 3717 0 0 35 /**
* Returns a unit X vector.
*/ 0
344 0 0 6 317 3717 0 0 35 /**
* Returns a unit Y vector.
*/ 0
345 0 0 6 318 3717 0 0 35 /**
* Returns a unit Z vector.
*/ 0
346 0 0 6 319 3677 0 0 0 1 4 this 3 3717
347 0 0 6 320 3677 0 0 0 2 4 this 3 3717 9 attr_name 1 3680
348 0 0 6 321 3532 0 0 0 3 4 this 3 3716 9 attr_name 1 3680 6 assign 1 3677
349 0 0 4 322 3676 0 0 10 /**
*
*/ 3 4 this 3 3716 1 i 1 3532 10 assign_val 1 3526
350 0 0 6 322 3526 0 0 0 2 4 this 3 3717 1 i 1 3532
351 0 0 6 323 3532 0 0 0 0
352 0 0 6 324 3681 0 0 91 /**
* Returns true if any component of the vector is not-a-number, false
* otherwise.
*/ 1 4 this 3 3717
353 0 0 6 325 3526 0 0 10 /**
*
*/ 2 4 this 3 3717 1 i 1 3532
354 0 0 6 326 3526 0 0 10 /**
*
*/ 1 4 this 3 3717
355 0 0 6 327 3526 0 0 10 /**
*
*/ 1 4 this 3 3717
356 0 0 6 328 3526 0 0 10 /**
*
*/ 1 4 this 3 3717
357 0 0 4 329 3676 0 0 10 /**
*
*/ 3 4 this 3 3716 1 i 1 3532 5 value 1 3526
358 0 0 4 330 3676 0 0 10 /**
*
*/ 2 4 this 3 3716 5 value 1 3526
359 0 0 4 331 3676 0 0 10 /**
*
*/ 2 4 this 3 3716 5 value 1 3526
360 0 0 4 332 3676 0 0 10 /**
*
*/ 2 4 this 3 3716 5 value 1 3526
361 0 0 7 333 3671 2032 0 100 /**
* Returns a 2-component vector that shares just the first two components of
* this vector.
*/ 1 4 this 3 3717
362 0 0 7 334 3671 2032 0 105 /**
* Returns a 2-component vector that shares just the first and last components
* of this vector.
*/ 1 4 this 3 3717
363 0 0 7 335 3671 2032 0 99 /**
* Returns a 2-component vector that shares just the last two components of
* this vector.
*/ 1 4 this 3 3717
364 0 0 4 342 3676 0 0 152 // These next functions add to an existing value. i.e.
// foo.set_x(foo.get_x() + value) These are useful to reduce overhead in
// scripting languages: 3 4 this 3 3716 1 i 1 3532 5 value 1 3526
365 0 0 4 343 3676 0 0 10 /**
*
*/ 2 4 this 3 3716 5 value 1 3526
366 0 0 4 344 3676 0 0 10 /**
*
*/ 2 4 this 3 3716 5 value 1 3526
367 0 0 4 345 3676 0 0 10 /**
*
*/ 2 4 this 3 3716 5 value 1 3526
368 0 0 4 346 3676 0 0 162 /**
* Returns the address of the first of the three data elements in the vector.
* The remaining elements occupy the next positions consecutively in memory.
*/ 1 4 this 3 3717
369 0 0 6 347 3532 0 0 0 0
370 0 0 4 348 3676 0 0 129 /**
* Sets each element of the vector to the indicated fill_value. This is
* particularly useful for initializing to zero.
*/ 2 4 this 3 3716 10 fill_value 1 3526
371 0 0 4 349 3676 0 0 10 /**
*
*/ 4 4 this 3 3716 1 x 1 3526 1 y 1 3526 1 z 1 3526
372 0 0 6 350 3526 0 0 10 /**
*
*/ 2 4 this 3 3717 5 other 1 3717
373 0 0 6 351 3526 0 0 69 /**
* Returns the square of the vector's length, cheap and easy.
*/ 1 4 this 3 3717
374 0 0 6 352 3526 0 0 72 /**
* Returns the length of the vector, by the Pythagorean theorem.
*/ 1 4 this 3 3717
375 0 0 6 353 3681 0 0 127 /**
* Normalizes the vector in place. Returns true if the vector was normalized,
* false if it was a zero-length vector.
*/ 1 4 this 3 3716
376 0 0 7 354 3716 2323 0 160 /**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/ 1 4 this 3 3717
377 0 0 7 355 3716 2323 0 152 /**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/ 2 4 this 3 3717 4 onto 1 3717
378 0 0 7 356 3716 2323 0 10 /**
*
*/ 2 4 this 3 3717 5 other 1 3717
379 0 0 6 357 3681 0 0 0 2 4 this 3 3717 5 other 1 3717
380 0 0 6 358 3681 0 0 0 2 4 this 3 3717 5 other 1 3717
381 0 0 6 359 3681 0 0 0 2 4 this 3 3717 5 other 1 3717
382 0 0 7 360 3716 2323 0 623 /**
* Try to un-spin the hpr to a standard form. Like all standards, someone
* decides between many arbitrary possible standards. This function assumes
* that 0 and 360 are the same, as is 720 and -360. Also 180 and -180 are the
* same. Another example is -90 and 270. Each element will be in the range
* -180.0 to 179.99999. The original usage of this function is for human
* readable output.
*
* It doesn't work so well for asserting that foo_hpr is roughly equal to
* bar_hpr. Try using LQuaternionf::is_same_direction() for that. See Also:
* get_standardized_rotation, LQuaternion::is_same_direction
*/ 1 4 this 3 3717
383 0 0 6 361 3532 0 0 97 /**
* This flavor of compare_to uses a default threshold value based on the
* numeric type.
*/ 2 4 this 3 3717 5 other 1 3717
384 0 0 6 361 3532 0 0 233 /**
* Sorts vectors lexicographically, componentwise. Returns a number less than
* 0 if this vector sorts before the other one, greater than zero if it sorts
* after, 0 if they are equivalent (within the indicated tolerance).
*/ 3 4 this 3 3717 5 other 1 3717 9 threshold 1 3526
385 0 0 6 362 3674 0 0 49 /**
* Returns a suitable hash for phash_map.
*/ 1 4 this 3 3717
386 0 0 6 362 3674 0 0 49 /**
* Returns a suitable hash for phash_map.
*/ 2 4 this 3 3717 9 threshold 1 3526
387 0 0 6 363 3674 0 0 49 /**
* Adds the vector into the running hash.
*/ 2 4 this 3 3717 4 hash 1 3674
388 0 0 6 363 3674 0 0 49 /**
* Adds the vector into the running hash.
*/ 3 4 this 3 3717 4 hash 1 3674 9 threshold 1 3526
389 0 0 4 364 3676 0 0 59 /**
* Adds the vector to the indicated hash generator.
*/ 2 4 this 3 3717 7 hashgen 1 3682
390 0 0 4 364 3676 0 0 59 /**
* Adds the vector to the indicated hash generator.
*/ 3 4 this 3 3717 7 hashgen 1 3682 9 threshold 1 3526
391 0 0 7 365 3716 2323 0 0 1 4 this 3 3717
392 0 0 7 366 3716 2323 0 0 2 4 this 3 3717 5 other 1 3717
393 0 0 7 367 3716 2323 0 0 2 4 this 3 3717 5 other 1 3717
394 0 0 7 368 3716 2323 0 0 2 4 this 3 3717 6 scalar 1 3526
395 0 0 7 369 3716 2323 0 0 2 4 this 3 3717 6 scalar 1 3526
396 0 0 6 370 3716 0 0 0 2 4 this 3 3716 5 other 1 3717
397 0 0 6 371 3716 0 0 0 2 4 this 3 3716 5 other 1 3717
398 0 0 6 372 3716 0 0 0 2 4 this 3 3716 6 scalar 1 3526
399 0 0 6 373 3716 0 0 0 2 4 this 3 3716 6 scalar 1 3526
400 0 0 4 374 3676 0 0 10 /**
*
*/ 2 4 this 3 3716 5 other 1 3717
401 0 0 7 375 3716 2323 0 0 2 4 this 3 3717 8 exponent 1 3526
402 0 0 6 376 3677 0 0 0 2 4 this 3 3716 8 exponent 1 3526
403 0 0 7 377 3716 2323 0 10 /**
*
*/ 2 4 this 3 3717 5 other 1 3717
404 0 0 7 378 3716 2323 0 10 /**
*
*/ 2 4 this 3 3717 5 other 1 3717
405 0 0 4 379 3676 0 0 10 /**
*
*/ 2 4 this 3 3716 5 other 1 3717
406 0 0 6 380 3681 0 0 116 /**
* Returns true if two vectors are memberwise equal within a default tolerance
* based on the numeric type.
*/ 2 4 this 3 3717 5 other 1 3717
407 0 0 6 380 3681 0 0 92 /**
* Returns true if two vectors are memberwise equal within a specified
* tolerance.
*/ 3 4 this 3 3717 5 other 1 3717 9 threshold 1 3526
408 0 0 4 381 3676 0 0 10 /**
*
*/ 2 4 this 3 3717 3 out 1 3684
409 0 0 6 382 3680 0 0 0 1 4 this 3 3717
410 0 0 4 383 3676 0 0 332 /**
* 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 appropriate when you want to
* write a fixed-width value to the datagram, especially when you are not
* writing a bam file.
*/ 2 4 this 3 3717 11 destination 1 3686
411 0 0 4 384 3676 0 0 114 /**
* Reads the vector from the Datagram using get_float32() or get_float64().
* See write_datagram_fixed().
*/ 2 4 this 3 3716 6 source 1 3688
412 0 0 4 385 3676 0 0 205 /**
* Writes the vector to the Datagram using add_stdfloat(). This is
* appropriate when you want to write the vector using the standard width
* setting, especially when you are writing a bam file.
*/ 2 4 this 3 3717 11 destination 1 3686
413 0 0 4 386 3676 0 0 67 /**
* Reads the vector from the Datagram using get_stdfloat().
*/ 2 4 this 3 3716 6 source 1 3688
414 0 0 7 387 3691 0 0 0 0
415 0 0 7 391 3719 2396 0 0 0
416 0 0 7 391 3719 2396 0 10 /**
*
*/ 2 4 copy 1 3693 1 z 1 3529
417 0 0 7 391 3719 2396 0 0 1 6 param0 0 3720
418 0 0 7 391 3719 2396 0 10 /**
*
*/ 1 10 fill_value 1 3529
419 0 0 7 391 3719 2396 0 10 /**
*
*/ 3 1 x 1 3529 1 y 1 3529 1 z 1 3529
420 0 0 4 392 3676 0 0 0 2 4 this 3 3719 4 size 1 3674
421 0 0 6 395 3719 0 0 0 2 4 this 3 3719 4 copy 1 3720
422 0 0 6 395 3719 0 0 0 2 4 this 3 3719 10 fill_value 1 3529
423 0 0 6 396 3720 0 0 40 /**
* Returns a zero-length vector.
*/ 0
424 0 0 6 397 3720 0 0 35 /**
* Returns a unit X vector.
*/ 0
425 0 0 6 398 3720 0 0 35 /**
* Returns a unit Y vector.
*/ 0
426 0 0 6 399 3720 0 0 35 /**
* Returns a unit Z vector.
*/ 0
427 0 0 6 400 3677 0 0 0 1 4 this 3 3720
428 0 0 6 401 3677 0 0 0 2 4 this 3 3720 9 attr_name 1 3680
429 0 0 6 402 3532 0 0 0 3 4 this 3 3719 9 attr_name 1 3680 6 assign 1 3677
430 0 0 4 403 3676 0 0 10 /**
*
*/ 3 4 this 3 3719 1 i 1 3532 10 assign_val 1 3529
431 0 0 6 403 3529 0 0 0 2 4 this 3 3720 1 i 1 3532
432 0 0 6 404 3532 0 0 0 0
433 0 0 6 405 3681 0 0 91 /**
* Returns true if any component of the vector is not-a-number, false
* otherwise.
*/ 1 4 this 3 3720
434 0 0 6 406 3529 0 0 10 /**
*
*/ 2 4 this 3 3720 1 i 1 3532
435 0 0 6 407 3529 0 0 10 /**
*
*/ 1 4 this 3 3720
436 0 0 6 408 3529 0 0 10 /**
*
*/ 1 4 this 3 3720
437 0 0 6 409 3529 0 0 10 /**
*
*/ 1 4 this 3 3720
438 0 0 4 410 3676 0 0 10 /**
*
*/ 3 4 this 3 3719 1 i 1 3532 5 value 1 3529
439 0 0 4 411 3676 0 0 10 /**
*
*/ 2 4 this 3 3719 5 value 1 3529
440 0 0 4 412 3676 0 0 10 /**
*
*/ 2 4 this 3 3719 5 value 1 3529
441 0 0 4 413 3676 0 0 10 /**
*
*/ 2 4 this 3 3719 5 value 1 3529
442 0 0 7 414 3692 2095 0 100 /**
* Returns a 2-component vector that shares just the first two components of
* this vector.
*/ 1 4 this 3 3720
443 0 0 7 415 3692 2095 0 105 /**
* Returns a 2-component vector that shares just the first and last components
* of this vector.
*/ 1 4 this 3 3720
444 0 0 7 416 3692 2095 0 99 /**
* Returns a 2-component vector that shares just the last two components of
* this vector.
*/ 1 4 this 3 3720
445 0 0 4 423 3676 0 0 152 // These next functions add to an existing value. i.e.
// foo.set_x(foo.get_x() + value) These are useful to reduce overhead in
// scripting languages: 3 4 this 3 3719 1 i 1 3532 5 value 1 3529
446 0 0 4 424 3676 0 0 10 /**
*
*/ 2 4 this 3 3719 5 value 1 3529
447 0 0 4 425 3676 0 0 10 /**
*
*/ 2 4 this 3 3719 5 value 1 3529
448 0 0 4 426 3676 0 0 10 /**
*
*/ 2 4 this 3 3719 5 value 1 3529
449 0 0 4 427 3676 0 0 162 /**
* Returns the address of the first of the three data elements in the vector.
* The remaining elements occupy the next positions consecutively in memory.
*/ 1 4 this 3 3720
450 0 0 6 428 3532 0 0 0 0
451 0 0 4 429 3676 0 0 129 /**
* Sets each element of the vector to the indicated fill_value. This is
* particularly useful for initializing to zero.
*/ 2 4 this 3 3719 10 fill_value 1 3529
452 0 0 4 430 3676 0 0 10 /**
*
*/ 4 4 this 3 3719 1 x 1 3529 1 y 1 3529 1 z 1 3529
453 0 0 6 431 3529 0 0 10 /**
*
*/ 2 4 this 3 3720 5 other 1 3720
454 0 0 6 432 3529 0 0 69 /**
* Returns the square of the vector's length, cheap and easy.
*/ 1 4 this 3 3720
455 0 0 6 433 3529 0 0 72 /**
* Returns the length of the vector, by the Pythagorean theorem.
*/ 1 4 this 3 3720
456 0 0 6 434 3681 0 0 127 /**
* Normalizes the vector in place. Returns true if the vector was normalized,
* false if it was a zero-length vector.
*/ 1 4 this 3 3719
457 0 0 7 435 3719 2396 0 160 /**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/ 1 4 this 3 3720
458 0 0 7 436 3719 2396 0 152 /**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/ 2 4 this 3 3720 4 onto 1 3720
459 0 0 7 437 3719 2396 0 10 /**
*
*/ 2 4 this 3 3720 5 other 1 3720
460 0 0 6 438 3681 0 0 0 2 4 this 3 3720 5 other 1 3720
461 0 0 6 439 3681 0 0 0 2 4 this 3 3720 5 other 1 3720
462 0 0 6 440 3681 0 0 0 2 4 this 3 3720 5 other 1 3720
463 0 0 7 441 3719 2396 0 623 /**
* Try to un-spin the hpr to a standard form. Like all standards, someone
* decides between many arbitrary possible standards. This function assumes
* that 0 and 360 are the same, as is 720 and -360. Also 180 and -180 are the
* same. Another example is -90 and 270. Each element will be in the range
* -180.0 to 179.99999. The original usage of this function is for human
* readable output.
*
* It doesn't work so well for asserting that foo_hpr is roughly equal to
* bar_hpr. Try using LQuaternionf::is_same_direction() for that. See Also:
* get_standardized_rotation, LQuaternion::is_same_direction
*/ 1 4 this 3 3720
464 0 0 6 442 3532 0 0 97 /**
* This flavor of compare_to uses a default threshold value based on the
* numeric type.
*/ 2 4 this 3 3720 5 other 1 3720
465 0 0 6 442 3532 0 0 233 /**
* Sorts vectors lexicographically, componentwise. Returns a number less than
* 0 if this vector sorts before the other one, greater than zero if it sorts
* after, 0 if they are equivalent (within the indicated tolerance).
*/ 3 4 this 3 3720 5 other 1 3720 9 threshold 1 3529
466 0 0 6 443 3674 0 0 49 /**
* Returns a suitable hash for phash_map.
*/ 1 4 this 3 3720
467 0 0 6 443 3674 0 0 49 /**
* Returns a suitable hash for phash_map.
*/ 2 4 this 3 3720 9 threshold 1 3529
468 0 0 6 444 3674 0 0 49 /**
* Adds the vector into the running hash.
*/ 2 4 this 3 3720 4 hash 1 3674
469 0 0 6 444 3674 0 0 49 /**
* Adds the vector into the running hash.
*/ 3 4 this 3 3720 4 hash 1 3674 9 threshold 1 3529
470 0 0 4 445 3676 0 0 59 /**
* Adds the vector to the indicated hash generator.
*/ 2 4 this 3 3720 7 hashgen 1 3682
471 0 0 4 445 3676 0 0 59 /**
* Adds the vector to the indicated hash generator.
*/ 3 4 this 3 3720 7 hashgen 1 3682 9 threshold 1 3529
472 0 0 7 446 3719 2396 0 0 1 4 this 3 3720
473 0 0 7 447 3719 2396 0 0 2 4 this 3 3720 5 other 1 3720
474 0 0 7 448 3719 2396 0 0 2 4 this 3 3720 5 other 1 3720
475 0 0 7 449 3719 2396 0 0 2 4 this 3 3720 6 scalar 1 3529
476 0 0 7 450 3719 2396 0 0 2 4 this 3 3720 6 scalar 1 3529
477 0 0 6 451 3719 0 0 0 2 4 this 3 3719 5 other 1 3720
478 0 0 6 452 3719 0 0 0 2 4 this 3 3719 5 other 1 3720
479 0 0 6 453 3719 0 0 0 2 4 this 3 3719 6 scalar 1 3529
480 0 0 6 454 3719 0 0 0 2 4 this 3 3719 6 scalar 1 3529
481 0 0 4 455 3676 0 0 10 /**
*
*/ 2 4 this 3 3719 5 other 1 3720
482 0 0 7 456 3719 2396 0 0 2 4 this 3 3720 8 exponent 1 3529
483 0 0 6 457 3677 0 0 0 2 4 this 3 3719 8 exponent 1 3529
484 0 0 7 458 3719 2396 0 10 /**
*
*/ 2 4 this 3 3720 5 other 1 3720
485 0 0 7 459 3719 2396 0 10 /**
*
*/ 2 4 this 3 3720 5 other 1 3720
486 0 0 4 460 3676 0 0 10 /**
*
*/ 2 4 this 3 3719 5 other 1 3720
487 0 0 6 461 3681 0 0 116 /**
* Returns true if two vectors are memberwise equal within a default tolerance
* based on the numeric type.
*/ 2 4 this 3 3720 5 other 1 3720
488 0 0 6 461 3681 0 0 92 /**
* Returns true if two vectors are memberwise equal within a specified
* tolerance.
*/ 3 4 this 3 3720 5 other 1 3720 9 threshold 1 3529
489 0 0 4 462 3676 0 0 10 /**
*
*/ 2 4 this 3 3720 3 out 1 3684
490 0 0 6 463 3680 0 0 0 1 4 this 3 3720
491 0 0 4 464 3676 0 0 332 /**
* 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 appropriate when you want to
* write a fixed-width value to the datagram, especially when you are not
* writing a bam file.
*/ 2 4 this 3 3720 11 destination 1 3686
492 0 0 4 465 3676 0 0 114 /**
* Reads the vector from the Datagram using get_float32() or get_float64().
* See write_datagram_fixed().
*/ 2 4 this 3 3719 6 source 1 3688
493 0 0 4 466 3676 0 0 205 /**
* Writes the vector to the Datagram using add_stdfloat(). This is
* appropriate when you want to write the vector using the standard width
* setting, especially when you are writing a bam file.
*/ 2 4 this 3 3720 11 destination 1 3686
494 0 0 4 467 3676 0 0 67 /**
* Reads the vector from the Datagram using get_stdfloat().
*/ 2 4 this 3 3719 6 source 1 3688
495 0 0 7 468 3691 0 0 0 0
496 0 0 7 472 3722 2464 0 0 0
497 0 0 7 472 3722 2464 0 10 /**
*
*/ 2 4 copy 1 3696 1 z 1 3532
498 0 0 7 472 3722 2464 0 0 1 6 param0 0 3723
499 0 0 7 472 3722 2464 0 10 /**
*
*/ 1 10 fill_value 1 3532
500 0 0 7 472 3722 2464 0 10 /**
*
*/ 3 1 x 1 3532 1 y 1 3532 1 z 1 3532
501 0 0 4 473 3676 0 0 0 2 4 this 3 3722 4 size 1 3674
502 0 0 6 476 3722 0 0 0 2 4 this 3 3722 4 copy 1 3723
503 0 0 6 476 3722 0 0 0 2 4 this 3 3722 10 fill_value 1 3532
504 0 0 6 477 3723 0 0 40 /**
* Returns a zero-length vector.
*/ 0
505 0 0 6 478 3723 0 0 35 /**
* Returns a unit X vector.
*/ 0
506 0 0 6 479 3723 0 0 35 /**
* Returns a unit Y vector.
*/ 0
507 0 0 6 480 3723 0 0 35 /**
* Returns a unit Z vector.
*/ 0
508 0 0 6 481 3677 0 0 0 1 4 this 3 3723
509 0 0 6 482 3677 0 0 0 2 4 this 3 3723 9 attr_name 1 3680
510 0 0 6 483 3532 0 0 0 3 4 this 3 3722 9 attr_name 1 3680 6 assign 1 3677
511 0 0 4 484 3676 0 0 10 /**
*
*/ 3 4 this 3 3722 1 i 1 3532 10 assign_val 1 3532
512 0 0 6 484 3532 0 0 0 2 4 this 3 3723 1 i 1 3532
513 0 0 6 485 3532 0 0 0 0
514 0 0 6 486 3681 0 0 91 /**
* Returns true if any component of the vector is not-a-number, false
* otherwise.
*/ 1 4 this 3 3723
515 0 0 6 487 3532 0 0 10 /**
*
*/ 2 4 this 3 3723 1 i 1 3532
516 0 0 6 488 3532 0 0 10 /**
*
*/ 1 4 this 3 3723
517 0 0 6 489 3532 0 0 10 /**
*
*/ 1 4 this 3 3723
518 0 0 6 490 3532 0 0 10 /**
*
*/ 1 4 this 3 3723
519 0 0 4 491 3676 0 0 10 /**
*
*/ 3 4 this 3 3722 1 i 1 3532 5 value 1 3532
520 0 0 4 492 3676 0 0 10 /**
*
*/ 2 4 this 3 3722 5 value 1 3532
521 0 0 4 493 3676 0 0 10 /**
*
*/ 2 4 this 3 3722 5 value 1 3532
522 0 0 4 494 3676 0 0 10 /**
*
*/ 2 4 this 3 3722 5 value 1 3532
523 0 0 7 495 3695 2154 0 100 /**
* Returns a 2-component vector that shares just the first two components of
* this vector.
*/ 1 4 this 3 3723
524 0 0 7 496 3695 2154 0 105 /**
* Returns a 2-component vector that shares just the first and last components
* of this vector.
*/ 1 4 this 3 3723
525 0 0 7 497 3695 2154 0 99 /**
* Returns a 2-component vector that shares just the last two components of
* this vector.
*/ 1 4 this 3 3723
526 0 0 4 504 3676 0 0 152 // These next functions add to an existing value. i.e.
// foo.set_x(foo.get_x() + value) These are useful to reduce overhead in
// scripting languages: 3 4 this 3 3722 1 i 1 3532 5 value 1 3532
527 0 0 4 505 3676 0 0 10 /**
*
*/ 2 4 this 3 3722 5 value 1 3532
528 0 0 4 506 3676 0 0 10 /**
*
*/ 2 4 this 3 3722 5 value 1 3532
529 0 0 4 507 3676 0 0 10 /**
*
*/ 2 4 this 3 3722 5 value 1 3532
530 0 0 4 508 3676 0 0 162 /**
* Returns the address of the first of the three data elements in the vector.
* The remaining elements occupy the next positions consecutively in memory.
*/ 1 4 this 3 3723
531 0 0 6 509 3532 0 0 0 0
532 0 0 4 510 3676 0 0 129 /**
* Sets each element of the vector to the indicated fill_value. This is
* particularly useful for initializing to zero.
*/ 2 4 this 3 3722 10 fill_value 1 3532
533 0 0 4 511 3676 0 0 10 /**
*
*/ 4 4 this 3 3722 1 x 1 3532 1 y 1 3532 1 z 1 3532
534 0 0 6 512 3532 0 0 10 /**
*
*/ 2 4 this 3 3723 5 other 1 3723
535 0 0 6 513 3532 0 0 69 /**
* Returns the square of the vector's length, cheap and easy.
*/ 1 4 this 3 3723
536 0 0 7 514 3722 2464 0 10 /**
*
*/ 2 4 this 3 3723 5 other 1 3723
537 0 0 6 515 3681 0 0 0 2 4 this 3 3723 5 other 1 3723
538 0 0 6 516 3681 0 0 0 2 4 this 3 3723 5 other 1 3723
539 0 0 6 517 3681 0 0 0 2 4 this 3 3723 5 other 1 3723
540 0 0 6 518 3532 0 0 97 /**
* This flavor of compare_to uses a default threshold value based on the
* numeric type.
*/ 2 4 this 3 3723 5 other 1 3723
541 0 0 6 519 3674 0 0 49 /**
* Returns a suitable hash for phash_map.
*/ 1 4 this 3 3723
542 0 0 6 520 3674 0 0 49 /**
* Adds the vector into the running hash.
*/ 2 4 this 3 3723 4 hash 1 3674
543 0 0 4 521 3676 0 0 59 /**
* Adds the vector to the indicated hash generator.
*/ 2 4 this 3 3723 7 hashgen 1 3682
544 0 0 7 522 3722 2464 0 0 1 4 this 3 3723
545 0 0 7 523 3722 2464 0 0 2 4 this 3 3723 5 other 1 3723
546 0 0 7 524 3722 2464 0 0 2 4 this 3 3723 5 other 1 3723
547 0 0 7 525 3722 2464 0 0 2 4 this 3 3723 6 scalar 1 3532
548 0 0 7 526 3722 2464 0 0 2 4 this 3 3723 6 scalar 1 3532
549 0 0 6 527 3722 0 0 0 2 4 this 3 3722 5 other 1 3723
550 0 0 6 528 3722 0 0 0 2 4 this 3 3722 5 other 1 3723
551 0 0 6 529 3722 0 0 0 2 4 this 3 3722 6 scalar 1 3532
552 0 0 6 530 3722 0 0 0 2 4 this 3 3722 6 scalar 1 3532
553 0 0 4 531 3676 0 0 10 /**
*
*/ 2 4 this 3 3722 5 other 1 3723
554 0 0 7 532 3722 2464 0 0 2 4 this 3 3723 8 exponent 1 3532
555 0 0 6 533 3677 0 0 0 2 4 this 3 3722 8 exponent 1 3532
556 0 0 7 534 3722 2464 0 10 /**
*
*/ 2 4 this 3 3723 5 other 1 3723
557 0 0 7 535 3722 2464 0 10 /**
*
*/ 2 4 this 3 3723 5 other 1 3723
558 0 0 4 536 3676 0 0 10 /**
*
*/ 2 4 this 3 3722 5 other 1 3723
559 0 0 6 537 3681 0 0 116 /**
* Returns true if two vectors are memberwise equal within a default tolerance
* based on the numeric type.
*/ 2 4 this 3 3723 5 other 1 3723
560 0 0 6 537 3681 0 0 92 /**
* Returns true if two vectors are memberwise equal within a specified
* tolerance.
*/ 3 4 this 3 3723 5 other 1 3723 9 threshold 1 3532
561 0 0 4 538 3676 0 0 10 /**
*
*/ 2 4 this 3 3723 3 out 1 3684
562 0 0 6 539 3680 0 0 0 1 4 this 3 3723
563 0 0 4 540 3676 0 0 332 /**
* 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 appropriate when you want to
* write a fixed-width value to the datagram, especially when you are not
* writing a bam file.
*/ 2 4 this 3 3723 11 destination 1 3686
564 0 0 4 541 3676 0 0 114 /**
* Reads the vector from the Datagram using get_float32() or get_float64().
* See write_datagram_fixed().
*/ 2 4 this 3 3722 6 source 1 3688
565 0 0 4 542 3676 0 0 205 /**
* Writes the vector to the Datagram using add_stdfloat(). This is
* appropriate when you want to write the vector using the standard width
* setting, especially when you are writing a bam file.
*/ 2 4 this 3 3723 11 destination 1 3686
566 0 0 4 543 3676 0 0 67 /**
* Reads the vector from the Datagram using get_stdfloat().
*/ 2 4 this 3 3722 6 source 1 3688
567 0 0 7 544 3691 0 0 0 0
568 0 0 7 552 3725 2502 0 0 0
569 0 0 7 552 3725 2502 0 10 /**
*
*/ 2 4 copy 1 3672 1 z 1 3526
570 0 0 7 552 3725 2502 0 10 /**
*
*/ 1 4 copy 1 3717
571 0 0 7 552 3725 2502 0 0 1 6 param0 0 3726
572 0 0 7 552 3725 2502 0 10 /**
*
*/ 1 10 fill_value 1 3526
573 0 0 7 552 3725 2502 0 10 /**
*
*/ 3 1 x 1 3526 1 y 1 3526 1 z 1 3526
574 0 0 6 553 3677 0 0 0 2 4 this 3 3726 9 attr_name 1 3680
575 0 0 6 554 3532 0 0 0 3 4 this 3 3725 9 attr_name 1 3680 6 assign 1 3677
576 0 0 6 555 3726 0 0 40 /**
* Returns a zero-length vector.
*/ 0
577 0 0 6 556 3726 0 0 35 /**
* Returns a unit X vector.
*/ 0
578 0 0 6 557 3726 0 0 35 /**
* Returns a unit Y vector.
*/ 0
579 0 0 6 558 3726 0 0 35 /**
* Returns a unit Z vector.
*/ 0
580 0 0 7 559 3698 2172 0 100 /**
* Returns a 2-component vector that shares just the first two components of
* this vector.
*/ 1 4 this 3 3726
581 0 0 7 560 3698 2172 0 105 /**
* Returns a 2-component vector that shares just the first and last components
* of this vector.
*/ 1 4 this 3 3726
582 0 0 7 561 3698 2172 0 99 /**
* Returns a 2-component vector that shares just the last two components of
* this vector.
*/ 1 4 this 3 3726
583 0 0 7 565 3725 2502 0 0 1 4 this 3 3726
584 0 0 7 566 3716 2323 0 0 2 4 this 3 3726 5 other 1 3717
585 0 0 7 566 3725 2502 0 0 2 4 this 3 3726 5 other 1 3726
586 0 0 7 567 3716 2323 0 0 2 4 this 3 3726 5 other 1 3717
587 0 0 7 567 3725 2502 0 0 2 4 this 3 3726 5 other 1 3726
588 0 0 7 568 3725 2502 0 10 /**
*
*/ 2 4 this 3 3726 5 other 1 3717
589 0 0 7 569 3725 2502 0 160 /**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/ 1 4 this 3 3726
590 0 0 7 570 3725 2502 0 152 /**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/ 2 4 this 3 3726 4 onto 1 3717
591 0 0 6 571 3526 0 0 147 /**
* Returns the unsigned angle between this vector and the other one, expressed
* in radians. Both vectors should be initially normalized.
*/ 2 4 this 3 3726 5 other 1 3726
592 0 0 6 572 3526 0 0 138 /**
* Returns the angle between this vector and the other one, expressed in
* degrees. Both vectors should be initially normalized.
*/ 2 4 this 3 3726 5 other 1 3726
593 0 0 6 573 3526 0 0 259 /**
* returns the signed angle between two vectors. The angle is positive if the
* rotation from this vector to other is clockwise when looking in the
* direction of the ref vector.
*
* Vectors (except the ref vector) should be initially normalized.
*/ 3 4 this 3 3726 5 other 1 3726 3 ref 1 3726
594 0 0 6 574 3526 0 0 259 /**
* Returns the signed angle between two vectors. The angle is positive if the
* rotation from this vector to other is clockwise when looking in the
* direction of the ref vector.
*
* Vectors (except the ref vector) should be initially normalized.
*/ 3 4 this 3 3726 5 other 1 3726 3 ref 1 3726
595 0 0 6 575 3526 0 0 50 /**
* This method is deprecated. Do not use.
*/ 2 4 this 3 3726 5 other 1 3726
596 0 0 6 576 3526 0 0 50 /**
* This method is deprecated. Do not use.
*/ 2 4 this 3 3726 5 other 1 3726
597 0 0 7 577 3725 2502 0 0 2 4 this 3 3726 6 scalar 1 3526
598 0 0 7 578 3725 2502 0 0 2 4 this 3 3726 6 scalar 1 3526
599 0 0 7 579 3725 2502 0 65 /**
* Returns the up vector for the given coordinate system.
*/ 1 2 cs 1 3545
600 0 0 7 580 3725 2502 0 68 /**
* Returns the right vector for the given coordinate system.
*/ 1 2 cs 1 3545
601 0 0 7 581 3725 2502 0 70 /**
* Returns the forward vector for the given coordinate system.
*/ 1 2 cs 1 3545
602 0 0 7 582 3725 2502 0 67 /**
* Returns the down vector for the given coordinate system.
*/ 1 2 cs 1 3545
603 0 0 7 583 3725 2502 0 67 /**
* Returns the left vector for the given coordinate system.
*/ 1 2 cs 1 3545
604 0 0 7 584 3725 2502 0 67 /**
* Returns the back vector for the given coordinate system.
*/ 1 2 cs 1 3545
605 0 0 7 585 3725 2502 0 152 /**
* Returns a vector that is described by its right, forward, and up
* components, in whatever way the coordinate system represents that vector.
*/ 4 5 right 1 3526 3 fwd 1 3526 2 up 1 3526 2 cs 1 3545
606 0 0 6 586 3680 0 0 0 1 4 this 3 3726
607 0 0 7 587 3691 0 0 0 0
608 0 0 7 590 3728 2536 0 0 0
609 0 0 7 590 3728 2536 0 10 /**
*
*/ 2 4 copy 1 3693 1 z 1 3529
610 0 0 7 590 3728 2536 0 10 /**
*
*/ 1 4 copy 1 3720
611 0 0 7 590 3728 2536 0 0 1 6 param0 0 3729
612 0 0 7 590 3728 2536 0 10 /**
*
*/ 1 10 fill_value 1 3529
613 0 0 7 590 3728 2536 0 10 /**
*
*/ 3 1 x 1 3529 1 y 1 3529 1 z 1 3529
614 0 0 6 591 3677 0 0 0 2 4 this 3 3729 9 attr_name 1 3680
615 0 0 6 592 3532 0 0 0 3 4 this 3 3728 9 attr_name 1 3680 6 assign 1 3677
616 0 0 6 593 3729 0 0 40 /**
* Returns a zero-length vector.
*/ 0
617 0 0 6 594 3729 0 0 35 /**
* Returns a unit X vector.
*/ 0
618 0 0 6 595 3729 0 0 35 /**
* Returns a unit Y vector.
*/ 0
619 0 0 6 596 3729 0 0 35 /**
* Returns a unit Z vector.
*/ 0
620 0 0 7 597 3701 2190 0 100 /**
* Returns a 2-component vector that shares just the first two components of
* this vector.
*/ 1 4 this 3 3729
621 0 0 7 598 3701 2190 0 105 /**
* Returns a 2-component vector that shares just the first and last components
* of this vector.
*/ 1 4 this 3 3729
622 0 0 7 599 3701 2190 0 99 /**
* Returns a 2-component vector that shares just the last two components of
* this vector.
*/ 1 4 this 3 3729
623 0 0 7 603 3728 2536 0 0 1 4 this 3 3729
624 0 0 7 604 3719 2396 0 0 2 4 this 3 3729 5 other 1 3720
625 0 0 7 604 3728 2536 0 0 2 4 this 3 3729 5 other 1 3729
626 0 0 7 605 3719 2396 0 0 2 4 this 3 3729 5 other 1 3720
627 0 0 7 605 3728 2536 0 0 2 4 this 3 3729 5 other 1 3729
628 0 0 7 606 3728 2536 0 10 /**
*
*/ 2 4 this 3 3729 5 other 1 3720
629 0 0 7 607 3728 2536 0 160 /**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/ 1 4 this 3 3729
630 0 0 7 608 3728 2536 0 152 /**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/ 2 4 this 3 3729 4 onto 1 3720
631 0 0 6 609 3529 0 0 147 /**
* Returns the unsigned angle between this vector and the other one, expressed
* in radians. Both vectors should be initially normalized.
*/ 2 4 this 3 3729 5 other 1 3729
632 0 0 6 610 3529 0 0 138 /**
* Returns the angle between this vector and the other one, expressed in
* degrees. Both vectors should be initially normalized.
*/ 2 4 this 3 3729 5 other 1 3729
633 0 0 6 611 3529 0 0 259 /**
* returns the signed angle between two vectors. The angle is positive if the
* rotation from this vector to other is clockwise when looking in the
* direction of the ref vector.
*
* Vectors (except the ref vector) should be initially normalized.
*/ 3 4 this 3 3729 5 other 1 3729 3 ref 1 3729
634 0 0 6 612 3529 0 0 259 /**
* Returns the signed angle between two vectors. The angle is positive if the
* rotation from this vector to other is clockwise when looking in the
* direction of the ref vector.
*
* Vectors (except the ref vector) should be initially normalized.
*/ 3 4 this 3 3729 5 other 1 3729 3 ref 1 3729
635 0 0 6 613 3529 0 0 50 /**
* This method is deprecated. Do not use.
*/ 2 4 this 3 3729 5 other 1 3729
636 0 0 6 614 3529 0 0 50 /**
* This method is deprecated. Do not use.
*/ 2 4 this 3 3729 5 other 1 3729
637 0 0 7 615 3728 2536 0 0 2 4 this 3 3729 6 scalar 1 3529
638 0 0 7 616 3728 2536 0 0 2 4 this 3 3729 6 scalar 1 3529
639 0 0 7 617 3728 2536 0 65 /**
* Returns the up vector for the given coordinate system.
*/ 1 2 cs 1 3545
640 0 0 7 618 3728 2536 0 68 /**
* Returns the right vector for the given coordinate system.
*/ 1 2 cs 1 3545
641 0 0 7 619 3728 2536 0 70 /**
* Returns the forward vector for the given coordinate system.
*/ 1 2 cs 1 3545
642 0 0 7 620 3728 2536 0 67 /**
* Returns the down vector for the given coordinate system.
*/ 1 2 cs 1 3545
643 0 0 7 621 3728 2536 0 67 /**
* Returns the left vector for the given coordinate system.
*/ 1 2 cs 1 3545
644 0 0 7 622 3728 2536 0 67 /**
* Returns the back vector for the given coordinate system.
*/ 1 2 cs 1 3545
645 0 0 7 623 3728 2536 0 152 /**
* Returns a vector that is described by its right, forward, and up
* components, in whatever way the coordinate system represents that vector.
*/ 4 5 right 1 3529 3 fwd 1 3529 2 up 1 3529 2 cs 1 3545
646 0 0 6 624 3680 0 0 0 1 4 this 3 3729
647 0 0 7 625 3691 0 0 0 0
648 0 0 7 628 3731 2562 0 0 0
649 0 0 7 628 3731 2562 0 10 /**
*
*/ 2 4 copy 1 3696 1 z 1 3532
650 0 0 7 628 3731 2562 0 10 /**
*
*/ 1 4 copy 1 3723
651 0 0 7 628 3731 2562 0 0 1 6 param0 0 3732
652 0 0 7 628 3731 2562 0 10 /**
*
*/ 1 10 fill_value 1 3532
653 0 0 7 628 3731 2562 0 10 /**
*
*/ 3 1 x 1 3532 1 y 1 3532 1 z 1 3532
654 0 0 6 629 3677 0 0 0 2 4 this 3 3732 9 attr_name 1 3680
655 0 0 6 630 3532 0 0 0 3 4 this 3 3731 9 attr_name 1 3680 6 assign 1 3677
656 0 0 6 631 3732 0 0 40 /**
* Returns a zero-length vector.
*/ 0
657 0 0 6 632 3732 0 0 35 /**
* Returns a unit X vector.
*/ 0
658 0 0 6 633 3732 0 0 35 /**
* Returns a unit Y vector.
*/ 0
659 0 0 6 634 3732 0 0 35 /**
* Returns a unit Z vector.
*/ 0
660 0 0 7 635 3704 2204 0 100 /**
* Returns a 2-component vector that shares just the first two components of
* this vector.
*/ 1 4 this 3 3732
661 0 0 7 636 3704 2204 0 105 /**
* Returns a 2-component vector that shares just the first and last components
* of this vector.
*/ 1 4 this 3 3732
662 0 0 7 637 3704 2204 0 99 /**
* Returns a 2-component vector that shares just the last two components of
* this vector.
*/ 1 4 this 3 3732
663 0 0 7 641 3731 2562 0 0 1 4 this 3 3732
664 0 0 7 642 3722 2464 0 0 2 4 this 3 3732 5 other 1 3723
665 0 0 7 642 3731 2562 0 0 2 4 this 3 3732 5 other 1 3732
666 0 0 7 643 3722 2464 0 0 2 4 this 3 3732 5 other 1 3723
667 0 0 7 643 3731 2562 0 0 2 4 this 3 3732 5 other 1 3732
668 0 0 7 644 3731 2562 0 10 /**
*
*/ 2 4 this 3 3732 5 other 1 3723
669 0 0 7 645 3731 2562 0 0 2 4 this 3 3732 6 scalar 1 3532
670 0 0 7 646 3731 2562 0 0 2 4 this 3 3732 6 scalar 1 3532
671 0 0 7 647 3731 2562 0 65 /**
* Returns the up vector for the given coordinate system.
*/ 1 2 cs 1 3545
672 0 0 7 648 3731 2562 0 68 /**
* Returns the right vector for the given coordinate system.
*/ 1 2 cs 1 3545
673 0 0 7 649 3731 2562 0 70 /**
* Returns the forward vector for the given coordinate system.
*/ 1 2 cs 1 3545
674 0 0 7 650 3731 2562 0 67 /**
* Returns the down vector for the given coordinate system.
*/ 1 2 cs 1 3545
675 0 0 7 651 3731 2562 0 67 /**
* Returns the left vector for the given coordinate system.
*/ 1 2 cs 1 3545
676 0 0 7 652 3731 2562 0 67 /**
* Returns the back vector for the given coordinate system.
*/ 1 2 cs 1 3545
677 0 0 7 653 3731 2562 0 152 /**
* Returns a vector that is described by its right, forward, and up
* components, in whatever way the coordinate system represents that vector.
*/ 4 5 right 1 3532 3 fwd 1 3532 2 up 1 3532 2 cs 1 3545
678 0 0 6 654 3680 0 0 0 1 4 this 3 3732
679 0 0 7 655 3691 0 0 0 0
680 0 0 7 658 3734 2585 0 0 0
681 0 0 7 658 3734 2585 0 0 1 6 param0 0 3735
682 0 0 7 658 3734 2585 0 10 /**
*
*/ 2 4 copy 1 3672 1 z 1 3526
683 0 0 7 658 3734 2585 0 10 /**
*
*/ 1 4 copy 1 3717
684 0 0 7 658 3734 2585 0 10 /**
*
*/ 1 10 fill_value 1 3526
685 0 0 7 658 3734 2585 0 10 /**
*
*/ 3 1 x 1 3526 1 y 1 3526 1 z 1 3526
686 0 0 6 659 3677 0 0 0 2 4 this 3 3735 9 attr_name 1 3680
687 0 0 6 660 3532 0 0 0 3 4 this 3 3734 9 attr_name 1 3680 6 assign 1 3677
688 0 0 6 661 3735 0 0 39 /**
* Returns a zero-length point.
*/ 0
689 0 0 6 662 3735 0 0 34 /**
* Returns a unit X point.
*/ 0
690 0 0 6 663 3735 0 0 34 /**
* Returns a unit Y point.
*/ 0
691 0 0 6 664 3735 0 0 34 /**
* Returns a unit Z point.
*/ 0
692 0 0 7 665 3707 2220 0 100 /**
* Returns a 2-component vector that shares just the first two components of
* this vector.
*/ 1 4 this 3 3735
693 0 0 7 666 3707 2220 0 105 /**
* Returns a 2-component vector that shares just the first and last components
* of this vector.
*/ 1 4 this 3 3735
694 0 0 7 667 3707 2220 0 99 /**
* Returns a 2-component vector that shares just the last two components of
* this vector.
*/ 1 4 this 3 3735
695 0 0 7 671 3734 2585 0 0 1 4 this 3 3735
696 0 0 7 672 3716 2323 0 0 2 4 this 3 3735 5 other 1 3717
697 0 0 7 672 3734 2585 0 0 2 4 this 3 3735 5 other 1 3726
698 0 0 7 673 3725 2502 0 0 2 4 this 3 3735 5 other 1 3735
699 0 0 7 673 3716 2323 0 0 2 4 this 3 3735 5 other 1 3717
700 0 0 7 673 3734 2585 0 0 2 4 this 3 3735 5 other 1 3726
701 0 0 7 674 3734 2585 0 10 /**
*
*/ 2 4 this 3 3735 5 other 1 3717
702 0 0 7 675 3734 2585 0 160 /**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/ 1 4 this 3 3735
703 0 0 7 676 3734 2585 0 152 /**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/ 2 4 this 3 3735 4 onto 1 3717
704 0 0 7 677 3734 2585 0 0 2 4 this 3 3735 6 scalar 1 3526
705 0 0 7 678 3734 2585 0 0 2 4 this 3 3735 6 scalar 1 3526
706 0 0 6 679 3735 0 0 186 /**
* Returns the origin of the indicated coordinate system. This is always 0,
* 0, 0 with all of our existing coordinate systems; it's hard to imagine it
* ever being different.
*/ 1 2 cs 1 3545
707 0 0 7 680 3734 2585 0 146 /**
* Returns a point described by right, forward, up displacements from the
* origin, wherever that maps to in the given coordinate system.
*/ 4 5 right 1 3526 3 fwd 1 3526 2 up 1 3526 2 cs 1 3545
708 0 0 6 681 3680 0 0 0 1 4 this 3 3735
709 0 0 7 682 3691 0 0 0 0
710 0 0 7 685 3737 2608 0 0 0
711 0 0 7 685 3737 2608 0 0 1 6 param0 0 3738
712 0 0 7 685 3737 2608 0 10 /**
*
*/ 2 4 copy 1 3693 1 z 1 3529
713 0 0 7 685 3737 2608 0 10 /**
*
*/ 1 4 copy 1 3720
714 0 0 7 685 3737 2608 0 10 /**
*
*/ 1 10 fill_value 1 3529
715 0 0 7 685 3737 2608 0 10 /**
*
*/ 3 1 x 1 3529 1 y 1 3529 1 z 1 3529
716 0 0 6 686 3677 0 0 0 2 4 this 3 3738 9 attr_name 1 3680
717 0 0 6 687 3532 0 0 0 3 4 this 3 3737 9 attr_name 1 3680 6 assign 1 3677
718 0 0 6 688 3738 0 0 39 /**
* Returns a zero-length point.
*/ 0
719 0 0 6 689 3738 0 0 34 /**
* Returns a unit X point.
*/ 0
720 0 0 6 690 3738 0 0 34 /**
* Returns a unit Y point.
*/ 0
721 0 0 6 691 3738 0 0 34 /**
* Returns a unit Z point.
*/ 0
722 0 0 7 692 3710 2236 0 100 /**
* Returns a 2-component vector that shares just the first two components of
* this vector.
*/ 1 4 this 3 3738
723 0 0 7 693 3710 2236 0 105 /**
* Returns a 2-component vector that shares just the first and last components
* of this vector.
*/ 1 4 this 3 3738
724 0 0 7 694 3710 2236 0 99 /**
* Returns a 2-component vector that shares just the last two components of
* this vector.
*/ 1 4 this 3 3738
725 0 0 7 698 3737 2608 0 0 1 4 this 3 3738
726 0 0 7 699 3719 2396 0 0 2 4 this 3 3738 5 other 1 3720
727 0 0 7 699 3737 2608 0 0 2 4 this 3 3738 5 other 1 3729
728 0 0 7 700 3728 2536 0 0 2 4 this 3 3738 5 other 1 3738
729 0 0 7 700 3719 2396 0 0 2 4 this 3 3738 5 other 1 3720
730 0 0 7 700 3737 2608 0 0 2 4 this 3 3738 5 other 1 3729
731 0 0 7 701 3737 2608 0 10 /**
*
*/ 2 4 this 3 3738 5 other 1 3720
732 0 0 7 702 3737 2608 0 160 /**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/ 1 4 this 3 3738
733 0 0 7 703 3737 2608 0 152 /**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/ 2 4 this 3 3738 4 onto 1 3720
734 0 0 7 704 3737 2608 0 0 2 4 this 3 3738 6 scalar 1 3529
735 0 0 7 705 3737 2608 0 0 2 4 this 3 3738 6 scalar 1 3529
736 0 0 6 706 3738 0 0 186 /**
* Returns the origin of the indicated coordinate system. This is always 0,
* 0, 0 with all of our existing coordinate systems; it's hard to imagine it
* ever being different.
*/ 1 2 cs 1 3545
737 0 0 7 707 3737 2608 0 146 /**
* Returns a point described by right, forward, up displacements from the
* origin, wherever that maps to in the given coordinate system.
*/ 4 5 right 1 3529 3 fwd 1 3529 2 up 1 3529 2 cs 1 3545
738 0 0 6 708 3680 0 0 0 1 4 this 3 3738
739 0 0 7 709 3691 0 0 0 0
740 0 0 7 712 3740 2629 0 0 0
741 0 0 7 712 3740 2629 0 0 1 6 param0 0 3741
742 0 0 7 712 3740 2629 0 10 /**
*
*/ 2 4 copy 1 3696 1 z 1 3532
743 0 0 7 712 3740 2629 0 10 /**
*
*/ 1 4 copy 1 3723
744 0 0 7 712 3740 2629 0 10 /**
*
*/ 1 10 fill_value 1 3532
745 0 0 7 712 3740 2629 0 10 /**
*
*/ 3 1 x 1 3532 1 y 1 3532 1 z 1 3532
746 0 0 6 713 3677 0 0 0 2 4 this 3 3741 9 attr_name 1 3680
747 0 0 6 714 3532 0 0 0 3 4 this 3 3740 9 attr_name 1 3680 6 assign 1 3677
748 0 0 6 715 3741 0 0 39 /**
* Returns a zero-length point.
*/ 0
749 0 0 6 716 3741 0 0 34 /**
* Returns a unit X point.
*/ 0
750 0 0 6 717 3741 0 0 34 /**
* Returns a unit Y point.
*/ 0
751 0 0 6 718 3741 0 0 34 /**
* Returns a unit Z point.
*/ 0
752 0 0 7 719 3713 2250 0 100 /**
* Returns a 2-component vector that shares just the first two components of
* this vector.
*/ 1 4 this 3 3741
753 0 0 7 720 3713 2250 0 105 /**
* Returns a 2-component vector that shares just the first and last components
* of this vector.
*/ 1 4 this 3 3741
754 0 0 7 721 3713 2250 0 99 /**
* Returns a 2-component vector that shares just the last two components of
* this vector.
*/ 1 4 this 3 3741
755 0 0 7 725 3740 2629 0 0 1 4 this 3 3741
756 0 0 7 726 3722 2464 0 0 2 4 this 3 3741 5 other 1 3723
757 0 0 7 726 3740 2629 0 0 2 4 this 3 3741 5 other 1 3732
758 0 0 7 727 3731 2562 0 0 2 4 this 3 3741 5 other 1 3741
759 0 0 7 727 3722 2464 0 0 2 4 this 3 3741 5 other 1 3723
760 0 0 7 727 3740 2629 0 0 2 4 this 3 3741 5 other 1 3732
761 0 0 7 728 3740 2629 0 10 /**
*
*/ 2 4 this 3 3741 5 other 1 3723
762 0 0 7 729 3740 2629 0 0 2 4 this 3 3741 6 scalar 1 3532
763 0 0 7 730 3740 2629 0 0 2 4 this 3 3741 6 scalar 1 3532
764 0 0 6 731 3741 0 0 186 /**
* Returns the origin of the indicated coordinate system. This is always 0,
* 0, 0 with all of our existing coordinate systems; it's hard to imagine it
* ever being different.
*/ 1 2 cs 1 3545
765 0 0 7 732 3740 2629 0 146 /**
* Returns a point described by right, forward, up displacements from the
* origin, wherever that maps to in the given coordinate system.
*/ 4 5 right 1 3532 3 fwd 1 3532 2 up 1 3532 2 cs 1 3545
766 0 0 6 733 3680 0 0 0 1 4 this 3 3741
767 0 0 7 734 3691 0 0 0 0
768 0 0 7 738 3743 2703 0 0 0
769 0 0 7 738 3743 2703 0 84 /**
* Constructs an LVecBase4 from an LPoint3. The w coordinate is set to 1.0.
*/ 1 5 point 1 3735
770 0 0 7 738 3743 2703 0 10 /**
*
*/ 2 4 copy 1 3717 1 w 1 3526
771 0 0 7 738 3743 2703 0 0 1 6 param0 0 3744
772 0 0 7 738 3743 2703 0 85 /**
* Constructs an LVecBase4 from an LVector3. The w coordinate is set to 0.0.
*/ 1 6 vector 1 3726
773 0 0 7 738 3743 2703 0 10 /**
*
*/ 1 4 copy 1 3746
774 0 0 7 738 3743 2703 0 10 /**
*
*/ 1 10 fill_value 1 3526
775 0 0 7 738 3743 2703 0 10 /**
*
*/ 4 1 x 1 3526 1 y 1 3526 1 z 1 3526 1 w 1 3526
776 0 0 4 739 3676 0 0 0 2 4 this 3 3743 4 size 1 3674
777 0 0 6 742 3743 0 0 0 2 4 this 3 3743 4 copy 1 3744
778 0 0 6 742 3743 0 0 0 2 4 this 3 3743 10 fill_value 1 3526
779 0 0 6 743 3744 0 0 40 /**
* Returns a zero-length vector.
*/ 0
780 0 0 6 744 3744 0 0 35 /**
* Returns a unit X vector.
*/ 0
781 0 0 6 745 3744 0 0 35 /**
* Returns a unit Y vector.
*/ 0
782 0 0 6 746 3744 0 0 35 /**
* Returns a unit Z vector.
*/ 0
783 0 0 6 747 3744 0 0 35 /**
* Returns a unit W vector.
*/ 0
784 0 0 6 748 3677 0 0 0 1 4 this 3 3744
785 0 0 6 749 3677 0 0 0 2 4 this 3 3744 9 attr_name 1 3680
786 0 0 6 750 3532 0 0 0 3 4 this 3 3743 9 attr_name 1 3680 6 assign 1 3677
787 0 0 4 751 3676 0 0 10 /**
*
*/ 3 4 this 3 3743 1 i 1 3532 10 assign_val 1 3526
788 0 0 6 751 3526 0 0 0 2 4 this 3 3744 1 i 1 3532
789 0 0 6 752 3532 0 0 0 0
790 0 0 6 753 3681 0 0 91 /**
* Returns true if any component of the vector is not-a-number, false
* otherwise.
*/ 1 4 this 3 3744
791 0 0 6 754 3526 0 0 10 /**
*
*/ 2 4 this 3 3744 1 i 1 3532
792 0 0 4 755 3676 0 0 10 /**
*
*/ 3 4 this 3 3743 1 i 1 3532 5 value 1 3526
793 0 0 6 756 3526 0 0 10 /**
*
*/ 1 4 this 3 3744
794 0 0 6 757 3526 0 0 10 /**
*
*/ 1 4 this 3 3744
795 0 0 6 758 3526 0 0 10 /**
*
*/ 1 4 this 3 3744
796 0 0 6 759 3526 0 0 10 /**
*
*/ 1 4 this 3 3744
797 0 0 7 760 3716 2323 0 58 /**
* Returns the x, y and z component of this vector
*/ 1 4 this 3 3744
798 0 0 7 761 3671 2032 0 55 /**
* Returns the x and y component of this vector
*/ 1 4 this 3 3744
799 0 0 4 762 3676 0 0 10 /**
*
*/ 2 4 this 3 3743 5 value 1 3526
800 0 0 4 763 3676 0 0 10 /**
*
*/ 2 4 this 3 3743 5 value 1 3526
801 0 0 4 764 3676 0 0 10 /**
*
*/ 2 4 this 3 3743 5 value 1 3526
802 0 0 4 765 3676 0 0 10 /**
*
*/ 2 4 this 3 3743 5 value 1 3526
803 0 0 4 771 3676 0 0 152 // These next functions add to an existing value. i.e.
// foo.set_x(foo.get_x() + value) These are useful to reduce overhead in
// scripting languages: 3 4 this 3 3743 1 i 1 3532 5 value 1 3526
804 0 0 4 772 3676 0 0 10 /**
*
*/ 2 4 this 3 3743 5 value 1 3526
805 0 0 4 773 3676 0 0 10 /**
*
*/ 2 4 this 3 3743 5 value 1 3526
806 0 0 4 774 3676 0 0 10 /**
*
*/ 2 4 this 3 3743 5 value 1 3526
807 0 0 4 775 3676 0 0 10 /**
*
*/ 2 4 this 3 3743 5 value 1 3526
808 0 0 4 776 3676 0 0 161 /**
* Returns the address of the first of the four data elements in the vector.
* The remaining elements occupy the next positions consecutively in memory.
*/ 1 4 this 3 3744
809 0 0 6 777 3532 0 0 0 0
810 0 0 4 779 3676 0 0 129 /**
* Sets each element of the vector to the indicated fill_value. This is
* particularly useful for initializing to zero.
*/ 2 4 this 3 3743 10 fill_value 1 3526
811 0 0 4 780 3676 0 0 10 /**
*
*/ 5 4 this 3 3743 1 x 1 3526 1 y 1 3526 1 z 1 3526 1 w 1 3526
812 0 0 6 781 3526 0 0 10 /**
*
*/ 2 4 this 3 3744 5 other 1 3744
813 0 0 6 782 3526 0 0 69 /**
* Returns the square of the vector's length, cheap and easy.
*/ 1 4 this 3 3744
814 0 0 6 783 3526 0 0 72 /**
* Returns the length of the vector, by the Pythagorean theorem.
*/ 1 4 this 3 3744
815 0 0 6 784 3681 0 0 127 /**
* Normalizes the vector in place. Returns true if the vector was normalized,
* false if it was a zero-length vector.
*/ 1 4 this 3 3743
816 0 0 7 785 3743 2703 0 160 /**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/ 1 4 this 3 3744
817 0 0 7 786 3743 2703 0 152 /**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/ 2 4 this 3 3744 4 onto 1 3744
818 0 0 6 787 3681 0 0 0 2 4 this 3 3744 5 other 1 3744
819 0 0 6 788 3681 0 0 0 2 4 this 3 3744 5 other 1 3744
820 0 0 6 789 3681 0 0 0 2 4 this 3 3744 5 other 1 3744
821 0 0 6 790 3532 0 0 97 /**
* This flavor of compare_to uses a default threshold value based on the
* numeric type.
*/ 2 4 this 3 3744 5 other 1 3744
822 0 0 6 790 3532 0 0 233 /**
* Sorts vectors lexicographically, componentwise. Returns a number less than
* 0 if this vector sorts before the other one, greater than zero if it sorts
* after, 0 if they are equivalent (within the indicated tolerance).
*/ 3 4 this 3 3744 5 other 1 3744 9 threshold 1 3526
823 0 0 6 791 3674 0 0 49 /**
* Returns a suitable hash for phash_map.
*/ 1 4 this 3 3744
824 0 0 6 791 3674 0 0 49 /**
* Returns a suitable hash for phash_map.
*/ 2 4 this 3 3744 9 threshold 1 3526
825 0 0 6 792 3674 0 0 49 /**
* Adds the vector into the running hash.
*/ 2 4 this 3 3744 4 hash 1 3674
826 0 0 6 792 3674 0 0 49 /**
* Adds the vector into the running hash.
*/ 3 4 this 3 3744 4 hash 1 3674 9 threshold 1 3526
827 0 0 4 793 3676 0 0 59 /**
* Adds the vector to the indicated hash generator.
*/ 2 4 this 3 3744 7 hashgen 1 3682
828 0 0 4 793 3676 0 0 59 /**
* Adds the vector to the indicated hash generator.
*/ 3 4 this 3 3744 7 hashgen 1 3682 9 threshold 1 3526
829 0 0 7 794 3743 2703 0 0 1 4 this 3 3744
830 0 0 7 795 3743 2703 0 0 2 4 this 3 3744 5 other 1 3744
831 0 0 7 796 3743 2703 0 0 2 4 this 3 3744 5 other 1 3744
832 0 0 7 797 3743 2703 0 0 2 4 this 3 3744 6 scalar 1 3526
833 0 0 7 798 3743 2703 0 0 2 4 this 3 3744 6 scalar 1 3526
834 0 0 6 799 3743 0 0 0 2 4 this 3 3743 5 other 1 3744
835 0 0 6 800 3743 0 0 0 2 4 this 3 3743 5 other 1 3744
836 0 0 6 801 3743 0 0 0 2 4 this 3 3743 6 scalar 1 3526
837 0 0 6 802 3743 0 0 0 2 4 this 3 3743 6 scalar 1 3526
838 0 0 4 803 3676 0 0 10 /**
*
*/ 2 4 this 3 3743 5 other 1 3744
839 0 0 7 804 3743 2703 0 0 2 4 this 3 3744 8 exponent 1 3526
840 0 0 6 805 3677 0 0 0 2 4 this 3 3743 8 exponent 1 3526
841 0 0 7 806 3743 2703 0 10 /**
*
*/ 2 4 this 3 3744 5 other 1 3744
842 0 0 7 807 3743 2703 0 10 /**
*
*/ 2 4 this 3 3744 5 other 1 3744
843 0 0 6 808 3681 0 0 116 /**
* Returns true if two vectors are memberwise equal within a default tolerance
* based on the numeric type.
*/ 2 4 this 3 3744 5 other 1 3744
844 0 0 6 808 3681 0 0 92 /**
* Returns true if two vectors are memberwise equal within a specified
* tolerance.
*/ 3 4 this 3 3744 5 other 1 3744 9 threshold 1 3526
845 0 0 4 809 3676 0 0 10 /**
*
*/ 2 4 this 3 3744 3 out 1 3684
846 0 0 6 810 3680 0 0 0 1 4 this 3 3744
847 0 0 4 811 3676 0 0 332 /**
* 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 appropriate when you want to
* write a fixed-width value to the datagram, especially when you are not
* writing a bam file.
*/ 2 4 this 3 3744 11 destination 1 3686
848 0 0 4 812 3676 0 0 114 /**
* Reads the vector from the Datagram using get_float32() or get_float64().
* See write_datagram_fixed().
*/ 2 4 this 3 3743 6 source 1 3688
849 0 0 4 813 3676 0 0 205 /**
* Writes the vector to the Datagram using add_stdfloat(). This is
* appropriate when you want to write the vector using the standard width
* setting, especially when you are writing a bam file.
*/ 2 4 this 3 3744 11 destination 1 3686
850 0 0 4 814 3676 0 0 67 /**
* Reads the vector from the Datagram using get_stdfloat().
*/ 2 4 this 3 3743 6 source 1 3688
851 0 0 7 815 3691 0 0 0 0
852 0 0 7 819 3748 2714 0 0 0
853 0 0 7 819 3748 2714 0 10 /**
*
*/ 1 4 copy 1 3744
854 0 0 7 819 3748 2714 0 0 1 6 param0 0 3746
855 0 0 7 819 3748 2714 0 10 /**
*
*/ 1 10 fill_value 1 3526
856 0 0 7 819 3748 2714 0 10 /**
*
*/ 4 1 x 1 3526 1 y 1 3526 1 z 1 3526 1 w 1 3526
857 0 0 4 820 3676 0 0 129 /**
* Sets each element of the vector to the indicated fill_value. This is
* particularly useful for initializing to zero.
*/ 2 4 this 3 3748 10 fill_value 1 3526
858 0 0 4 821 3676 0 0 10 /**
*
*/ 5 4 this 3 3748 1 x 1 3526 1 y 1 3526 1 z 1 3526 1 w 1 3526
859 0 0 4 822 3676 0 0 10 /**
*
*/ 3 4 this 3 3748 1 i 1 3532 10 assign_val 1 3526
860 0 0 6 822 3526 0 0 0 2 4 this 3 3746 1 i 1 3532
861 0 0 6 823 3532 0 0 0 0
862 0 0 4 824 3676 0 0 162 /**
* Returns the address of the first of the three data elements in the vector.
* The remaining elements occupy the next positions consecutively in memory.
*/ 1 4 this 3 3746
863 0 0 6 825 3532 0 0 0 0
864 0 0 6 826 3681 0 0 0 2 4 this 3 3746 5 other 1 3746
865 0 0 6 827 3681 0 0 0 2 4 this 3 3746 5 other 1 3746
866 0 0 7 828 3691 0 0 0 0
867 0 0 7 832 3749 2788 0 0 0
868 0 0 7 832 3749 2788 0 84 /**
* Constructs an LVecBase4 from an LPoint3. The w coordinate is set to 1.0.
*/ 1 5 point 1 3738
869 0 0 7 832 3749 2788 0 10 /**
*
*/ 2 4 copy 1 3720 1 w 1 3529
870 0 0 7 832 3749 2788 0 0 1 6 param0 0 3750
871 0 0 7 832 3749 2788 0 85 /**
* Constructs an LVecBase4 from an LVector3. The w coordinate is set to 0.0.
*/ 1 6 vector 1 3729
872 0 0 7 832 3749 2788 0 10 /**
*
*/ 1 4 copy 1 3752
873 0 0 7 832 3749 2788 0 10 /**
*
*/ 1 10 fill_value 1 3529
874 0 0 7 832 3749 2788 0 10 /**
*
*/ 4 1 x 1 3529 1 y 1 3529 1 z 1 3529 1 w 1 3529
875 0 0 4 833 3676 0 0 0 2 4 this 3 3749 4 size 1 3674
876 0 0 6 836 3749 0 0 0 2 4 this 3 3749 4 copy 1 3750
877 0 0 6 836 3749 0 0 0 2 4 this 3 3749 10 fill_value 1 3529
878 0 0 6 837 3750 0 0 40 /**
* Returns a zero-length vector.
*/ 0
879 0 0 6 838 3750 0 0 35 /**
* Returns a unit X vector.
*/ 0
880 0 0 6 839 3750 0 0 35 /**
* Returns a unit Y vector.
*/ 0
881 0 0 6 840 3750 0 0 35 /**
* Returns a unit Z vector.
*/ 0
882 0 0 6 841 3750 0 0 35 /**
* Returns a unit W vector.
*/ 0
883 0 0 6 842 3677 0 0 0 1 4 this 3 3750
884 0 0 6 843 3677 0 0 0 2 4 this 3 3750 9 attr_name 1 3680
885 0 0 6 844 3532 0 0 0 3 4 this 3 3749 9 attr_name 1 3680 6 assign 1 3677
886 0 0 4 845 3676 0 0 10 /**
*
*/ 3 4 this 3 3749 1 i 1 3532 10 assign_val 1 3529
887 0 0 6 845 3529 0 0 0 2 4 this 3 3750 1 i 1 3532
888 0 0 6 846 3532 0 0 0 0
889 0 0 6 847 3681 0 0 91 /**
* Returns true if any component of the vector is not-a-number, false
* otherwise.
*/ 1 4 this 3 3750
890 0 0 6 848 3529 0 0 10 /**
*
*/ 2 4 this 3 3750 1 i 1 3532
891 0 0 4 849 3676 0 0 10 /**
*
*/ 3 4 this 3 3749 1 i 1 3532 5 value 1 3529
892 0 0 6 850 3529 0 0 10 /**
*
*/ 1 4 this 3 3750
893 0 0 6 851 3529 0 0 10 /**
*
*/ 1 4 this 3 3750
894 0 0 6 852 3529 0 0 10 /**
*
*/ 1 4 this 3 3750
895 0 0 6 853 3529 0 0 10 /**
*
*/ 1 4 this 3 3750
896 0 0 7 854 3719 2396 0 58 /**
* Returns the x, y and z component of this vector
*/ 1 4 this 3 3750
897 0 0 7 855 3692 2095 0 55 /**
* Returns the x and y component of this vector
*/ 1 4 this 3 3750
898 0 0 4 856 3676 0 0 10 /**
*
*/ 2 4 this 3 3749 5 value 1 3529
899 0 0 4 857 3676 0 0 10 /**
*
*/ 2 4 this 3 3749 5 value 1 3529
900 0 0 4 858 3676 0 0 10 /**
*
*/ 2 4 this 3 3749 5 value 1 3529
901 0 0 4 859 3676 0 0 10 /**
*
*/ 2 4 this 3 3749 5 value 1 3529
902 0 0 4 865 3676 0 0 152 // These next functions add to an existing value. i.e.
// foo.set_x(foo.get_x() + value) These are useful to reduce overhead in
// scripting languages: 3 4 this 3 3749 1 i 1 3532 5 value 1 3529
903 0 0 4 866 3676 0 0 10 /**
*
*/ 2 4 this 3 3749 5 value 1 3529
904 0 0 4 867 3676 0 0 10 /**
*
*/ 2 4 this 3 3749 5 value 1 3529
905 0 0 4 868 3676 0 0 10 /**
*
*/ 2 4 this 3 3749 5 value 1 3529
906 0 0 4 869 3676 0 0 10 /**
*
*/ 2 4 this 3 3749 5 value 1 3529
907 0 0 4 870 3676 0 0 161 /**
* Returns the address of the first of the four data elements in the vector.
* The remaining elements occupy the next positions consecutively in memory.
*/ 1 4 this 3 3750
908 0 0 6 871 3532 0 0 0 0
909 0 0 4 873 3676 0 0 129 /**
* Sets each element of the vector to the indicated fill_value. This is
* particularly useful for initializing to zero.
*/ 2 4 this 3 3749 10 fill_value 1 3529
910 0 0 4 874 3676 0 0 10 /**
*
*/ 5 4 this 3 3749 1 x 1 3529 1 y 1 3529 1 z 1 3529 1 w 1 3529
911 0 0 6 875 3529 0 0 10 /**
*
*/ 2 4 this 3 3750 5 other 1 3750
912 0 0 6 876 3529 0 0 69 /**
* Returns the square of the vector's length, cheap and easy.
*/ 1 4 this 3 3750
913 0 0 6 877 3529 0 0 72 /**
* Returns the length of the vector, by the Pythagorean theorem.
*/ 1 4 this 3 3750
914 0 0 6 878 3681 0 0 127 /**
* Normalizes the vector in place. Returns true if the vector was normalized,
* false if it was a zero-length vector.
*/ 1 4 this 3 3749
915 0 0 7 879 3749 2788 0 160 /**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/ 1 4 this 3 3750
916 0 0 7 880 3749 2788 0 152 /**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/ 2 4 this 3 3750 4 onto 1 3750
917 0 0 6 881 3681 0 0 0 2 4 this 3 3750 5 other 1 3750
918 0 0 6 882 3681 0 0 0 2 4 this 3 3750 5 other 1 3750
919 0 0 6 883 3681 0 0 0 2 4 this 3 3750 5 other 1 3750
920 0 0 6 884 3532 0 0 97 /**
* This flavor of compare_to uses a default threshold value based on the
* numeric type.
*/ 2 4 this 3 3750 5 other 1 3750
921 0 0 6 884 3532 0 0 233 /**
* Sorts vectors lexicographically, componentwise. Returns a number less than
* 0 if this vector sorts before the other one, greater than zero if it sorts
* after, 0 if they are equivalent (within the indicated tolerance).
*/ 3 4 this 3 3750 5 other 1 3750 9 threshold 1 3529
922 0 0 6 885 3674 0 0 49 /**
* Returns a suitable hash for phash_map.
*/ 1 4 this 3 3750
923 0 0 6 885 3674 0 0 49 /**
* Returns a suitable hash for phash_map.
*/ 2 4 this 3 3750 9 threshold 1 3529
924 0 0 6 886 3674 0 0 49 /**
* Adds the vector into the running hash.
*/ 2 4 this 3 3750 4 hash 1 3674
925 0 0 6 886 3674 0 0 49 /**
* Adds the vector into the running hash.
*/ 3 4 this 3 3750 4 hash 1 3674 9 threshold 1 3529
926 0 0 4 887 3676 0 0 59 /**
* Adds the vector to the indicated hash generator.
*/ 2 4 this 3 3750 7 hashgen 1 3682
927 0 0 4 887 3676 0 0 59 /**
* Adds the vector to the indicated hash generator.
*/ 3 4 this 3 3750 7 hashgen 1 3682 9 threshold 1 3529
928 0 0 7 888 3749 2788 0 0 1 4 this 3 3750
929 0 0 7 889 3749 2788 0 0 2 4 this 3 3750 5 other 1 3750
930 0 0 7 890 3749 2788 0 0 2 4 this 3 3750 5 other 1 3750
931 0 0 7 891 3749 2788 0 0 2 4 this 3 3750 6 scalar 1 3529
932 0 0 7 892 3749 2788 0 0 2 4 this 3 3750 6 scalar 1 3529
933 0 0 6 893 3749 0 0 0 2 4 this 3 3749 5 other 1 3750
934 0 0 6 894 3749 0 0 0 2 4 this 3 3749 5 other 1 3750
935 0 0 6 895 3749 0 0 0 2 4 this 3 3749 6 scalar 1 3529
936 0 0 6 896 3749 0 0 0 2 4 this 3 3749 6 scalar 1 3529
937 0 0 4 897 3676 0 0 10 /**
*
*/ 2 4 this 3 3749 5 other 1 3750
938 0 0 7 898 3749 2788 0 0 2 4 this 3 3750 8 exponent 1 3529
939 0 0 6 899 3677 0 0 0 2 4 this 3 3749 8 exponent 1 3529
940 0 0 7 900 3749 2788 0 10 /**
*
*/ 2 4 this 3 3750 5 other 1 3750
941 0 0 7 901 3749 2788 0 10 /**
*
*/ 2 4 this 3 3750 5 other 1 3750
942 0 0 6 902 3681 0 0 116 /**
* Returns true if two vectors are memberwise equal within a default tolerance
* based on the numeric type.
*/ 2 4 this 3 3750 5 other 1 3750
943 0 0 6 902 3681 0 0 92 /**
* Returns true if two vectors are memberwise equal within a specified
* tolerance.
*/ 3 4 this 3 3750 5 other 1 3750 9 threshold 1 3529
944 0 0 4 903 3676 0 0 10 /**
*
*/ 2 4 this 3 3750 3 out 1 3684
945 0 0 6 904 3680 0 0 0 1 4 this 3 3750
946 0 0 4 905 3676 0 0 332 /**
* 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 appropriate when you want to
* write a fixed-width value to the datagram, especially when you are not
* writing a bam file.
*/ 2 4 this 3 3750 11 destination 1 3686
947 0 0 4 906 3676 0 0 114 /**
* Reads the vector from the Datagram using get_float32() or get_float64().
* See write_datagram_fixed().
*/ 2 4 this 3 3749 6 source 1 3688
948 0 0 4 907 3676 0 0 205 /**
* Writes the vector to the Datagram using add_stdfloat(). This is
* appropriate when you want to write the vector using the standard width
* setting, especially when you are writing a bam file.
*/ 2 4 this 3 3750 11 destination 1 3686
949 0 0 4 908 3676 0 0 67 /**
* Reads the vector from the Datagram using get_stdfloat().
*/ 2 4 this 3 3749 6 source 1 3688
950 0 0 7 909 3691 0 0 0 0
951 0 0 7 913 3754 2799 0 0 0
952 0 0 7 913 3754 2799 0 10 /**
*
*/ 1 4 copy 1 3750
953 0 0 7 913 3754 2799 0 0 1 6 param0 0 3752
954 0 0 7 913 3754 2799 0 10 /**
*
*/ 1 10 fill_value 1 3529
955 0 0 7 913 3754 2799 0 10 /**
*
*/ 4 1 x 1 3529 1 y 1 3529 1 z 1 3529 1 w 1 3529
956 0 0 4 914 3676 0 0 129 /**
* Sets each element of the vector to the indicated fill_value. This is
* particularly useful for initializing to zero.
*/ 2 4 this 3 3754 10 fill_value 1 3529
957 0 0 4 915 3676 0 0 10 /**
*
*/ 5 4 this 3 3754 1 x 1 3529 1 y 1 3529 1 z 1 3529 1 w 1 3529
958 0 0 4 916 3676 0 0 10 /**
*
*/ 3 4 this 3 3754 1 i 1 3532 10 assign_val 1 3529
959 0 0 6 916 3529 0 0 0 2 4 this 3 3752 1 i 1 3532
960 0 0 6 917 3532 0 0 0 0
961 0 0 4 918 3676 0 0 162 /**
* Returns the address of the first of the three data elements in the vector.
* The remaining elements occupy the next positions consecutively in memory.
*/ 1 4 this 3 3752
962 0 0 6 919 3532 0 0 0 0
963 0 0 6 920 3681 0 0 0 2 4 this 3 3752 5 other 1 3752
964 0 0 6 921 3681 0 0 0 2 4 this 3 3752 5 other 1 3752
965 0 0 7 922 3691 0 0 0 0
966 0 0 7 926 3755 2869 0 0 0
967 0 0 7 926 3755 2869 0 84 /**
* Constructs an LVecBase4 from an LPoint3. The w coordinate is set to 1.0.
*/ 1 5 point 1 3741
968 0 0 7 926 3755 2869 0 10 /**
*
*/ 2 4 copy 1 3723 1 w 1 3532
969 0 0 7 926 3755 2869 0 0 1 6 param0 0 3756
970 0 0 7 926 3755 2869 0 85 /**
* Constructs an LVecBase4 from an LVector3. The w coordinate is set to 0.0.
*/ 1 6 vector 1 3732
971 0 0 7 926 3755 2869 0 10 /**
*
*/ 1 4 copy 1 3758
972 0 0 7 926 3755 2869 0 10 /**
*
*/ 1 10 fill_value 1 3532
973 0 0 7 926 3755 2869 0 10 /**
*
*/ 4 1 x 1 3532 1 y 1 3532 1 z 1 3532 1 w 1 3532
974 0 0 4 927 3676 0 0 0 2 4 this 3 3755 4 size 1 3674
975 0 0 6 930 3755 0 0 0 2 4 this 3 3755 4 copy 1 3756
976 0 0 6 930 3755 0 0 0 2 4 this 3 3755 10 fill_value 1 3532
977 0 0 6 931 3756 0 0 40 /**
* Returns a zero-length vector.
*/ 0
978 0 0 6 932 3756 0 0 35 /**
* Returns a unit X vector.
*/ 0
979 0 0 6 933 3756 0 0 35 /**
* Returns a unit Y vector.
*/ 0
980 0 0 6 934 3756 0 0 35 /**
* Returns a unit Z vector.
*/ 0
981 0 0 6 935 3756 0 0 35 /**
* Returns a unit W vector.
*/ 0
982 0 0 6 936 3677 0 0 0 1 4 this 3 3756
983 0 0 6 937 3677 0 0 0 2 4 this 3 3756 9 attr_name 1 3680
984 0 0 6 938 3532 0 0 0 3 4 this 3 3755 9 attr_name 1 3680 6 assign 1 3677
985 0 0 4 939 3676 0 0 10 /**
*
*/ 3 4 this 3 3755 1 i 1 3532 10 assign_val 1 3532
986 0 0 6 939 3532 0 0 0 2 4 this 3 3756 1 i 1 3532
987 0 0 6 940 3532 0 0 0 0
988 0 0 6 941 3681 0 0 91 /**
* Returns true if any component of the vector is not-a-number, false
* otherwise.
*/ 1 4 this 3 3756
989 0 0 6 942 3532 0 0 10 /**
*
*/ 2 4 this 3 3756 1 i 1 3532
990 0 0 4 943 3676 0 0 10 /**
*
*/ 3 4 this 3 3755 1 i 1 3532 5 value 1 3532
991 0 0 6 944 3532 0 0 10 /**
*
*/ 1 4 this 3 3756
992 0 0 6 945 3532 0 0 10 /**
*
*/ 1 4 this 3 3756
993 0 0 6 946 3532 0 0 10 /**
*
*/ 1 4 this 3 3756
994 0 0 6 947 3532 0 0 10 /**
*
*/ 1 4 this 3 3756
995 0 0 7 948 3722 2464 0 58 /**
* Returns the x, y and z component of this vector
*/ 1 4 this 3 3756
996 0 0 7 949 3695 2154 0 55 /**
* Returns the x and y component of this vector
*/ 1 4 this 3 3756
997 0 0 4 950 3676 0 0 10 /**
*
*/ 2 4 this 3 3755 5 value 1 3532
998 0 0 4 951 3676 0 0 10 /**
*
*/ 2 4 this 3 3755 5 value 1 3532
999 0 0 4 952 3676 0 0 10 /**
*
*/ 2 4 this 3 3755 5 value 1 3532
1000 0 0 4 953 3676 0 0 10 /**
*
*/ 2 4 this 3 3755 5 value 1 3532
1001 0 0 4 959 3676 0 0 152 // These next functions add to an existing value. i.e.
// foo.set_x(foo.get_x() + value) These are useful to reduce overhead in
// scripting languages: 3 4 this 3 3755 1 i 1 3532 5 value 1 3532
1002 0 0 4 960 3676 0 0 10 /**
*
*/ 2 4 this 3 3755 5 value 1 3532
1003 0 0 4 961 3676 0 0 10 /**
*
*/ 2 4 this 3 3755 5 value 1 3532
1004 0 0 4 962 3676 0 0 10 /**
*
*/ 2 4 this 3 3755 5 value 1 3532
1005 0 0 4 963 3676 0 0 10 /**
*
*/ 2 4 this 3 3755 5 value 1 3532
1006 0 0 4 964 3676 0 0 161 /**
* Returns the address of the first of the four data elements in the vector.
* The remaining elements occupy the next positions consecutively in memory.
*/ 1 4 this 3 3756
1007 0 0 6 965 3532 0 0 0 0
1008 0 0 4 967 3676 0 0 129 /**
* Sets each element of the vector to the indicated fill_value. This is
* particularly useful for initializing to zero.
*/ 2 4 this 3 3755 10 fill_value 1 3532
1009 0 0 4 968 3676 0 0 10 /**
*
*/ 5 4 this 3 3755 1 x 1 3532 1 y 1 3532 1 z 1 3532 1 w 1 3532
1010 0 0 6 969 3532 0 0 10 /**
*
*/ 2 4 this 3 3756 5 other 1 3756
1011 0 0 6 970 3532 0 0 69 /**
* Returns the square of the vector's length, cheap and easy.
*/ 1 4 this 3 3756
1012 0 0 6 971 3681 0 0 0 2 4 this 3 3756 5 other 1 3756
1013 0 0 6 972 3681 0 0 0 2 4 this 3 3756 5 other 1 3756
1014 0 0 6 973 3681 0 0 0 2 4 this 3 3756 5 other 1 3756
1015 0 0 6 974 3532 0 0 97 /**
* This flavor of compare_to uses a default threshold value based on the
* numeric type.
*/ 2 4 this 3 3756 5 other 1 3756
1016 0 0 6 975 3674 0 0 49 /**
* Returns a suitable hash for phash_map.
*/ 1 4 this 3 3756
1017 0 0 6 976 3674 0 0 49 /**
* Adds the vector into the running hash.
*/ 2 4 this 3 3756 4 hash 1 3674
1018 0 0 4 977 3676 0 0 59 /**
* Adds the vector to the indicated hash generator.
*/ 2 4 this 3 3756 7 hashgen 1 3682
1019 0 0 7 978 3755 2869 0 0 1 4 this 3 3756
1020 0 0 7 979 3755 2869 0 0 2 4 this 3 3756 5 other 1 3756
1021 0 0 7 980 3755 2869 0 0 2 4 this 3 3756 5 other 1 3756
1022 0 0 7 981 3755 2869 0 0 2 4 this 3 3756 6 scalar 1 3532
1023 0 0 7 982 3755 2869 0 0 2 4 this 3 3756 6 scalar 1 3532
1024 0 0 6 983 3755 0 0 0 2 4 this 3 3755 5 other 1 3756
1025 0 0 6 984 3755 0 0 0 2 4 this 3 3755 5 other 1 3756
1026 0 0 6 985 3755 0 0 0 2 4 this 3 3755 6 scalar 1 3532
1027 0 0 6 986 3755 0 0 0 2 4 this 3 3755 6 scalar 1 3532
1028 0 0 4 987 3676 0 0 10 /**
*
*/ 2 4 this 3 3755 5 other 1 3756
1029 0 0 7 988 3755 2869 0 0 2 4 this 3 3756 8 exponent 1 3532
1030 0 0 6 989 3677 0 0 0 2 4 this 3 3755 8 exponent 1 3532
1031 0 0 7 990 3755 2869 0 10 /**
*
*/ 2 4 this 3 3756 5 other 1 3756
1032 0 0 7 991 3755 2869 0 10 /**
*
*/ 2 4 this 3 3756 5 other 1 3756
1033 0 0 6 992 3681 0 0 116 /**
* Returns true if two vectors are memberwise equal within a default tolerance
* based on the numeric type.
*/ 2 4 this 3 3756 5 other 1 3756
1034 0 0 6 992 3681 0 0 92 /**
* Returns true if two vectors are memberwise equal within a specified
* tolerance.
*/ 3 4 this 3 3756 5 other 1 3756 9 threshold 1 3532
1035 0 0 4 993 3676 0 0 10 /**
*
*/ 2 4 this 3 3756 3 out 1 3684
1036 0 0 6 994 3680 0 0 0 1 4 this 3 3756
1037 0 0 4 995 3676 0 0 332 /**
* 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 appropriate when you want to
* write a fixed-width value to the datagram, especially when you are not
* writing a bam file.
*/ 2 4 this 3 3756 11 destination 1 3686
1038 0 0 4 996 3676 0 0 114 /**
* Reads the vector from the Datagram using get_float32() or get_float64().
* See write_datagram_fixed().
*/ 2 4 this 3 3755 6 source 1 3688
1039 0 0 4 997 3676 0 0 205 /**
* Writes the vector to the Datagram using add_stdfloat(). This is
* appropriate when you want to write the vector using the standard width
* setting, especially when you are writing a bam file.
*/ 2 4 this 3 3756 11 destination 1 3686
1040 0 0 4 998 3676 0 0 67 /**
* Reads the vector from the Datagram using get_stdfloat().
*/ 2 4 this 3 3755 6 source 1 3688
1041 0 0 7 999 3691 0 0 0 0
1042 0 0 7 1003 3760 2880 0 0 0
1043 0 0 7 1003 3760 2880 0 10 /**
*
*/ 1 4 copy 1 3756
1044 0 0 7 1003 3760 2880 0 0 1 6 param0 0 3758
1045 0 0 7 1003 3760 2880 0 10 /**
*
*/ 1 10 fill_value 1 3532
1046 0 0 7 1003 3760 2880 0 10 /**
*
*/ 4 1 x 1 3532 1 y 1 3532 1 z 1 3532 1 w 1 3532
1047 0 0 4 1004 3676 0 0 129 /**
* Sets each element of the vector to the indicated fill_value. This is
* particularly useful for initializing to zero.
*/ 2 4 this 3 3760 10 fill_value 1 3532
1048 0 0 4 1005 3676 0 0 10 /**
*
*/ 5 4 this 3 3760 1 x 1 3532 1 y 1 3532 1 z 1 3532 1 w 1 3532
1049 0 0 4 1006 3676 0 0 10 /**
*
*/ 3 4 this 3 3760 1 i 1 3532 10 assign_val 1 3532
1050 0 0 6 1006 3532 0 0 0 2 4 this 3 3758 1 i 1 3532
1051 0 0 6 1007 3532 0 0 0 0
1052 0 0 4 1008 3676 0 0 162 /**
* Returns the address of the first of the three data elements in the vector.
* The remaining elements occupy the next positions consecutively in memory.
*/ 1 4 this 3 3758
1053 0 0 6 1009 3532 0 0 0 0
1054 0 0 6 1010 3681 0 0 0 2 4 this 3 3758 5 other 1 3758
1055 0 0 6 1011 3681 0 0 0 2 4 this 3 3758 5 other 1 3758
1056 0 0 7 1012 3691 0 0 0 0
1057 0 0 7 1015 3761 2900 0 0 0
1058 0 0 7 1015 3761 2900 0 10 /**
*
*/ 2 4 copy 1 3717 1 w 1 3526
1059 0 0 7 1015 3761 2900 0 10 /**
*
*/ 1 4 copy 1 3744
1060 0 0 7 1015 3761 2900 0 0 1 6 param0 0 3762
1061 0 0 7 1015 3761 2900 0 10 /**
*
*/ 1 10 fill_value 1 3526
1062 0 0 7 1015 3761 2900 0 10 /**
*
*/ 4 1 x 1 3526 1 y 1 3526 1 z 1 3526 1 w 1 3526
1063 0 0 6 1016 3677 0 0 0 2 4 this 3 3762 9 attr_name 1 3680
1064 0 0 6 1017 3532 0 0 0 3 4 this 3 3761 9 attr_name 1 3680 6 assign 1 3677
1065 0 0 6 1018 3762 0 0 40 /**
* Returns a zero-length vector.
*/ 0
1066 0 0 6 1019 3762 0 0 35 /**
* Returns a unit X vector.
*/ 0
1067 0 0 6 1020 3762 0 0 35 /**
* Returns a unit Y vector.
*/ 0
1068 0 0 6 1021 3762 0 0 35 /**
* Returns a unit Z vector.
*/ 0
1069 0 0 6 1022 3762 0 0 35 /**
* Returns a unit W vector.
*/ 0
1070 0 0 7 1023 3725 2502 0 58 /**
* Returns the x, y and z component of this vector
*/ 1 4 this 3 3762
1071 0 0 7 1024 3698 2172 0 55 /**
* Returns the x and y component of this vector
*/ 1 4 this 3 3762
1072 0 0 7 1027 3761 2900 0 0 1 4 this 3 3762
1073 0 0 7 1028 3743 2703 0 0 2 4 this 3 3762 5 other 1 3744
1074 0 0 7 1028 3761 2900 0 0 2 4 this 3 3762 5 other 1 3762
1075 0 0 7 1029 3743 2703 0 0 2 4 this 3 3762 5 other 1 3744
1076 0 0 7 1029 3761 2900 0 0 2 4 this 3 3762 5 other 1 3762
1077 0 0 7 1030 3761 2900 0 0 2 4 this 3 3762 6 scalar 1 3526
1078 0 0 7 1031 3761 2900 0 0 2 4 this 3 3762 6 scalar 1 3526
1079 0 0 7 1032 3761 2900 0 160 /**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/ 1 4 this 3 3762
1080 0 0 7 1033 3761 2900 0 152 /**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/ 2 4 this 3 3762 4 onto 1 3744
1081 0 0 6 1034 3680 0 0 0 1 4 this 3 3762
1082 0 0 7 1035 3691 0 0 0 0
1083 0 0 7 1038 3764 2920 0 0 0
1084 0 0 7 1038 3764 2920 0 10 /**
*
*/ 2 4 copy 1 3720 1 w 1 3529
1085 0 0 7 1038 3764 2920 0 10 /**
*
*/ 1 4 copy 1 3750
1086 0 0 7 1038 3764 2920 0 0 1 6 param0 0 3765
1087 0 0 7 1038 3764 2920 0 10 /**
*
*/ 1 10 fill_value 1 3529
1088 0 0 7 1038 3764 2920 0 10 /**
*
*/ 4 1 x 1 3529 1 y 1 3529 1 z 1 3529 1 w 1 3529
1089 0 0 6 1039 3677 0 0 0 2 4 this 3 3765 9 attr_name 1 3680
1090 0 0 6 1040 3532 0 0 0 3 4 this 3 3764 9 attr_name 1 3680 6 assign 1 3677
1091 0 0 6 1041 3765 0 0 40 /**
* Returns a zero-length vector.
*/ 0
1092 0 0 6 1042 3765 0 0 35 /**
* Returns a unit X vector.
*/ 0
1093 0 0 6 1043 3765 0 0 35 /**
* Returns a unit Y vector.
*/ 0
1094 0 0 6 1044 3765 0 0 35 /**
* Returns a unit Z vector.
*/ 0
1095 0 0 6 1045 3765 0 0 35 /**
* Returns a unit W vector.
*/ 0
1096 0 0 7 1046 3728 2536 0 58 /**
* Returns the x, y and z component of this vector
*/ 1 4 this 3 3765
1097 0 0 7 1047 3701 2190 0 55 /**
* Returns the x and y component of this vector
*/ 1 4 this 3 3765
1098 0 0 7 1050 3764 2920 0 0 1 4 this 3 3765
1099 0 0 7 1051 3749 2788 0 0 2 4 this 3 3765 5 other 1 3750
1100 0 0 7 1051 3764 2920 0 0 2 4 this 3 3765 5 other 1 3765
1101 0 0 7 1052 3749 2788 0 0 2 4 this 3 3765 5 other 1 3750
1102 0 0 7 1052 3764 2920 0 0 2 4 this 3 3765 5 other 1 3765
1103 0 0 7 1053 3764 2920 0 0 2 4 this 3 3765 6 scalar 1 3529
1104 0 0 7 1054 3764 2920 0 0 2 4 this 3 3765 6 scalar 1 3529
1105 0 0 7 1055 3764 2920 0 160 /**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/ 1 4 this 3 3765
1106 0 0 7 1056 3764 2920 0 152 /**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/ 2 4 this 3 3765 4 onto 1 3750
1107 0 0 6 1057 3680 0 0 0 1 4 this 3 3765
1108 0 0 7 1058 3691 0 0 0 0
1109 0 0 7 1061 3767 2938 0 0 0
1110 0 0 7 1061 3767 2938 0 10 /**
*
*/ 2 4 copy 1 3723 1 w 1 3532
1111 0 0 7 1061 3767 2938 0 10 /**
*
*/ 1 4 copy 1 3756
1112 0 0 7 1061 3767 2938 0 0 1 6 param0 0 3768
1113 0 0 7 1061 3767 2938 0 10 /**
*
*/ 1 10 fill_value 1 3532
1114 0 0 7 1061 3767 2938 0 10 /**
*
*/ 4 1 x 1 3532 1 y 1 3532 1 z 1 3532 1 w 1 3532
1115 0 0 6 1062 3677 0 0 0 2 4 this 3 3768 9 attr_name 1 3680
1116 0 0 6 1063 3532 0 0 0 3 4 this 3 3767 9 attr_name 1 3680 6 assign 1 3677
1117 0 0 6 1064 3768 0 0 40 /**
* Returns a zero-length vector.
*/ 0
1118 0 0 6 1065 3768 0 0 35 /**
* Returns a unit X vector.
*/ 0
1119 0 0 6 1066 3768 0 0 35 /**
* Returns a unit Y vector.
*/ 0
1120 0 0 6 1067 3768 0 0 35 /**
* Returns a unit Z vector.
*/ 0
1121 0 0 6 1068 3768 0 0 35 /**
* Returns a unit W vector.
*/ 0
1122 0 0 7 1069 3731 2562 0 58 /**
* Returns the x, y and z component of this vector
*/ 1 4 this 3 3768
1123 0 0 7 1070 3704 2204 0 55 /**
* Returns the x and y component of this vector
*/ 1 4 this 3 3768
1124 0 0 7 1073 3767 2938 0 0 1 4 this 3 3768
1125 0 0 7 1074 3755 2869 0 0 2 4 this 3 3768 5 other 1 3756
1126 0 0 7 1074 3767 2938 0 0 2 4 this 3 3768 5 other 1 3768
1127 0 0 7 1075 3755 2869 0 0 2 4 this 3 3768 5 other 1 3756
1128 0 0 7 1075 3767 2938 0 0 2 4 this 3 3768 5 other 1 3768
1129 0 0 7 1076 3767 2938 0 0 2 4 this 3 3768 6 scalar 1 3532
1130 0 0 7 1077 3767 2938 0 0 2 4 this 3 3768 6 scalar 1 3532
1131 0 0 6 1078 3680 0 0 0 1 4 this 3 3768
1132 0 0 7 1079 3691 0 0 0 0
1133 0 0 7 1082 3770 2958 0 0 0
1134 0 0 7 1082 3770 2958 0 0 1 6 param0 0 3771
1135 0 0 7 1082 3770 2958 0 10 /**
*
*/ 2 4 copy 1 3717 1 w 1 3526
1136 0 0 7 1082 3770 2958 0 10 /**
*
*/ 1 4 copy 1 3744
1137 0 0 7 1082 3770 2958 0 10 /**
*
*/ 1 10 fill_value 1 3526
1138 0 0 7 1082 3770 2958 0 10 /**
*
*/ 4 1 x 1 3526 1 y 1 3526 1 z 1 3526 1 w 1 3526
1139 0 0 6 1083 3677 0 0 0 2 4 this 3 3771 9 attr_name 1 3680
1140 0 0 6 1084 3532 0 0 0 3 4 this 3 3770 9 attr_name 1 3680 6 assign 1 3677
1141 0 0 6 1085 3771 0 0 39 /**
* Returns a zero-length point.
*/ 0
1142 0 0 6 1086 3771 0 0 34 /**
* Returns a unit X point.
*/ 0
1143 0 0 6 1087 3771 0 0 34 /**
* Returns a unit Y point.
*/ 0
1144 0 0 6 1088 3771 0 0 34 /**
* Returns a unit Z point.
*/ 0
1145 0 0 6 1089 3771 0 0 34 /**
* Returns a unit W point.
*/ 0
1146 0 0 7 1090 3734 2585 0 58 /**
* Returns the x, y and z component of this vector
*/ 1 4 this 3 3771
1147 0 0 7 1091 3707 2220 0 55 /**
* Returns the x and y component of this vector
*/ 1 4 this 3 3771
1148 0 0 7 1094 3770 2958 0 0 1 4 this 3 3771
1149 0 0 7 1095 3743 2703 0 0 2 4 this 3 3771 5 other 1 3744
1150 0 0 7 1095 3770 2958 0 0 2 4 this 3 3771 5 other 1 3762
1151 0 0 7 1096 3761 2900 0 0 2 4 this 3 3771 5 other 1 3771
1152 0 0 7 1096 3743 2703 0 0 2 4 this 3 3771 5 other 1 3744
1153 0 0 7 1096 3770 2958 0 0 2 4 this 3 3771 5 other 1 3762
1154 0 0 7 1097 3770 2958 0 0 2 4 this 3 3771 6 scalar 1 3526
1155 0 0 7 1098 3770 2958 0 0 2 4 this 3 3771 6 scalar 1 3526
1156 0 0 7 1099 3770 2958 0 160 /**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/ 1 4 this 3 3771
1157 0 0 7 1100 3770 2958 0 152 /**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/ 2 4 this 3 3771 4 onto 1 3744
1158 0 0 6 1101 3680 0 0 0 1 4 this 3 3771
1159 0 0 7 1102 3691 0 0 0 0
1160 0 0 7 1105 3773 2978 0 0 0
1161 0 0 7 1105 3773 2978 0 0 1 6 param0 0 3774
1162 0 0 7 1105 3773 2978 0 10 /**
*
*/ 2 4 copy 1 3720 1 w 1 3529
1163 0 0 7 1105 3773 2978 0 10 /**
*
*/ 1 4 copy 1 3750
1164 0 0 7 1105 3773 2978 0 10 /**
*
*/ 1 10 fill_value 1 3529
1165 0 0 7 1105 3773 2978 0 10 /**
*
*/ 4 1 x 1 3529 1 y 1 3529 1 z 1 3529 1 w 1 3529
1166 0 0 6 1106 3677 0 0 0 2 4 this 3 3774 9 attr_name 1 3680
1167 0 0 6 1107 3532 0 0 0 3 4 this 3 3773 9 attr_name 1 3680 6 assign 1 3677
1168 0 0 6 1108 3774 0 0 39 /**
* Returns a zero-length point.
*/ 0
1169 0 0 6 1109 3774 0 0 34 /**
* Returns a unit X point.
*/ 0
1170 0 0 6 1110 3774 0 0 34 /**
* Returns a unit Y point.
*/ 0
1171 0 0 6 1111 3774 0 0 34 /**
* Returns a unit Z point.
*/ 0
1172 0 0 6 1112 3774 0 0 34 /**
* Returns a unit W point.
*/ 0
1173 0 0 7 1113 3737 2608 0 58 /**
* Returns the x, y and z component of this vector
*/ 1 4 this 3 3774
1174 0 0 7 1114 3710 2236 0 55 /**
* Returns the x and y component of this vector
*/ 1 4 this 3 3774
1175 0 0 7 1117 3773 2978 0 0 1 4 this 3 3774
1176 0 0 7 1118 3749 2788 0 0 2 4 this 3 3774 5 other 1 3750
1177 0 0 7 1118 3773 2978 0 0 2 4 this 3 3774 5 other 1 3765
1178 0 0 7 1119 3764 2920 0 0 2 4 this 3 3774 5 other 1 3774
1179 0 0 7 1119 3749 2788 0 0 2 4 this 3 3774 5 other 1 3750
1180 0 0 7 1119 3773 2978 0 0 2 4 this 3 3774 5 other 1 3765
1181 0 0 7 1120 3773 2978 0 0 2 4 this 3 3774 6 scalar 1 3529
1182 0 0 7 1121 3773 2978 0 0 2 4 this 3 3774 6 scalar 1 3529
1183 0 0 7 1122 3773 2978 0 160 /**
* Normalizes the vector and returns the normalized vector as a copy. If the
* vector was a zero-length vector, a zero length vector will be returned.
*/ 1 4 this 3 3774
1184 0 0 7 1123 3773 2978 0 152 /**
* Returns a new vector representing the projection of this vector onto
* another one. The resulting vector will be a scalar multiple of onto.
*/ 2 4 this 3 3774 4 onto 1 3750
1185 0 0 6 1124 3680 0 0 0 1 4 this 3 3774
1186 0 0 7 1125 3691 0 0 0 0
1187 0 0 7 1128 3776 2996 0 0 0
1188 0 0 7 1128 3776 2996 0 0 1 6 param0 0 3777
1189 0 0 7 1128 3776 2996 0 10 /**
*
*/ 2 4 copy 1 3723 1 w 1 3532
1190 0 0 7 1128 3776 2996 0 10 /**
*
*/ 1 4 copy 1 3756
1191 0 0 7 1128 3776 2996 0 10 /**
*
*/ 1 10 fill_value 1 3532
1192 0 0 7 1128 3776 2996 0 10 /**
*
*/ 4 1 x 1 3532 1 y 1 3532 1 z 1 3532 1 w 1 3532
1193 0 0 6 1129 3677 0 0 0 2 4 this 3 3777 9 attr_name 1 3680
1194 0 0 6 1130 3532 0 0 0 3 4 this 3 3776 9 attr_name 1 3680 6 assign 1 3677
1195 0 0 6 1131 3777 0 0 39 /**
* Returns a zero-length point.
*/ 0
1196 0 0 6 1132 3777 0 0 34 /**
* Returns a unit X point.
*/ 0
1197 0 0 6 1133 3777 0 0 34 /**
* Returns a unit Y point.
*/ 0
1198 0 0 6 1134 3777 0 0 34 /**
* Returns a unit Z point.
*/ 0
1199 0 0 6 1135 3777 0 0 34 /**
* Returns a unit W point.
*/ 0
1200 0 0 7 1136 3740 2629 0 58 /**
* Returns the x, y and z component of this vector
*/ 1 4 this 3 3777
1201 0 0 7 1137 3713 2250 0 55 /**
* Returns the x and y component of this vector
*/ 1 4 this 3 3777
1202 0 0 7 1140 3776 2996 0 0 1 4 this 3 3777
1203 0 0 7 1141 3755 2869 0 0 2 4 this 3 3777 5 other 1 3756
1204 0 0 7 1141 3776 2996 0 0 2 4 this 3 3777 5 other 1 3768
1205 0 0 7 1142 3767 2938 0 0 2 4 this 3 3777 5 other 1 3777
1206 0 0 7 1142 3755 2869 0 0 2 4 this 3 3777 5 other 1 3756
1207 0 0 7 1142 3776 2996 0 0 2 4 this 3 3777 5 other 1 3768
1208 0 0 7 1143 3776 2996 0 0 2 4 this 3 3777 6 scalar 1 3532
1209 0 0 7 1144 3776 2996 0 0 2 4 this 3 3777 6 scalar 1 3532
1210 0 0 6 1145 3680 0 0 0 1 4 this 3 3777
1211 0 0 7 1146 3691 0 0 0 0
1212 0 0 7 1162 3779 3084 0 10 /**
*
*/ 0
1213 0 0 7 1162 3779 3084 0 10 /**
*
*/ 1 5 other 1 3780
1214 0 0 7 1162 3779 3084 0 60 /**
* Constructs the matrix from three individual rows.
*/ 3 6 param0 0 3717 6 param1 0 3717 6 param2 0 3717
1215 0 0 7 1162 3779 3084 0 10 /**
*
*/ 9 6 param0 0 3526 6 param1 0 3526 6 param2 0 3526 6 param3 0 3526 6 param4 0 3526 6 param5 0 3526 6 param6 0 3526 6 param7 0 3526 6 param8 0 3526
1216 0 0 6 1163 3779 0 0 10 /**
*
*/ 2 4 this 3 3779 5 other 1 3780
1217 0 0 6 1163 3779 0 0 10 /**
*
*/ 2 4 this 3 3779 10 fill_value 1 3526
1218 0 0 4 1164 3676 0 0 0 2 4 this 3 3779 4 size 1 3674
1219 0 0 6 1167 3677 0 0 0 1 4 this 3 3780
1220 0 0 4 1168 3676 0 0 157 /**
* Sets each element of the matrix to the indicated fill_value. This is of
* questionable value, but is sometimes useful when initializing to zero.
*/ 2 4 this 3 3779 10 fill_value 1 3526
1221 0 0 4 1169 3676 0 0 10 /**
*
*/ 10 4 this 3 3779 3 e00 1 3526 3 e01 1 3526 3 e02 1 3526 3 e10 1 3526 3 e11 1 3526 3 e12 1 3526 3 e20 1 3526 3 e21 1 3526 3 e22 1 3526
1222 0 0 7 1170 3782 3001 0 0 2 4 this 3 3779 1 i 1 3532
1223 0 0 7 1170 3783 3006 0 0 2 4 this 3 3780 1 i 1 3532
1224 0 0 6 1171 3532 0 0 55 /**
* Returns 3: the number of rows of a LMatrix3.
*/ 0
1225 0 0 4 1172 3676 0 0 109 /**
* Replaces the indicated row of the matrix from a two-component vector,
* ignoring the last column.
*/ 3 4 this 3 3779 3 row 1 3532 1 v 1 3672
1226 0 0 4 1172 3676 0 0 82 /**
* Replaces the indicated row of the matrix from a three-component vector.
*/ 3 4 this 3 3779 3 row 1 3532 1 v 1 3717
1227 0 0 4 1173 3676 0 0 109 /**
* Replaces the indicated column of the matrix from a two-component vector,
* ignoring the last row.
*/ 3 4 this 3 3779 3 col 1 3532 1 v 1 3672
1228 0 0 4 1173 3676 0 0 85 /**
* Replaces the indicated column of the matrix from a three-component vector.
*/ 3 4 this 3 3779 3 col 1 3532 1 v 1 3717
1229 0 0 4 1174 3676 0 0 78 /**
* Stores the indicated row of the matrix as a three-component vector.
*/ 3 4 this 3 3780 10 result_vec 1 3716 3 row 1 3532
1230 0 0 7 1174 3716 2323 0 79 /**
* Returns the indicated row of the matrix as a three-component vector.
*/ 2 4 this 3 3780 3 row 1 3532
1231 0 0 7 1175 3716 2323 0 82 /**
* Returns the indicated column of the matrix as a three-component vector.
*/ 2 4 this 3 3780 3 col 1 3532
1232 0 0 7 1182 3671 2032 0 106 /**
* Returns the indicated row of the matrix as a two-component vector, ignoring
* the last column.
*/ 2 4 this 3 3780 3 row 1 3532
1233 0 0 7 1183 3671 2032 0 106 /**
* Returns the indicated column of the matrix as a two-component vector,
* ignoring the last row.
*/ 2 4 this 3 3780 3 col 1 3532
1234 0 0 4 1186 3676 0 0 10 /**
*
*/ 3 4 this 3 3779 3 row 1 3532 3 col 1 3532
1235 0 0 6 1186 3526 0 0 0 3 4 this 3 3780 3 row 1 3532 3 col 1 3532
1236 0 0 6 1187 3681 0 0 91 /**
* Returns true if any component of the matrix is not-a-number, false
* otherwise.
*/ 1 4 this 3 3780
1237 0 0 6 1188 3681 0 0 93 /**
* Returns true if this is (close enough to) the identity matrix, false
* otherwise.
*/ 1 4 this 3 3780
1238 0 0 6 1189 3526 0 0 54 /**
* Returns a particular element of the matrix.
*/ 3 4 this 3 3780 3 row 1 3532 3 col 1 3532
1239 0 0 4 1190 3676 0 0 54 /**
* Changes a particular element of the matrix.
*/ 4 4 this 3 3779 3 row 1 3532 3 col 1 3532 5 value 1 3526
1240 0 0 4 1191 3676 0 0 162 /**
* Returns the address of the first of the nine data elements in the matrix.
* The remaining elements occupy the next eight positions in row-major order.
*/ 1 4 this 3 3780
1241 0 0 6 1192 3532 0 0 62 /**
* Returns the number of elements in the matrix, nine.
*/ 1 4 this 3 3780
1242 0 0 6 1193 3681 0 0 0 2 4 this 3 3780 5 other 1 3780
1243 0 0 6 1194 3681 0 0 0 2 4 this 3 3780 5 other 1 3780
1244 0 0 6 1195 3681 0 0 0 2 4 this 3 3780 5 other 1 3780
1245 0 0 6 1196 3532 0 0 97 /**
* This flavor of compare_to uses a default threshold value based on the
* numeric type.
*/ 2 4 this 3 3780 5 other 1 3780
1246 0 0 6 1196 3532 0 0 234 /**
* Sorts matrices lexicographically, componentwise. Returns a number less
* than 0 if this matrix sorts before the other one, greater than zero if it
* sorts after, 0 if they are equivalent (within the indicated tolerance).
*/ 3 4 this 3 3780 5 other 1 3780 9 threshold 1 3526
1247 0 0 6 1197 3674 0 0 49 /**
* Returns a suitable hash for phash_map.
*/ 1 4 this 3 3780
1248 0 0 6 1197 3674 0 0 49 /**
* Returns a suitable hash for phash_map.
*/ 2 4 this 3 3780 9 threshold 1 3526
1249 0 0 6 1198 3674 0 0 49 /**
* Adds the vector into the running hash.
*/ 2 4 this 3 3780 4 hash 1 3674
1250 0 0 6 1198 3674 0 0 49 /**
* Adds the vector into the running hash.
*/ 3 4 this 3 3780 4 hash 1 3674 9 threshold 1 3526
1251 0 0 7 1199 3716 2323 0 52 /**
* 3-component vector or point times matrix.
*/ 2 4 this 3 3780 1 v 1 3717
1252 0 0 7 1200 3671 2032 0 162 /**
* The matrix transforms a 2-component point (including translation component)
* and returns the result. This assumes the matrix is an affine transform.
*/ 2 4 this 3 3780 1 v 1 3672
1253 0 0 7 1201 3671 2032 0 161 /**
* The matrix transforms a 2-component vector (without translation component)
* and returns the result. This assumes the matrix is an affine transform.
*/ 2 4 this 3 3780 1 v 1 3672
1254 0 0 7 1201 3716 2323 0 194 /**
* The matrix transforms a 3-component vector and returns the result. This
* assumes the matrix is an orthonormal transform.
*
* In practice, this is the same computation as xform().
*/ 2 4 this 3 3780 1 v 1 3717
1255 0 0 7 1202 3716 2323 0 142 /**
* The matrix transforms a 3-component vector (without translation component)
* and returns the result, as a fully general operation.
*/ 2 4 this 3 3780 1 v 1 3717
1256 0 0 4 1203 3676 0 0 52 /**
* 3-component vector or point times matrix.
*/ 2 4 this 3 3780 1 v 1 3716
1257 0 0 4 1204 3676 0 0 139 /**
* The matrix transforms a 2-component point (including translation
* component). This assumes the matrix is an affine transform.
*/ 2 4 this 3 3780 1 v 1 3671
1258 0 0 4 1205 3676 0 0 137 /**
* The matrix transforms a 2-component vector (without translation component).
* This assumes the matrix is an affine transform.
*/ 2 4 this 3 3780 1 v 1 3671
1259 0 0 4 1205 3676 0 0 171 /**
* The matrix transforms a 3-component vector. This assumes the matrix is an
* orthonormal transform.
*
* In practice, this is the same computation as xform().
*/ 2 4 this 3 3780 1 v 1 3716
1260 0 0 4 1206 3676 0 0 119 /**
* The matrix transforms a 3-component vector (without translation component),
* as a fully general operation.
*/ 2 4 this 3 3780 1 v 1 3716
1261 0 0 4 1207 3676 0 0 25 // this = other1 * other2 3 4 this 3 3779 6 other1 1 3780 6 other2 1 3780
1262 0 0 7 1208 3779 3084 0 0 2 4 this 3 3780 5 other 1 3780
1263 0 0 7 1208 3779 3084 0 0 2 4 this 3 3780 6 scalar 1 3526
1264 0 0 7 1209 3779 3084 0 0 2 4 this 3 3780 6 scalar 1 3526
1265 0 0 6 1210 3779 0 0 63 /**
* Performs a memberwise addition between two matrices.
*/ 2 4 this 3 3779 5 other 1 3780
1266 0 0 6 1211 3779 0 0 66 /**
* Performs a memberwise subtraction between two matrices.
*/ 2 4 this 3 3779 5 other 1 3780
1267 0 0 6 1212 3779 0 0 10 /**
*
*/ 2 4 this 3 3779 5 other 1 3780
1268 0 0 6 1212 3779 0 0 39 /**
* Performs a memberwise scale.
*/ 2 4 this 3 3779 6 scalar 1 3526
1269 0 0 6 1213 3779 0 0 39 /**
* Performs a memberwise scale.
*/ 2 4 this 3 3779 6 scalar 1 3526
1270 0 0 4 1214 3676 0 0 10 /**
*
*/ 2 4 this 3 3779 5 other 1 3780
1271 0 0 6 1215 3526 0 0 49 /**
* Returns the determinant of the matrix.
*/ 1 4 this 3 3780
1272 0 0 4 1216 3676 0 0 10 /**
*
*/ 2 4 this 3 3779 5 other 1 3780
1273 0 0 4 1217 3676 0 0 10 /**
*
*/ 1 4 this 3 3779
1274 0 0 6 1218 3681 0 0 463 /**
* Computes the inverse of the other matrix, and stores the result in this
* matrix. This is a fully general operation and makes no assumptions about
* the type of transform represented by the matrix.
*
* The other matrix must be a different object than this matrix. However, if
* you need to invert a matrix in place, see invert_in_place.
*
* The return value is true if the matrix was successfully inverted, false if
* there was a singularity.
*/ 2 4 this 3 3779 5 other 1 3780
1275 0 0 6 1219 3681 0 0 119 /**
* Inverts the current matrix. Returns true if the inverse is successful,
* false if the matrix was singular.
*/ 1 4 this 3 3779
1276 0 0 6 1220 3681 0 0 114 /**
* Simultaneously computes the inverse of the indicated matrix, and then the
* transpose of that inverse.
*/ 2 4 this 3 3779 5 other 1 3780
1277 0 0 6 1220 3681 0 0 114 /**
* Simultaneously computes the inverse of the indicated matrix, and then the
* transpose of that inverse.
*/ 2 4 this 3 3779 5 other 1 3784
1278 0 0 6 1221 3780 0 0 147 /**
* Returns an identity matrix.
*
* This function definition must appear first, since some inline functions
* below take advantage of it.
*/ 0
1279 0 0 4 1222 3676 0 0 74 /**
* Fills mat with a matrix that applies the indicated translation.
*/ 2 4 this 3 3779 5 trans 1 3672
1280 0 0 4 1223 3676 0 0 98 /**
* Fills mat with a matrix that rotates by the given angle in degrees
* counterclockwise.
*/ 2 4 this 3 3779 5 angle 1 3526
1281 0 0 4 1223 3676 0 0 125 /**
* Fills mat with a matrix that rotates by the given angle in degrees
* counterclockwise about the indicated vector.
*/ 4 4 this 3 3779 5 angle 1 3526 4 axis 1 3717 2 cs 1 3545
1282 0 0 4 1224 3676 0 0 95 /**
* Fills mat with a matrix that applies the indicated scale in each of the two
* axes.
*/ 2 4 this 3 3779 5 scale 1 3672
1283 0 0 4 1224 3676 0 0 97 /**
* Fills mat with a matrix that applies the indicated scale in each of the
* three axes.
*/ 2 4 this 3 3779 5 scale 1 3717
1284 0 0 7 1225 3779 3084 0 67 /**
* Returns a matrix that applies the indicated translation.
*/ 1 5 trans 1 3672
1285 0 0 7 1225 3779 3084 0 67 /**
* Returns a matrix that applies the indicated translation.
*/ 2 2 tx 1 3526 2 ty 1 3526
1286 0 0 7 1226 3779 3084 0 91 /**
* Returns a matrix that rotates by the given angle in degrees
* counterclockwise.
*/ 1 5 angle 1 3526
1287 0 0 7 1226 3779 3084 0 118 /**
* Returns a matrix that rotates by the given angle in degrees
* counterclockwise about the indicated vector.
*/ 3 5 angle 1 3526 4 axis 1 3717 2 cs 1 3545
1288 0 0 7 1227 3779 3084 0 85 /**
* Returns a matrix that applies the indicated scale in each of the two axes.
*/ 1 5 scale 1 3672
1289 0 0 7 1227 3779 3084 0 90 /**
* Returns a matrix that applies the indicated scale in each of the three
* axes.
*/ 1 5 scale 1 3717
1290 0 0 7 1227 3779 3084 0 85 /**
* Returns a matrix that applies the indicated scale in each of the two axes.
*/ 2 2 sx 1 3526 2 sy 1 3526
1291 0 0 7 1227 3779 3084 0 90 /**
* Returns a matrix that applies the indicated scale in each of the three
* axes.
*/ 3 2 sx 1 3526 2 sy 1 3526 2 sz 1 3526
1292 0 0 4 1228 3676 0 0 163 /**
* Fills mat with a matrix that rotates by the given angle in degrees
* counterclockwise about the indicated vector. Assumes axis has been
* normalized.
*/ 4 4 this 3 3779 5 angle 1 3526 4 axis 1 3717 2 cs 1 3545
1293 0 0 7 1229 3779 3084 0 156 /**
* Returns a matrix that rotates by the given angle in degrees
* counterclockwise about the indicated vector. Assumes axis has been
* normalized.
*/ 3 5 angle 1 3526 4 axis 1 3717 2 cs 1 3545
1294 0 0 4 1230 3676 0 0 99 /**
* Fills mat with a matrix that applies the indicated shear in each of the
* three planes.
*/ 3 4 this 3 3779 5 shear 1 3717 2 cs 1 3545
1295 0 0 7 1231 3779 3084 0 92 /**
* Returns a matrix that applies the indicated shear in each of the three
* planes.
*/ 2 5 shear 1 3717 2 cs 1 3545
1296 0 0 7 1231 3779 3084 0 92 /**
* Returns a matrix that applies the indicated shear in each of the three
* planes.
*/ 4 4 shxy 1 3526 4 shxz 1 3526 4 shyz 1 3526 2 cs 1 3545
1297 0 0 4 1232 3676 0 0 78 /**
* Fills mat with a matrix that applies the indicated scale and shear.
*/ 4 4 this 3 3779 5 scale 1 3717 5 shear 1 3717 2 cs 1 3545
1298 0 0 7 1233 3779 3084 0 71 /**
* Returns a matrix that applies the indicated scale and shear.
*/ 3 5 scale 1 3717 5 shear 1 3717 2 cs 1 3545
1299 0 0 7 1233 3779 3084 0 71 /**
* Returns a matrix that applies the indicated scale and shear.
*/ 7 2 sx 1 3526 2 sy 1 3526 2 sz 1 3526 4 shxy 1 3526 4 shxz 1 3526 4 shyz 1 3526 2 cs 1 3545
1300 0 0 6 1234 3780 0 0 119 /**
* Returns a matrix that transforms from the indicated coordinate system to
* the indicated coordinate system.
*/ 2 4 from 1 3545 2 to 1 3545
1301 0 0 6 1235 3681 0 0 117 /**
* Returns true if two matrices are memberwise equal within a default
* tolerance based on the numeric type.
*/ 2 4 this 3 3780 5 other 1 3780
1302 0 0 6 1235 3681 0 0 93 /**
* Returns true if two matrices are memberwise equal within a specified
* tolerance.
*/ 3 4 this 3 3780 5 other 1 3780 9 threshold 1 3526
1303 0 0 4 1236 3676 0 0 10 /**
*
*/ 2 4 this 3 3780 3 out 1 3684
1304 0 0 4 1237 3676 0 0 10 /**
*
*/ 3 4 this 3 3780 3 out 1 3684 12 indent_level 1 3532
1305 0 0 6 1238 3680 0 0 0 1 4 this 3 3780
1306 0 0 4 1239 3676 0 0 59 /**
* Adds the vector to the indicated hash generator.
*/ 2 4 this 3 3780 7 hashgen 1 3682
1307 0 0 4 1239 3676 0 0 59 /**
* Adds the vector to the indicated hash generator.
*/ 3 4 this 3 3780 7 hashgen 1 3682 9 threshold 1 3526
1308 0 0 4 1240 3676 0 0 332 /**
* Writes the matrix to the Datagram using add_float32() or add_float64(),
* depending on the type of floats in the matrix, regardless of the setting of
* Datagram::set_stdfloat_double(). This is appropriate when you want to
* write a fixed-width value to the datagram, especially when you are not
* writing a bam file.
*/ 2 4 this 3 3780 11 destination 1 3686
1309 0 0 4 1241 3676 0 0 114 /**
* Reads the matrix from the Datagram using get_float32() or get_float64().
* See write_datagram_fixed().
*/ 2 4 this 3 3779 4 scan 1 3688
1310 0 0 4 1242 3676 0 0 205 /**
* Writes the matrix to the Datagram using add_stdfloat(). This is
* appropriate when you want to write the matrix using the standard width
* setting, especially when you are writing a bam file.
*/ 2 4 this 3 3780 11 destination 1 3686
1311 0 0 4 1243 3676 0 0 67 /**
* Reads the matrix from the Datagram using get_stdfloat().
*/ 2 4 this 3 3779 6 source 1 3688
1312 0 0 7 1244 3691 0 0 0 0
1313 0 0 7 1154 3782 3001 0 0 1 6 param0 0 3786
1314 0 0 4 1151 3676 0 0 10 /**
*
*/ 3 4 this 3 3782 1 i 1 3532 10 assign_val 1 3526
1315 0 0 6 1151 3526 0 0 0 2 4 this 3 3786 1 i 1 3532
1316 0 0 6 1152 3532 0 0 58 /**
* Returns 3: the number of columns of a LMatrix3.
*/ 0
1317 0 0 6 1153 3717 0 0 0 1 4 this 3 3786
1318 0 0 7 1160 3783 3006 0 0 1 6 param0 0 3788
1319 0 0 6 1157 3526 0 0 0 2 4 this 3 3788 1 i 1 3532
1320 0 0 6 1158 3532 0 0 58 /**
* Returns 3: the number of columns of a LMatrix3.
*/ 0
1321 0 0 6 1159 3717 0 0 0 1 4 this 3 3788
1322 0 0 7 1262 3790 3184 0 10 /**
*
*/ 0
1323 0 0 7 1262 3790 3184 0 95 // Construct a 4x4 matrix given a 3x3 rotation matrix and an optional
// translation component. 1 6 upper3 1 3780
1324 0 0 7 1262 3790 3184 0 10 /**
*
*/ 2 6 upper3 1 3780 5 trans 1 3717
1325 0 0 7 1262 3790 3184 0 10 /**
*
*/ 1 5 other 1 3784
1326 0 0 7 1262 3790 3184 0 59 /**
* Constructs the matrix from four individual rows.
*/ 4 6 param0 0 3744 6 param1 0 3744 6 param2 0 3744 6 param3 0 3744
1327 0 0 7 1262 3790 3184 0 10 /**
*
*/ 1 5 other 1 3791
1328 0 0 7 1262 3790 3184 0 10 /**
*
*/ 16 6 param0 0 3526 6 param1 0 3526 6 param2 0 3526 6 param3 0 3526 6 param4 0 3526 6 param5 0 3526 6 param6 0 3526 6 param7 0 3526 6 param8 0 3526 6 param9 0 3526 7 param10 0 3526 7 param11 0 3526 7 param12 0 3526 7 param13 0 3526 7 param14 0 3526 7 param15 0 3526
1329 0 0 6 1263 3790 0 0 10 /**
*
*/ 2 4 this 3 3790 5 other 1 3784
1330 0 0 6 1263 3790 0 0 10 /**
*
*/ 2 4 this 3 3790 5 other 1 3791
1331 0 0 6 1263 3790 0 0 10 /**
*
*/ 2 4 this 3 3790 10 fill_value 1 3526
1332 0 0 4 1264 3676 0 0 0 2 4 this 3 3790 4 size 1 3674
1333 0 0 6 1267 3677 0 0 0 1 4 this 3 3784
1334 0 0 4 1268 3676 0 0 157 /**
* Sets each element of the matrix to the indicated fill_value. This is of
* questionable value, but is sometimes useful when initializing to zero.
*/ 2 4 this 3 3790 10 fill_value 1 3526
1335 0 0 4 1269 3676 0 0 10 /**
*
*/ 17 4 this 3 3790 3 e00 1 3526 3 e01 1 3526 3 e02 1 3526 3 e03 1 3526 3 e10 1 3526 3 e11 1 3526 3 e12 1 3526 3 e13 1 3526 3 e20 1 3526 3 e21 1 3526 3 e22 1 3526 3 e23 1 3526 3 e30 1 3526 3 e31 1 3526 3 e32 1 3526 3 e33 1 3526
1336 0 0 4 1270 3676 0 0 45 // Get and set the upper 3x3 rotation matrix. 2 4 this 3 3790 6 upper3 1 3780
1337 0 0 7 1271 3779 3084 0 45 /**
* Retrieves the upper 3x3 submatrix.
*/ 1 4 this 3 3784
1338 0 0 7 1272 3793 3091 0 0 2 4 this 3 3790 1 i 1 3532
1339 0 0 7 1272 3794 3096 0 0 2 4 this 3 3784 1 i 1 3532
1340 0 0 6 1273 3532 0 0 55 /**
* Returns 4: the number of rows of a LMatrix4.
*/ 0
1341 0 0 4 1274 3676 0 0 119 /**
* Replaces the indicated row of the matrix with the indicated 3-component
* vector, ignoring the last column.
*/ 3 4 this 3 3790 3 row 1 3532 1 v 1 3717
1342 0 0 4 1274 3676 0 0 52 /**
* Replaces the indicated row of the matrix.
*/ 3 4 this 3 3790 3 row 1 3532 1 v 1 3744
1343 0 0 4 1275 3676 0 0 119 /**
* Replaces the indicated column of the matrix with the indicated 3-component
* vector, ignoring the last row.
*/ 3 4 this 3 3790 3 col 1 3532 1 v 1 3717
1344 0 0 4 1275 3676 0 0 55 /**
* Replaces the indicated column of the matrix.
*/ 3 4 this 3 3790 3 col 1 3532 1 v 1 3744
1345 0 0 4 1276 3676 0 0 74 /**
* Stores the indicated row of the matrix as a 4-component vector.
*/ 3 4 this 3 3784 10 result_vec 1 3743 3 row 1 3532
1346 0 0 7 1276 3743 2703 0 77 /**
* Retrieves the indicated row of the matrix as a 4-component vector.
*/ 2 4 this 3 3784 3 row 1 3532
1347 0 0 7 1277 3743 2703 0 80 /**
* Retrieves the indicated column of the matrix as a 4-component vector.
*/ 2 4 this 3 3784 3 col 1 3532
1348 0 0 4 1278 3676 0 0 100 /**
* Stores the row column of the matrix as a 3-component vector, ignoring the
* last column.
*/ 3 4 this 3 3784 10 result_vec 1 3716 3 row 1 3532
1349 0 0 7 1278 3716 2323 0 103 /**
* Retrieves the row column of the matrix as a 3-component vector, ignoring
* the last column.
*/ 2 4 this 3 3784 3 row 1 3532
1350 0 0 7 1286 3716 2323 0 106 /**
* Retrieves the indicated column of the matrix as a 3-component vector,
* ignoring the last row.
*/ 2 4 this 3 3784 3 col 1 3532
1351 0 0 4 1287 3676 0 0 10 /**
*
*/ 3 4 this 3 3790 3 row 1 3532 3 col 1 3532
1352 0 0 6 1287 3526 0 0 0 3 4 this 3 3784 3 row 1 3532 3 col 1 3532
1353 0 0 6 1288 3681 0 0 91 /**
* Returns true if any component of the matrix is not-a-number, false
* otherwise.
*/ 1 4 this 3 3784
1354 0 0 6 1289 3681 0 0 93 /**
* Returns true if this is (close enough to) the identity matrix, false
* otherwise.
*/ 1 4 this 3 3784
1355 0 0 6 1290 3526 0 0 54 /**
* Returns a particular element of the matrix.
*/ 3 4 this 3 3784 3 row 1 3532 3 col 1 3532
1356 0 0 4 1291 3676 0 0 54 /**
* Changes a particular element of the matrix.
*/ 4 4 this 3 3790 3 row 1 3532 3 col 1 3532 5 value 1 3526
1357 0 0 4 1292 3676 0 0 162 /**
* Returns the address of the first of the nine data elements in the matrix.
* The remaining elements occupy the next eight positions in row-major order.
*/ 1 4 this 3 3784
1358 0 0 6 1293 3532 0 0 60 /**
* Returns the number of elements in the matrix, 16.
*/ 1 4 this 3 3784
1359 0 0 4 1294 3676 0 0 101 /**
* Returns an iterator that may be used to traverse the elements of the
* matrix, STL-style.
*/ 1 4 this 3 3790
1360 0 0 4 1294 3676 0 0 101 /**
* Returns an iterator that may be used to traverse the elements of the
* matrix, STL-style.
*/ 1 4 this 3 3784
1361 0 0 4 1295 3676 0 0 101 /**
* Returns an iterator that may be used to traverse the elements of the
* matrix, STL-style.
*/ 1 4 this 3 3790
1362 0 0 4 1295 3676 0 0 101 /**
* Returns an iterator that may be used to traverse the elements of the
* matrix, STL-style.
*/ 1 4 this 3 3784
1363 0 0 6 1296 3681 0 0 0 2 4 this 3 3784 5 other 1 3784
1364 0 0 6 1297 3681 0 0 0 2 4 this 3 3784 5 other 1 3784
1365 0 0 6 1298 3681 0 0 0 2 4 this 3 3784 5 other 1 3784
1366 0 0 6 1299 3532 0 0 97 /**
* This flavor of compare_to uses a default threshold value based on the
* numeric type.
*/ 2 4 this 3 3784 5 other 1 3784
1367 0 0 6 1299 3532 0 0 234 /**
* Sorts matrices lexicographically, componentwise. Returns a number less
* than 0 if this matrix sorts before the other one, greater than zero if it
* sorts after, 0 if they are equivalent (within the indicated tolerance).
*/ 3 4 this 3 3784 5 other 1 3784 9 threshold 1 3526
1368 0 0 6 1300 3674 0 0 49 /**
* Returns a suitable hash for phash_map.
*/ 1 4 this 3 3784
1369 0 0 6 1300 3674 0 0 49 /**
* Returns a suitable hash for phash_map.
*/ 2 4 this 3 3784 9 threshold 1 3526
1370 0 0 6 1301 3674 0 0 49 /**
* Adds the vector into the running hash.
*/ 2 4 this 3 3784 4 hash 1 3674
1371 0 0 6 1301 3674 0 0 49 /**
* Adds the vector into the running hash.
*/ 3 4 this 3 3784 4 hash 1 3674 9 threshold 1 3526
1372 0 0 7 1302 3743 2703 0 91 /**
* 4-component vector or point times matrix. This is a fully general
* operation.
*/ 2 4 this 3 3784 1 v 1 3744
1373 0 0 7 1303 3716 2323 0 162 /**
* The matrix transforms a 3-component point (including translation component)
* and returns the result. This assumes the matrix is an affine transform.
*/ 2 4 this 3 3784 1 v 1 3717
1374 0 0 7 1304 3716 2323 0 143 /**
* The matrix transforms a 3-component point (including translation component)
* and returns the result, as a fully general operation.
*/ 2 4 this 3 3784 1 v 1 3717
1375 0 0 7 1305 3716 2323 0 169 /**
* The matrix transforms a 3-component vector (without translation component)
* and returns the result. This assumes the matrix is an orthonormal
* transform.
*/ 2 4 this 3 3784 1 v 1 3717
1376 0 0 7 1306 3716 2323 0 142 /**
* The matrix transforms a 3-component vector (without translation component)
* and returns the result, as a fully general operation.
*/ 2 4 this 3 3784 1 v 1 3717
1377 0 0 4 1307 3676 0 0 91 /**
* 4-component vector or point times matrix. This is a fully general
* operation.
*/ 2 4 this 3 3784 1 v 1 3743
1378 0 0 4 1308 3676 0 0 139 /**
* The matrix transforms a 3-component point (including translation
* component). This assumes the matrix is an affine transform.
*/ 2 4 this 3 3784 1 v 1 3716
1379 0 0 4 1309 3676 0 0 120 /**
* The matrix transforms a 3-component point (including translation
* component), as a fully general operation.
*/ 2 4 this 3 3784 1 v 1 3716
1380 0 0 4 1310 3676 0 0 142 /**
* The matrix transforms a 3-component vector (without translation component).
* This assumes the matrix is an orthonormal transform.
*/ 2 4 this 3 3784 1 v 1 3716
1381 0 0 4 1311 3676 0 0 119 /**
* The matrix transforms a 3-component vector (without translation component),
* as a fully general operation.
*/ 2 4 this 3 3784 1 v 1 3716
1382 0 0 4 1312 3676 0 0 25 // this = other1 * other2 3 4 this 3 3790 6 other1 1 3784 6 other2 1 3784
1383 0 0 7 1313 3790 3184 0 0 2 4 this 3 3784 5 other 1 3784
1384 0 0 7 1313 3790 3184 0 0 2 4 this 3 3784 6 scalar 1 3526
1385 0 0 7 1314 3790 3184 0 0 2 4 this 3 3784 6 scalar 1 3526
1386 0 0 6 1315 3790 0 0 63 /**
* Performs a memberwise addition between two matrices.
*/ 2 4 this 3 3790 5 other 1 3784
1387 0 0 6 1316 3790 0 0 63 /**
* Performs a memberwise addition between two matrices.
*/ 2 4 this 3 3790 5 other 1 3784
1388 0 0 6 1317 3790 0 0 10 /**
*
*/ 2 4 this 3 3790 5 other 1 3784
1389 0 0 6 1317 3790 0 0 10 /**
*
*/ 2 4 this 3 3790 6 scalar 1 3526
1390 0 0 6 1318 3790 0 0 10 /**
*
*/ 2 4 this 3 3790 6 scalar 1 3526
1391 0 0 4 1319 3676 0 0 10 /**
*
*/ 2 4 this 3 3790 5 other 1 3784
1392 0 0 4 1320 3676 0 0 10 /**
*
*/ 2 4 this 3 3790 5 other 1 3784
1393 0 0 4 1321 3676 0 0 10 /**
*
*/ 1 4 this 3 3790
1394 0 0 6 1322 3681 0 0 461 /**
* Computes the inverse of the other matrix, and stores the result in this
* matrix. This is a fully general operation and makes no assumptions about
* the type of transform represented by the matrix.
*
* The other matrix must be a different object than this matrix. However, if
* you need to invert a matrix in place, see invert_in_place.
*
* The return value is true if the matrix was successfully inverted, false if
* the was a singularity.
*/ 2 4 this 3 3790 5 other 1 3784
1395 0 0 6 1323 3681 0 0 139 // bugbug: we could optimize this for rotationscaletranslation matrices
// (transpose upper 3x3 and take negative of translation component) 2 4 this 3 3790 5 other 1 3784
1396 0 0 6 1324 3681 0 0 119 /**
* Inverts the current matrix. Returns true if the inverse is successful,
* false if the matrix was singular.
*/ 1 4 this 3 3790
1397 0 0 4 1325 3676 0 0 46 /**
* Computes (*this) += other * weight.
*/ 3 4 this 3 3790 5 other 1 3784 6 weight 1 3526
1398 0 0 6 1326 3784 0 0 147 /**
* Returns an identity matrix.
*
* This function definition must appear first, since some inline functions
* below take advantage of it.
*/ 0
1399 0 0 6 1327 3784 0 0 46 /**
* Returns an matrix filled with ones.
*/ 0
1400 0 0 6 1328 3784 0 0 47 /**
* Returns an matrix filled with zeros.
*/ 0
1401 0 0 4 1329 3676 0 0 74 /**
* Fills mat with a matrix that applies the indicated translation.
*/ 2 4 this 3 3790 5 trans 1 3717
1402 0 0 4 1330 3676 0 0 122 /**
* Sets mat to a matrix that rotates by the given angle in degrees
* counterclockwise about the indicated vector.
*/ 4 4 this 3 3790 5 angle 1 3526 4 axis 1 3717 2 cs 1 3545
1403 0 0 4 1331 3676 0 0 166 /**
* Fills mat with a matrix that rotates by the given angle in degrees
* counterclockwise about the indicated vector. Assumes axis has been
* prenormalized.
*/ 4 4 this 3 3790 5 angle 1 3526 4 axis 1 3717 2 cs 1 3545
1404 0 0 4 1332 3676 0 0 97 /**
* Fills mat with a matrix that applies the indicated scale in each of the
* three axes.
*/ 2 4 this 3 3790 5 scale 1 3717
1405 0 0 4 1333 3676 0 0 99 /**
* Fills mat with a matrix that applies the indicated shear in each of the
* three planes.
*/ 3 4 this 3 3790 5 shear 1 3717 2 cs 1 3545
1406 0 0 4 1334 3676 0 0 78 /**
* Fills mat with a matrix that applies the indicated scale and shear.
*/ 4 4 this 3 3790 5 scale 1 3717 5 shear 1 3717 2 cs 1 3545
1407 0 0 7 1335 3790 3184 0 67 /**
* Returns a matrix that applies the indicated translation.
*/ 1 5 trans 1 3717
1408 0 0 7 1335 3790 3184 0 67 /**
* Returns a matrix that applies the indicated translation.
*/ 3 2 tx 1 3526 2 ty 1 3526 2 tz 1 3526
1409 0 0 7 1336 3790 3184 0 118 /**
* Returns a matrix that rotates by the given angle in degrees
* counterclockwise about the indicated vector.
*/ 3 5 angle 1 3526 4 axis 1 3717 2 cs 1 3545
1410 0 0 7 1337 3790 3184 0 159 /**
* Returns a matrix that rotates by the given angle in degrees
* counterclockwise about the indicated vector. Assumes axis has been
* prenormalized.
*/ 3 5 angle 1 3526 4 axis 1 3717 2 cs 1 3545
1411 0 0 7 1338 3790 3184 0 90 /**
* Returns a matrix that applies the indicated scale in each of the three
* axes.
*/ 1 5 scale 1 3717
1412 0 0 7 1338 3790 3184 0 69 /**
* Returns a matrix that applies the indicated uniform scale.
*/ 1 5 scale 1 3526
1413 0 0 7 1338 3790 3184 0 90 /**
* Returns a matrix that applies the indicated scale in each of the three
* axes.
*/ 3 2 sx 1 3526 2 sy 1 3526 2 sz 1 3526
1414 0 0 7 1339 3790 3184 0 92 /**
* Returns a matrix that applies the indicated shear in each of the three
* planes.
*/ 2 5 shear 1 3717 2 cs 1 3545
1415 0 0 7 1339 3790 3184 0 92 /**
* Returns a matrix that applies the indicated shear in each of the three
* planes.
*/ 4 4 shxy 1 3526 4 shxz 1 3526 4 shyz 1 3526 2 cs 1 3545
1416 0 0 7 1340 3790 3184 0 71 /**
* Returns a matrix that applies the indicated scale and shear.
*/ 3 5 scale 1 3717 5 shear 1 3717 2 cs 1 3545
1417 0 0 7 1340 3790 3184 0 71 /**
* Returns a matrix that applies the indicated scale and shear.
*/ 7 2 sx 1 3526 2 sy 1 3526 2 sz 1 3526 4 shxy 1 3526 4 shxz 1 3526 4 shyz 1 3526 2 cs 1 3545
1418 0 0 6 1341 3784 0 0 109 /**
* Returns a matrix that transforms from the Y-up coordinate system to the
* Z-up coordinate system.
*/ 0
1419 0 0 6 1342 3784 0 0 109 /**
* Returns a matrix that transforms from the Y-up coordinate system to the
* Z-up coordinate system.
*/ 0
1420 0 0 6 1343 3784 0 0 119 /**
* Returns a matrix that transforms from the indicated coordinate system to
* the indicated coordinate system.
*/ 2 4 from 1 3545 2 to 1 3545
1421 0 0 6 1344 3681 0 0 117 /**
* Returns true if two matrices are memberwise equal within a default
* tolerance based on the numeric type.
*/ 2 4 this 3 3784 5 other 1 3784
1422 0 0 6 1344 3681 0 0 199 /**
* Returns true if two matrices are memberwise equal within a specified
* tolerance. This is faster than the equivalence operator as this doesn't
* have to guarantee that it is transitive.
*/ 3 4 this 3 3784 5 other 1 3784 9 threshold 1 3526
1423 0 0 4 1345 3676 0 0 10 /**
*
*/ 2 4 this 3 3784 3 out 1 3684
1424 0 0 4 1346 3676 0 0 10 /**
*
*/ 3 4 this 3 3784 3 out 1 3684 12 indent_level 1 3532
1425 0 0 6 1347 3680 0 0 0 1 4 this 3 3784
1426 0 0 4 1348 3676 0 0 59 /**
* Adds the vector to the indicated hash generator.
*/ 2 4 this 3 3784 7 hashgen 1 3682
1427 0 0 4 1348 3676 0 0 59 /**
* Adds the vector to the indicated hash generator.
*/ 3 4 this 3 3784 7 hashgen 1 3682 5 scale 1 3526
1428 0 0 4 1349 3676 0 0 332 /**
* Writes the matrix to the Datagram using add_float32() or add_float64(),
* depending on the type of floats in the matrix, regardless of the setting of
* Datagram::set_stdfloat_double(). This is appropriate when you want to
* write a fixed-width value to the datagram, especially when you are not
* writing a bam file.
*/ 2 4 this 3 3784 11 destination 1 3686
1429 0 0 4 1350 3676 0 0 114 /**
* Reads the matrix from the Datagram using get_float32() or get_float64().
* See write_datagram_fixed().
*/ 2 4 this 3 3790 4 scan 1 3688
1430 0 0 4 1351 3676 0 0 205 /**
* Writes the matrix to the Datagram using add_stdfloat(). This is
* appropriate when you want to write the matrix using the standard width
* setting, especially when you are writing a bam file.
*/ 2 4 this 3 3784 11 destination 1 3686
1431 0 0 4 1352 3676 0 0 67 /**
* Reads the matrix from the Datagram using get_stdfloat().
*/ 2 4 this 3 3790 6 source 1 3688
1432 0 0 7 1353 3691 0 0 0 0
1433 0 0 7 1254 3793 3091 0 0 1 6 param0 0 3795
1434 0 0 4 1251 3676 0 0 10 /**
*
*/ 3 4 this 3 3793 1 i 1 3532 10 assign_val 1 3526
1435 0 0 6 1251 3526 0 0 0 2 4 this 3 3795 1 i 1 3532
1436 0 0 6 1252 3532 0 0 58 /**
* Returns 4: the number of columns of a LMatrix4.
*/ 0
1437 0 0 6 1253 3744 0 0 0 1 4 this 3 3795
1438 0 0 7 1260 3794 3096 0 0 1 6 param0 0 3797
1439 0 0 6 1257 3526 0 0 0 2 4 this 3 3797 1 i 1 3532
1440 0 0 6 1258 3532 0 0 58 /**
* Returns 4: the number of columns of a LMatrix4.
*/ 0
1441 0 0 6 1259 3744 0 0 0 1 4 this 3 3797
1442 0 0 7 1357 3799 3194 0 10 /**
*
*/ 0
1443 0 0 7 1357 3799 3194 0 10 /**
*
*/ 1 4 copy 1 3784
1444 0 0 7 1357 3799 3194 0 10 /**
*
*/ 1 4 copy 1 3791
1445 0 0 7 1357 3799 3194 0 10 /**
*
*/ 16 3 e00 1 3526 3 e01 1 3526 3 e02 1 3526 3 e03 1 3526 3 e10 1 3526 3 e11 1 3526 3 e12 1 3526 3 e13 1 3526 3 e20 1 3526 3 e21 1 3526 3 e22 1 3526 3 e23 1 3526 3 e30 1 3526 3 e31 1 3526 3 e32 1 3526 3 e33 1 3526
1446 0 0 6 1358 3799 0 0 10 /**
*
*/ 2 4 this 3 3799 4 copy 1 3784
1447 0 0 6 1358 3799 0 0 10 /**
*
*/ 2 4 this 3 3799 4 copy 1 3791
1448 0 0 4 1359 3676 0 0 10 /**
*
*/ 17 4 this 3 3799 3 e00 1 3526 3 e01 1 3526 3 e02 1 3526 3 e03 1 3526 3 e10 1 3526 3 e11 1 3526 3 e12 1 3526 3 e13 1 3526 3 e20 1 3526 3 e21 1 3526 3 e22 1 3526 3 e23 1 3526 3 e30 1 3526 3 e31 1 3526 3 e32 1 3526 3 e33 1 3526
1449 0 0 4 1360 3676 0 0 10 /**
*
*/ 3 4 this 3 3799 3 row 1 3532 3 col 1 3532
1450 0 0 6 1360 3526 0 0 0 3 4 this 3 3791 3 row 1 3532 3 col 1 3532
1451 0 0 4 1361 3676 0 0 162 /**
* Returns the address of the first of the nine data elements in the matrix.
* The remaining elements occupy the next eight positions in row-major order.
*/ 1 4 this 3 3791
1452 0 0 6 1362 3532 0 0 65 /**
* Returns the number of elements in the matrix, sixteen.
*/ 1 4 this 3 3791
1453 0 0 6 1363 3681 0 0 0 2 4 this 3 3791 5 other 1 3791
1454 0 0 6 1364 3681 0 0 0 2 4 this 3 3791 5 other 1 3791
1455 0 0 7 1365 3691 0 0 0 0
1456 0 0 7 1381 3800 3282 0 10 /**
*
*/ 0
1457 0 0 7 1381 3800 3282 0 10 /**
*
*/ 1 5 other 1 3801
1458 0 0 7 1381 3800 3282 0 60 /**
* Constructs the matrix from three individual rows.
*/ 3 6 param0 0 3720 6 param1 0 3720 6 param2 0 3720
1459 0 0 7 1381 3800 3282 0 10 /**
*
*/ 9 6 param0 0 3529 6 param1 0 3529 6 param2 0 3529 6 param3 0 3529 6 param4 0 3529 6 param5 0 3529 6 param6 0 3529 6 param7 0 3529 6 param8 0 3529
1460 0 0 6 1382 3800 0 0 10 /**
*
*/ 2 4 this 3 3800 5 other 1 3801
1461 0 0 6 1382 3800 0 0 10 /**
*
*/ 2 4 this 3 3800 10 fill_value 1 3529
1462 0 0 4 1383 3676 0 0 0 2 4 this 3 3800 4 size 1 3674
1463 0 0 6 1386 3677 0 0 0 1 4 this 3 3801
1464 0 0 4 1387 3676 0 0 157 /**
* Sets each element of the matrix to the indicated fill_value. This is of
* questionable value, but is sometimes useful when initializing to zero.
*/ 2 4 this 3 3800 10 fill_value 1 3529
1465 0 0 4 1388 3676 0 0 10 /**
*
*/ 10 4 this 3 3800 3 e00 1 3529 3 e01 1 3529 3 e02 1 3529 3 e10 1 3529 3 e11 1 3529 3 e12 1 3529 3 e20 1 3529 3 e21 1 3529 3 e22 1 3529
1466 0 0 7 1389 3803 3199 0 0 2 4 this 3 3800 1 i 1 3532
1467 0 0 7 1389 3804 3204 0 0 2 4 this 3 3801 1 i 1 3532
1468 0 0 6 1390 3532 0 0 55 /**
* Returns 3: the number of rows of a LMatrix3.
*/ 0
1469 0 0 4 1391 3676 0 0 109 /**
* Replaces the indicated row of the matrix from a two-component vector,
* ignoring the last column.
*/ 3 4 this 3 3800 3 row 1 3532 1 v 1 3693
1470 0 0 4 1391 3676 0 0 82 /**
* Replaces the indicated row of the matrix from a three-component vector.
*/ 3 4 this 3 3800 3 row 1 3532 1 v 1 3720
1471 0 0 4 1392 3676 0 0 109 /**
* Replaces the indicated column of the matrix from a two-component vector,
* ignoring the last row.
*/ 3 4 this 3 3800 3 col 1 3532 1 v 1 3693
1472 0 0 4 1392 3676 0 0 85 /**
* Replaces the indicated column of the matrix from a three-component vector.
*/ 3 4 this 3 3800 3 col 1 3532 1 v 1 3720
1473 0 0 4 1393 3676 0 0 78 /**
* Stores the indicated row of the matrix as a three-component vector.
*/ 3 4 this 3 3801 10 result_vec 1 3719 3 row 1 3532
1474 0 0 7 1393 3719 2396 0 79 /**
* Returns the indicated row of the matrix as a three-component vector.
*/ 2 4 this 3 3801 3 row 1 3532
1475 0 0 7 1394 3719 2396 0 82 /**
* Returns the indicated column of the matrix as a three-component vector.
*/ 2 4 this 3 3801 3 col 1 3532
1476 0 0 7 1401 3692 2095 0 106 /**
* Returns the indicated row of the matrix as a two-component vector, ignoring
* the last column.
*/ 2 4 this 3 3801 3 row 1 3532
1477 0 0 7 1402 3692 2095 0 106 /**
* Returns the indicated column of the matrix as a two-component vector,
* ignoring the last row.
*/ 2 4 this 3 3801 3 col 1 3532
1478 0 0 4 1405 3676 0 0 10 /**
*
*/ 3 4 this 3 3800 3 row 1 3532 3 col 1 3532
1479 0 0 6 1405 3529 0 0 0 3 4 this 3 3801 3 row 1 3532 3 col 1 3532
1480 0 0 6 1406 3681 0 0 91 /**
* Returns true if any component of the matrix is not-a-number, false
* otherwise.
*/ 1 4 this 3 3801
1481 0 0 6 1407 3681 0 0 93 /**
* Returns true if this is (close enough to) the identity matrix, false
* otherwise.
*/ 1 4 this 3 3801
1482 0 0 6 1408 3529 0 0 54 /**
* Returns a particular element of the matrix.
*/ 3 4 this 3 3801 3 row 1 3532 3 col 1 3532
1483 0 0 4 1409 3676 0 0 54 /**
* Changes a particular element of the matrix.
*/ 4 4 this 3 3800 3 row 1 3532 3 col 1 3532 5 value 1 3529
1484 0 0 4 1410 3676 0 0 162 /**
* Returns the address of the first of the nine data elements in the matrix.
* The remaining elements occupy the next eight positions in row-major order.
*/ 1 4 this 3 3801
1485 0 0 6 1411 3532 0 0 62 /**
* Returns the number of elements in the matrix, nine.
*/ 1 4 this 3 3801
1486 0 0 6 1412 3681 0 0 0 2 4 this 3 3801 5 other 1 3801
1487 0 0 6 1413 3681 0 0 0 2 4 this 3 3801 5 other 1 3801
1488 0 0 6 1414 3681 0 0 0 2 4 this 3 3801 5 other 1 3801
1489 0 0 6 1415 3532 0 0 97 /**
* This flavor of compare_to uses a default threshold value based on the
* numeric type.
*/ 2 4 this 3 3801 5 other 1 3801
1490 0 0 6 1415 3532 0 0 234 /**
* Sorts matrices lexicographically, componentwise. Returns a number less
* than 0 if this matrix sorts before the other one, greater than zero if it
* sorts after, 0 if they are equivalent (within the indicated tolerance).
*/ 3 4 this 3 3801 5 other 1 3801 9 threshold 1 3529
1491 0 0 6 1416 3674 0 0 49 /**
* Returns a suitable hash for phash_map.
*/ 1 4 this 3 3801
1492 0 0 6 1416 3674 0 0 49 /**
* Returns a suitable hash for phash_map.
*/ 2 4 this 3 3801 9 threshold 1 3529
1493 0 0 6 1417 3674 0 0 49 /**
* Adds the vector into the running hash.
*/ 2 4 this 3 3801 4 hash 1 3674
1494 0 0 6 1417 3674 0 0 49 /**
* Adds the vector into the running hash.
*/ 3 4 this 3 3801 4 hash 1 3674 9 threshold 1 3529
1495 0 0 7 1418 3719 2396 0 52 /**
* 3-component vector or point times matrix.
*/ 2 4 this 3 3801 1 v 1 3720
1496 0 0 7 1419 3692 2095 0 162 /**
* The matrix transforms a 2-component point (including translation component)
* and returns the result. This assumes the matrix is an affine transform.
*/ 2 4 this 3 3801 1 v 1 3693
1497 0 0 7 1420 3692 2095 0 161 /**
* The matrix transforms a 2-component vector (without translation component)
* and returns the result. This assumes the matrix is an affine transform.
*/ 2 4 this 3 3801 1 v 1 3693
1498 0 0 7 1420 3719 2396 0 194 /**
* The matrix transforms a 3-component vector and returns the result. This
* assumes the matrix is an orthonormal transform.
*
* In practice, this is the same computation as xform().
*/ 2 4 this 3 3801 1 v 1 3720
1499 0 0 7 1421 3719 2396 0 142 /**
* The matrix transforms a 3-component vector (without translation component)
* and returns the result, as a fully general operation.
*/ 2 4 this 3 3801 1 v 1 3720
1500 0 0 4 1422 3676 0 0 52 /**
* 3-component vector or point times matrix.
*/ 2 4 this 3 3801 1 v 1 3719
1501 0 0 4 1423 3676 0 0 139 /**
* The matrix transforms a 2-component point (including translation
* component). This assumes the matrix is an affine transform.
*/ 2 4 this 3 3801 1 v 1 3692
1502 0 0 4 1424 3676 0 0 137 /**
* The matrix transforms a 2-component vector (without translation component).
* This assumes the matrix is an affine transform.
*/ 2 4 this 3 3801 1 v 1 3692
1503 0 0 4 1424 3676 0 0 171 /**
* The matrix transforms a 3-component vector. This assumes the matrix is an
* orthonormal transform.
*
* In practice, this is the same computation as xform().
*/ 2 4 this 3 3801 1 v 1 3719
1504 0 0 4 1425 3676 0 0 119 /**
* The matrix transforms a 3-component vector (without translation component),
* as a fully general operation.
*/ 2 4 this 3 3801 1 v 1 3719
1505 0 0 4 1426 3676 0 0 25 // this = other1 * other2 3 4 this 3 3800 6 other1 1 3801 6 other2 1 3801
1506 0 0 7 1427 3800 3282 0 0 2 4 this 3 3801 5 other 1 3801
1507 0 0 7 1427 3800 3282 0 0 2 4 this 3 3801 6 scalar 1 3529
1508 0 0 7 1428 3800 3282 0 0 2 4 this 3 3801 6 scalar 1 3529
1509 0 0 6 1429 3800 0 0 63 /**
* Performs a memberwise addition between two matrices.
*/ 2 4 this 3 3800 5 other 1 3801
1510 0 0 6 1430 3800 0 0 66 /**
* Performs a memberwise subtraction between two matrices.
*/ 2 4 this 3 3800 5 other 1 3801
1511 0 0 6 1431 3800 0 0 10 /**
*
*/ 2 4 this 3 3800 5 other 1 3801
1512 0 0 6 1431 3800 0 0 39 /**
* Performs a memberwise scale.
*/ 2 4 this 3 3800 6 scalar 1 3529
1513 0 0 6 1432 3800 0 0 39 /**
* Performs a memberwise scale.
*/ 2 4 this 3 3800 6 scalar 1 3529
1514 0 0 4 1433 3676 0 0 10 /**
*
*/ 2 4 this 3 3800 5 other 1 3801
1515 0 0 6 1434 3529 0 0 49 /**
* Returns the determinant of the matrix.
*/ 1 4 this 3 3801
1516 0 0 4 1435 3676 0 0 10 /**
*
*/ 2 4 this 3 3800 5 other 1 3801
1517 0 0 4 1436 3676 0 0 10 /**
*
*/ 1 4 this 3 3800
1518 0 0 6 1437 3681 0 0 463 /**
* Computes the inverse of the other matrix, and stores the result in this
* matrix. This is a fully general operation and makes no assumptions about
* the type of transform represented by the matrix.
*
* The other matrix must be a different object than this matrix. However, if
* you need to invert a matrix in place, see invert_in_place.
*
* The return value is true if the matrix was successfully inverted, false if
* there was a singularity.
*/ 2 4 this 3 3800 5 other 1 3801
1519 0 0 6 1438 3681 0 0 119 /**
* Inverts the current matrix. Returns true if the inverse is successful,
* false if the matrix was singular.
*/ 1 4 this 3 3800
1520 0 0 6 1439 3681 0 0 114 /**
* Simultaneously computes the inverse of the indicated matrix, and then the
* transpose of that inverse.
*/ 2 4 this 3 3800 5 other 1 3801
1521 0 0 6 1439 3681 0 0 114 /**
* Simultaneously computes the inverse of the indicated matrix, and then the
* transpose of that inverse.
*/ 2 4 this 3 3800 5 other 1 3805
1522 0 0 6 1440 3801 0 0 147 /**
* Returns an identity matrix.
*
* This function definition must appear first, since some inline functions
* below take advantage of it.
*/ 0
1523 0 0 4 1441 3676 0 0 74 /**
* Fills mat with a matrix that applies the indicated translation.
*/ 2 4 this 3 3800 5 trans 1 3693
1524 0 0 4 1442 3676 0 0 98 /**
* Fills mat with a matrix that rotates by the given angle in degrees
* counterclockwise.
*/ 2 4 this 3 3800 5 angle 1 3529
1525 0 0 4 1442 3676 0 0 125 /**
* Fills mat with a matrix that rotates by the given angle in degrees
* counterclockwise about the indicated vector.
*/ 4 4 this 3 3800 5 angle 1 3529 4 axis 1 3720 2 cs 1 3545
1526 0 0 4 1443 3676 0 0 95 /**
* Fills mat with a matrix that applies the indicated scale in each of the two
* axes.
*/ 2 4 this 3 3800 5 scale 1 3693
1527 0 0 4 1443 3676 0 0 97 /**
* Fills mat with a matrix that applies the indicated scale in each of the
* three axes.
*/ 2 4 this 3 3800 5 scale 1 3720
1528 0 0 7 1444 3800 3282 0 67 /**
* Returns a matrix that applies the indicated translation.
*/ 1 5 trans 1 3693
1529 0 0 7 1444 3800 3282 0 67 /**
* Returns a matrix that applies the indicated translation.
*/ 2 2 tx 1 3529 2 ty 1 3529
1530 0 0 7 1445 3800 3282 0 91 /**
* Returns a matrix that rotates by the given angle in degrees
* counterclockwise.
*/ 1 5 angle 1 3529
1531 0 0 7 1445 3800 3282 0 118 /**
* Returns a matrix that rotates by the given angle in degrees
* counterclockwise about the indicated vector.
*/ 3 5 angle 1 3529 4 axis 1 3720 2 cs 1 3545
1532 0 0 7 1446 3800 3282 0 85 /**
* Returns a matrix that applies the indicated scale in each of the two axes.
*/ 1 5 scale 1 3693
1533 0 0 7 1446 3800 3282 0 90 /**
* Returns a matrix that applies the indicated scale in each of the three
* axes.
*/ 1 5 scale 1 3720
1534 0 0 7 1446 3800 3282 0 85 /**
* Returns a matrix that applies the indicated scale in each of the two axes.
*/ 2 2 sx 1 3529 2 sy 1 3529
1535 0 0 7 1446 3800 3282 0 90 /**
* Returns a matrix that applies the indicated scale in each of the three
* axes.
*/ 3 2 sx 1 3529 2 sy 1 3529 2 sz 1 3529
1536 0 0 4 1447 3676 0 0 163 /**
* Fills mat with a matrix that rotates by the given angle in degrees
* counterclockwise about the indicated vector. Assumes axis has been
* normalized.
*/ 4 4 this 3 3800 5 angle 1 3529 4 axis 1 3720 2 cs 1 3545
1537 0 0 7 1448 3800 3282 0 156 /**
* Returns a matrix that rotates by the given angle in degrees
* counterclockwise about the indicated vector. Assumes axis has been
* normalized.
*/ 3 5 angle 1 3529 4 axis 1 3720 2 cs 1 3545
1538 0 0 4 1449 3676 0 0 99 /**
* Fills mat with a matrix that applies the indicated shear in each of the
* three planes.
*/ 3 4 this 3 3800 5 shear 1 3720 2 cs 1 3545
1539 0 0 7 1450 3800 3282 0 92 /**
* Returns a matrix that applies the indicated shear in each of the three
* planes.
*/ 2 5 shear 1 3720 2 cs 1 3545
1540 0 0 7 1450 3800 3282 0 92 /**
* Returns a matrix that applies the indicated shear in each of the three
* planes.
*/ 4 4 shxy 1 3529 4 shxz 1 3529 4 shyz 1 3529 2 cs 1 3545
1541 0 0 4 1451 3676 0 0 78 /**
* Fills mat with a matrix that applies the indicated scale and shear.
*/ 4 4 this 3 3800 5 scale 1 3720 5 shear 1 3720 2 cs 1 3545
1542 0 0 7 1452 3800 3282 0 71 /**
* Returns a matrix that applies the indicated scale and shear.
*/ 3 5 scale 1 3720 5 shear 1 3720 2 cs 1 3545
1543 0 0 7 1452 3800 3282 0 71 /**
* Returns a matrix that applies the indicated scale and shear.
*/ 7 2 sx 1 3529 2 sy 1 3529 2 sz 1 3529 4 shxy 1 3529 4 shxz 1 3529 4 shyz 1 3529 2 cs 1 3545
1544 0 0 6 1453 3801 0 0 119 /**
* Returns a matrix that transforms from the indicated coordinate system to
* the indicated coordinate system.
*/ 2 4 from 1 3545 2 to 1 3545
1545 0 0 6 1454 3681 0 0 117 /**
* Returns true if two matrices are memberwise equal within a default
* tolerance based on the numeric type.
*/ 2 4 this 3 3801 5 other 1 3801
1546 0 0 6 1454 3681 0 0 93 /**
* Returns true if two matrices are memberwise equal within a specified
* tolerance.
*/ 3 4 this 3 3801 5 other 1 3801 9 threshold 1 3529
1547 0 0 4 1455 3676 0 0 10 /**
*
*/ 2 4 this 3 3801 3 out 1 3684
1548 0 0 4 1456 3676 0 0 10 /**
*
*/ 3 4 this 3 3801 3 out 1 3684 12 indent_level 1 3532
1549 0 0 6 1457 3680 0 0 0 1 4 this 3 3801
1550 0 0 4 1458 3676 0 0 59 /**
* Adds the vector to the indicated hash generator.
*/ 2 4 this 3 3801 7 hashgen 1 3682
1551 0 0 4 1458 3676 0 0 59 /**
* Adds the vector to the indicated hash generator.
*/ 3 4 this 3 3801 7 hashgen 1 3682 9 threshold 1 3529
1552 0 0 4 1459 3676 0 0 332 /**
* Writes the matrix to the Datagram using add_float32() or add_float64(),
* depending on the type of floats in the matrix, regardless of the setting of
* Datagram::set_stdfloat_double(). This is appropriate when you want to
* write a fixed-width value to the datagram, especially when you are not
* writing a bam file.
*/ 2 4 this 3 3801 11 destination 1 3686
1553 0 0 4 1460 3676 0 0 114 /**
* Reads the matrix from the Datagram using get_float32() or get_float64().
* See write_datagram_fixed().
*/ 2 4 this 3 3800 4 scan 1 3688
1554 0 0 4 1461 3676 0 0 205 /**
* Writes the matrix to the Datagram using add_stdfloat(). This is
* appropriate when you want to write the matrix using the standard width
* setting, especially when you are writing a bam file.
*/ 2 4 this 3 3801 11 destination 1 3686
1555 0 0 4 1462 3676 0 0 67 /**
* Reads the matrix from the Datagram using get_stdfloat().
*/ 2 4 this 3 3800 6 source 1 3688
1556 0 0 7 1463 3691 0 0 0 0
1557 0 0 7 1373 3803 3199 0 0 1 6 param0 0 3807
1558 0 0 4 1370 3676 0 0 10 /**
*
*/ 3 4 this 3 3803 1 i 1 3532 10 assign_val 1 3529
1559 0 0 6 1370 3529 0 0 0 2 4 this 3 3807 1 i 1 3532
1560 0 0 6 1371 3532 0 0 58 /**
* Returns 3: the number of columns of a LMatrix3.
*/ 0
1561 0 0 6 1372 3720 0 0 0 1 4 this 3 3807
1562 0 0 7 1379 3804 3204 0 0 1 6 param0 0 3809
1563 0 0 6 1376 3529 0 0 0 2 4 this 3 3809 1 i 1 3532
1564 0 0 6 1377 3532 0 0 58 /**
* Returns 3: the number of columns of a LMatrix3.
*/ 0
1565 0 0 6 1378 3720 0 0 0 1 4 this 3 3809
1566 0 0 7 1479 3811 3380 0 10 /**
*
*/ 0
1567 0 0 7 1479 3811 3380 0 95 // Construct a 4x4 matrix given a 3x3 rotation matrix and an optional
// translation component. 1 6 upper3 1 3801
1568 0 0 7 1479 3811 3380 0 10 /**
*
*/ 2 6 upper3 1 3801 5 trans 1 3720
1569 0 0 7 1479 3811 3380 0 10 /**
*
*/ 1 5 other 1 3805
1570 0 0 7 1479 3811 3380 0 59 /**
* Constructs the matrix from four individual rows.
*/ 4 6 param0 0 3750 6 param1 0 3750 6 param2 0 3750 6 param3 0 3750
1571 0 0 7 1479 3811 3380 0 10 /**
*
*/ 1 5 other 1 3812
1572 0 0 7 1479 3811 3380 0 10 /**
*
*/ 16 6 param0 0 3529 6 param1 0 3529 6 param2 0 3529 6 param3 0 3529 6 param4 0 3529 6 param5 0 3529 6 param6 0 3529 6 param7 0 3529 6 param8 0 3529 6 param9 0 3529 7 param10 0 3529 7 param11 0 3529 7 param12 0 3529 7 param13 0 3529 7 param14 0 3529 7 param15 0 3529
1573 0 0 6 1480 3811 0 0 10 /**
*
*/ 2 4 this 3 3811 5 other 1 3805
1574 0 0 6 1480 3811 0 0 10 /**
*
*/ 2 4 this 3 3811 5 other 1 3812
1575 0 0 6 1480 3811 0 0 10 /**
*
*/ 2 4 this 3 3811 10 fill_value 1 3529
1576 0 0 4 1481 3676 0 0 0 2 4 this 3 3811 4 size 1 3674
1577 0 0 6 1484 3677 0 0 0 1 4 this 3 3805
1578 0 0 4 1485 3676 0 0 157 /**
* Sets each element of the matrix to the indicated fill_value. This is of
* questionable value, but is sometimes useful when initializing to zero.
*/ 2 4 this 3 3811 10 fill_value 1 3529
1579 0 0 4 1486 3676 0 0 10 /**
*
*/ 17 4 this 3 3811 3 e00 1 3529 3 e01 1 3529 3 e02 1 3529 3 e03 1 3529 3 e10 1 3529 3 e11 1 3529 3 e12 1 3529 3 e13 1 3529 3 e20 1 3529 3 e21 1 3529 3 e22 1 3529 3 e23 1 3529 3 e30 1 3529 3 e31 1 3529 3 e32 1 3529 3 e33 1 3529
1580 0 0 4 1487 3676 0 0 45 // Get and set the upper 3x3 rotation matrix. 2 4 this 3 3811 6 upper3 1 3801
1581 0 0 7 1488 3800 3282 0 45 /**
* Retrieves the upper 3x3 submatrix.
*/ 1 4 this 3 3805
1582 0 0 7 1489 3814 3287 0 0 2 4 this 3 3811 1 i 1 3532
1583 0 0 7 1489 3815 3292 0 0 2 4 this 3 3805 1 i 1 3532
1584 0 0 6 1490 3532 0 0 55 /**
* Returns 4: the number of rows of a LMatrix4.
*/ 0
1585 0 0 4 1491 3676 0 0 119 /**
* Replaces the indicated row of the matrix with the indicated 3-component
* vector, ignoring the last column.
*/ 3 4 this 3 3811 3 row 1 3532 1 v 1 3720
1586 0 0 4 1491 3676 0 0 52 /**
* Replaces the indicated row of the matrix.
*/ 3 4 this 3 3811 3 row 1 3532 1 v 1 3750
1587 0 0 4 1492 3676 0 0 119 /**
* Replaces the indicated column of the matrix with the indicated 3-component
* vector, ignoring the last row.
*/ 3 4 this 3 3811 3 col 1 3532 1 v 1 3720
1588 0 0 4 1492 3676 0 0 55 /**
* Replaces the indicated column of the matrix.
*/ 3 4 this 3 3811 3 col 1 3532 1 v 1 3750
1589 0 0 4 1493 3676 0 0 74 /**
* Stores the indicated row of the matrix as a 4-component vector.
*/ 3 4 this 3 3805 10 result_vec 1 3749 3 row 1 3532
1590 0 0 7 1493 3749 2788 0 77 /**
* Retrieves the indicated row of the matrix as a 4-component vector.
*/ 2 4 this 3 3805 3 row 1 3532
1591 0 0 7 1494 3749 2788 0 80 /**
* Retrieves the indicated column of the matrix as a 4-component vector.
*/ 2 4 this 3 3805 3 col 1 3532
1592 0 0 4 1495 3676 0 0 100 /**
* Stores the row column of the matrix as a 3-component vector, ignoring the
* last column.
*/ 3 4 this 3 3805 10 result_vec 1 3719 3 row 1 3532
1593 0 0 7 1495 3719 2396 0 103 /**
* Retrieves the row column of the matrix as a 3-component vector, ignoring
* the last column.
*/ 2 4 this 3 3805 3 row 1 3532
1594 0 0 7 1503 3719 2396 0 106 /**
* Retrieves the indicated column of the matrix as a 3-component vector,
* ignoring the last row.
*/ 2 4 this 3 3805 3 col 1 3532
1595 0 0 4 1504 3676 0 0 10 /**
*
*/ 3 4 this 3 3811 3 row 1 3532 3 col 1 3532
1596 0 0 6 1504 3529 0 0 0 3 4 this 3 3805 3 row 1 3532 3 col 1 3532
1597 0 0 6 1505 3681 0 0 91 /**
* Returns true if any component of the matrix is not-a-number, false
* otherwise.
*/ 1 4 this 3 3805
1598 0 0 6 1506 3681 0 0 93 /**
* Returns true if this is (close enough to) the identity matrix, false
* otherwise.
*/ 1 4 this 3 3805
1599 0 0 6 1507 3529 0 0 54 /**
* Returns a particular element of the matrix.
*/ 3 4 this 3 3805 3 row 1 3532 3 col 1 3532
1600 0 0 4 1508 3676 0 0 54 /**
* Changes a particular element of the matrix.
*/ 4 4 this 3 3811 3 row 1 3532 3 col 1 3532 5 value 1 3529
1601 0 0 4 1509 3676 0 0 162 /**
* Returns the address of the first of the nine data elements in the matrix.
* The remaining elements occupy the next eight positions in row-major order.
*/ 1 4 this 3 3805
1602 0 0 6 1510 3532 0 0 60 /**
* Returns the number of elements in the matrix, 16.
*/ 1 4 this 3 3805
1603 0 0 4 1511 3676 0 0 101 /**
* Returns an iterator that may be used to traverse the elements of the
* matrix, STL-style.
*/ 1 4 this 3 3811
1604 0 0 4 1511 3676 0 0 101 /**
* Returns an iterator that may be used to traverse the elements of the
* matrix, STL-style.
*/ 1 4 this 3 3805
1605 0 0 4 1512 3676 0 0 101 /**
* Returns an iterator that may be used to traverse the elements of the
* matrix, STL-style.
*/ 1 4 this 3 3811
1606 0 0 4 1512 3676 0 0 101 /**
* Returns an iterator that may be used to traverse the elements of the
* matrix, STL-style.
*/ 1 4 this 3 3805
1607 0 0 6 1513 3681 0 0 0 2 4 this 3 3805 5 other 1 3805
1608 0 0 6 1514 3681 0 0 0 2 4 this 3 3805 5 other 1 3805
1609 0 0 6 1515 3681 0 0 0 2 4 this 3 3805 5 other 1 3805
1610 0 0 6 1516 3532 0 0 97 /**
* This flavor of compare_to uses a default threshold value based on the
* numeric type.
*/ 2 4 this 3 3805 5 other 1 3805
1611 0 0 6 1516 3532 0 0 234 /**
* Sorts matrices lexicographically, componentwise. Returns a number less
* than 0 if this matrix sorts before the other one, greater than zero if it
* sorts after, 0 if they are equivalent (within the indicated tolerance).
*/ 3 4 this 3 3805 5 other 1 3805 9 threshold 1 3529
1612 0 0 6 1517 3674 0 0 49 /**
* Returns a suitable hash for phash_map.
*/ 1 4 this 3 3805
1613 0 0 6 1517 3674 0 0 49 /**
* Returns a suitable hash for phash_map.
*/ 2 4 this 3 3805 9 threshold 1 3529
1614 0 0 6 1518 3674 0 0 49 /**
* Adds the vector into the running hash.
*/ 2 4 this 3 3805 4 hash 1 3674
1615 0 0 6 1518 3674 0 0 49 /**
* Adds the vector into the running hash.
*/ 3 4 this 3 3805 4 hash 1 3674 9 threshold 1 3529
1616 0 0 7 1519 3749 2788 0 91 /**
* 4-component vector or point times matrix. This is a fully general
* operation.
*/ 2 4 this 3 3805 1 v 1 3750
1617 0 0 7 1520 3719 2396 0 162 /**
* The matrix transforms a 3-component point (including translation component)
* and returns the result. This assumes the matrix is an affine transform.
*/ 2 4 this 3 3805 1 v 1 3720
1618 0 0 7 1521 3719 2396 0 143 /**
* The matrix transforms a 3-component point (including translation component)
* and returns the result, as a fully general operation.
*/ 2 4 this 3 3805 1 v 1 3720
1619 0 0 7 1522 3719 2396 0 169 /**
* The matrix transforms a 3-component vector (without translation component)
* and returns the result. This assumes the matrix is an orthonormal
* transform.
*/ 2 4 this 3 3805 1 v 1 3720
1620 0 0 7 1523 3719 2396 0 142 /**
* The matrix transforms a 3-component vector (without translation component)
* and returns the result, as a fully general operation.
*/ 2 4 this 3 3805 1 v 1 3720
1621 0 0 4 1524 3676 0 0 91 /**
* 4-component vector or point times matrix. This is a fully general
* operation.
*/ 2 4 this 3 3805 1 v 1 3749
1622 0 0 4 1525 3676 0 0 139 /**
* The matrix transforms a 3-component point (including translation
* component). This assumes the matrix is an affine transform.
*/ 2 4 this 3 3805 1 v 1 3719
1623 0 0 4 1526 3676 0 0 120 /**
* The matrix transforms a 3-component point (including translation
* component), as a fully general operation.
*/ 2 4 this 3 3805 1 v 1 3719
1624 0 0 4 1527 3676 0 0 142 /**
* The matrix transforms a 3-component vector (without translation component).
* This assumes the matrix is an orthonormal transform.
*/ 2 4 this 3 3805 1 v 1 3719
1625 0 0 4 1528 3676 0 0 119 /**
* The matrix transforms a 3-component vector (without translation component),
* as a fully general operation.
*/ 2 4 this 3 3805 1 v 1 3719
1626 0 0 4 1529 3676 0 0 25 // this = other1 * other2 3 4 this 3 3811 6 other1 1 3805 6 other2 1 3805
1627 0 0 7 1530 3811 3380 0 0 2 4 this 3 3805 5 other 1 3805
1628 0 0 7 1530 3811 3380 0 0 2 4 this 3 3805 6 scalar 1 3529
1629 0 0 7 1531 3811 3380 0 0 2 4 this 3 3805 6 scalar 1 3529
1630 0 0 6 1532 3811 0 0 63 /**
* Performs a memberwise addition between two matrices.
*/ 2 4 this 3 3811 5 other 1 3805
1631 0 0 6 1533 3811 0 0 63 /**
* Performs a memberwise addition between two matrices.
*/ 2 4 this 3 3811 5 other 1 3805
1632 0 0 6 1534 3811 0 0 10 /**
*
*/ 2 4 this 3 3811 5 other 1 3805
1633 0 0 6 1534 3811 0 0 10 /**
*
*/ 2 4 this 3 3811 6 scalar 1 3529
1634 0 0 6 1535 3811 0 0 10 /**
*
*/ 2 4 this 3 3811 6 scalar 1 3529
1635 0 0 4 1536 3676 0 0 10 /**
*
*/ 2 4 this 3 3811 5 other 1 3805
1636 0 0 4 1537 3676 0 0 10 /**
*
*/ 2 4 this 3 3811 5 other 1 3805
1637 0 0 4 1538 3676 0 0 10 /**
*
*/ 1 4 this 3 3811
1638 0 0 6 1539 3681 0 0 461 /**
* Computes the inverse of the other matrix, and stores the result in this
* matrix. This is a fully general operation and makes no assumptions about
* the type of transform represented by the matrix.
*
* The other matrix must be a different object than this matrix. However, if
* you need to invert a matrix in place, see invert_in_place.
*
* The return value is true if the matrix was successfully inverted, false if
* the was a singularity.
*/ 2 4 this 3 3811 5 other 1 3805
1639 0 0 6 1540 3681 0 0 139 // bugbug: we could optimize this for rotationscaletranslation matrices
// (transpose upper 3x3 and take negative of translation component) 2 4 this 3 3811 5 other 1 3805
1640 0 0 6 1541 3681 0 0 119 /**
* Inverts the current matrix. Returns true if the inverse is successful,
* false if the matrix was singular.
*/ 1 4 this 3 3811
1641 0 0 4 1542 3676 0 0 46 /**
* Computes (*this) += other * weight.
*/ 3 4 this 3 3811 5 other 1 3805 6 weight 1 3529
1642 0 0 6 1543 3805 0 0 147 /**
* Returns an identity matrix.
*
* This function definition must appear first, since some inline functions
* below take advantage of it.
*/ 0
1643 0 0 6 1544 3805 0 0 46 /**
* Returns an matrix filled with ones.
*/ 0
1644 0 0 6 1545 3805 0 0 47 /**
* Returns an matrix filled with zeros.
*/ 0
1645 0 0 4 1546 3676 0 0 74 /**
* Fills mat with a matrix that applies the indicated translation.
*/ 2 4 this 3 3811 5 trans 1 3720
1646 0 0 4 1547 3676 0 0 122 /**
* Sets mat to a matrix that rotates by the given angle in degrees
* counterclockwise about the indicated vector.
*/ 4 4 this 3 3811 5 angle 1 3529 4 axis 1 3720 2 cs 1 3545
1647 0 0 4 1548 3676 0 0 166 /**
* Fills mat with a matrix that rotates by the given angle in degrees
* counterclockwise about the indicated vector. Assumes axis has been
* prenormalized.
*/ 4 4 this 3 3811 5 angle 1 3529 4 axis 1 3720 2 cs 1 3545
1648 0 0 4 1549 3676 0 0 97 /**
* Fills mat with a matrix that applies the indicated scale in each of the
* three axes.
*/ 2 4 this 3 3811 5 scale 1 3720
1649 0 0 4 1550 3676 0 0 99 /**
* Fills mat with a matrix that applies the indicated shear in each of the
* three planes.
*/ 3 4 this 3 3811 5 shear 1 3720 2 cs 1 3545
1650 0 0 4 1551 3676 0 0 78 /**
* Fills mat with a matrix that applies the indicated scale and shear.
*/ 4 4 this 3 3811 5 scale 1 3720 5 shear 1 3720 2 cs 1 3545
1651 0 0 7 1552 3811 3380 0 67 /**
* Returns a matrix that applies the indicated translation.
*/ 1 5 trans 1 3720
1652 0 0 7 1552 3811 3380 0 67 /**
* Returns a matrix that applies the indicated translation.
*/ 3 2 tx 1 3529 2 ty 1 3529 2 tz 1 3529
1653 0 0 7 1553 3811 3380 0 118 /**
* Returns a matrix that rotates by the given angle in degrees
* counterclockwise about the indicated vector.
*/ 3 5 angle 1 3529 4 axis 1 3720 2 cs 1 3545
1654 0 0 7 1554 3811 3380 0 159 /**
* Returns a matrix that rotates by the given angle in degrees
* counterclockwise about the indicated vector. Assumes axis has been
* prenormalized.
*/ 3 5 angle 1 3529 4 axis 1 3720 2 cs 1 3545
1655 0 0 7 1555 3811 3380 0 90 /**
* Returns a matrix that applies the indicated scale in each of the three
* axes.
*/ 1 5 scale 1 3720
1656 0 0 7 1555 3811 3380 0 69 /**
* Returns a matrix that applies the indicated uniform scale.
*/ 1 5 scale 1 3529
1657 0 0 7 1555 3811 3380 0 90 /**
* Returns a matrix that applies the indicated scale in each of the three
* axes.
*/ 3 2 sx 1 3529 2 sy 1 3529 2 sz 1 3529
1658 0 0 7 1556 3811 3380 0 92 /**
* Returns a matrix that applies the indicated shear in each of the three
* planes.
*/ 2 5 shear 1 3720 2 cs 1 3545
1659 0 0 7 1556 3811 3380 0 92 /**
* Returns a matrix that applies the indicated shear in each of the three
* planes.
*/ 4 4 shxy 1 3529 4 shxz 1 3529 4 shyz 1 3529 2 cs 1 3545
1660 0 0 7 1557 3811 3380 0 71 /**
* Returns a matrix that applies the indicated scale and shear.
*/ 3 5 scale 1 3720 5 shear 1 3720 2 cs 1 3545
1661 0 0 7 1557 3811 3380 0 71 /**
* Returns a matrix that applies the indicated scale and shear.
*/ 7 2 sx 1 3529 2 sy 1 3529 2 sz 1 3529 4 shxy 1 3529 4 shxz 1 3529 4 shyz 1 3529 2 cs 1 3545
1662 0 0 6 1558 3805 0 0 109 /**
* Returns a matrix that transforms from the Y-up coordinate system to the
* Z-up coordinate system.
*/ 0
1663 0 0 6 1559 3805 0 0 109 /**
* Returns a matrix that transforms from the Y-up coordinate system to the
* Z-up coordinate system.
*/ 0
1664 0 0 6 1560 3805 0 0 119 /**
* Returns a matrix that transforms from the indicated coordinate system to
* the indicated coordinate system.
*/ 2 4 from 1 3545 2 to 1 3545
1665 0 0 6 1561 3681 0 0 117 /**
* Returns true if two matrices are memberwise equal within a default
* tolerance based on the numeric type.
*/ 2 4 this 3 3805 5 other 1 3805
1666 0 0 6 1561 3681 0 0 199 /**
* Returns true if two matrices are memberwise equal within a specified
* tolerance. This is faster than the equivalence operator as this doesn't
* have to guarantee that it is transitive.
*/ 3 4 this 3 3805 5 other 1 3805 9 threshold 1 3529
1667 0 0 4 1562 3676 0 0 10 /**
*
*/ 2 4 this 3 3805 3 out 1 3684
1668 0 0 4 1563 3676 0 0 10 /**
*
*/ 3 4 this 3 3805 3 out 1 3684 12 indent_level 1 3532
1669 0 0 6 1564 3680 0 0 0 1 4 this 3 3805
1670 0 0 4 1565 3676 0 0 59 /**
* Adds the vector to the indicated hash generator.
*/ 2 4 this 3 3805 7 hashgen 1 3682
1671 0 0 4 1565 3676 0 0 59 /**
* Adds the vector to the indicated hash generator.
*/ 3 4 this 3 3805 7 hashgen 1 3682 5 scale 1 3529
1672 0 0 4 1566 3676 0 0 332 /**
* Writes the matrix to the Datagram using add_float32() or add_float64(),
* depending on the type of floats in the matrix, regardless of the setting of
* Datagram::set_stdfloat_double(). This is appropriate when you want to
* write a fixed-width value to the datagram, especially when you are not
* writing a bam file.
*/ 2 4 this 3 3805 11 destination 1 3686
1673 0 0 4 1567 3676 0 0 114 /**
* Reads the matrix from the Datagram using get_float32() or get_float64().
* See write_datagram_fixed().
*/ 2 4 this 3 3811 4 scan 1 3688
1674 0 0 4 1568 3676 0 0 205 /**
* Writes the matrix to the Datagram using add_stdfloat(). This is
* appropriate when you want to write the matrix using the standard width
* setting, especially when you are writing a bam file.
*/ 2 4 this 3 3805 11 destination 1 3686
1675 0 0 4 1569 3676 0 0 67 /**
* Reads the matrix from the Datagram using get_stdfloat().
*/ 2 4 this 3 3811 6 source 1 3688
1676 0 0 7 1570 3691 0 0 0 0
1677 0 0 7 1471 3814 3287 0 0 1 6 param0 0 3816
1678 0 0 4 1468 3676 0 0 10 /**
*
*/ 3 4 this 3 3814 1 i 1 3532 10 assign_val 1 3529
1679 0 0 6 1468 3529 0 0 0 2 4 this 3 3816 1 i 1 3532
1680 0 0 6 1469 3532 0 0 58 /**
* Returns 4: the number of columns of a LMatrix4.
*/ 0
1681 0 0 6 1470 3750 0 0 0 1 4 this 3 3816
1682 0 0 7 1477 3815 3292 0 0 1 6 param0 0 3818
1683 0 0 6 1474 3529 0 0 0 2 4 this 3 3818 1 i 1 3532
1684 0 0 6 1475 3532 0 0 58 /**
* Returns 4: the number of columns of a LMatrix4.
*/ 0
1685 0 0 6 1476 3750 0 0 0 1 4 this 3 3818
1686 0 0 7 1574 3820 3390 0 10 /**
*
*/ 0
1687 0 0 7 1574 3820 3390 0 10 /**
*
*/ 1 4 copy 1 3805
1688 0 0 7 1574 3820 3390 0 10 /**
*
*/ 1 4 copy 1 3812
1689 0 0 7 1574 3820 3390 0 10 /**
*
*/ 16 3 e00 1 3529 3 e01 1 3529 3 e02 1 3529 3 e03 1 3529 3 e10 1 3529 3 e11 1 3529 3 e12 1 3529 3 e13 1 3529 3 e20 1 3529 3 e21 1 3529 3 e22 1 3529 3 e23 1 3529 3 e30 1 3529 3 e31 1 3529 3 e32 1 3529 3 e33 1 3529
1690 0 0 6 1575 3820 0 0 10 /**
*
*/ 2 4 this 3 3820 4 copy 1 3805
1691 0 0 6 1575 3820 0 0 10 /**
*
*/ 2 4 this 3 3820 4 copy 1 3812
1692 0 0 4 1576 3676 0 0 10 /**
*
*/ 17 4 this 3 3820 3 e00 1 3529 3 e01 1 3529 3 e02 1 3529 3 e03 1 3529 3 e10 1 3529 3 e11 1 3529 3 e12 1 3529 3 e13 1 3529 3 e20 1 3529 3 e21 1 3529 3 e22 1 3529 3 e23 1 3529 3 e30 1 3529 3 e31 1 3529 3 e32 1 3529 3 e33 1 3529
1693 0 0 4 1577 3676 0 0 10 /**
*
*/ 3 4 this 3 3820 3 row 1 3532 3 col 1 3532
1694 0 0 6 1577 3529 0 0 0 3 4 this 3 3812 3 row 1 3532 3 col 1 3532
1695 0 0 4 1578 3676 0 0 162 /**
* Returns the address of the first of the nine data elements in the matrix.
* The remaining elements occupy the next eight positions in row-major order.
*/ 1 4 this 3 3812
1696 0 0 6 1579 3532 0 0 65 /**
* Returns the number of elements in the matrix, sixteen.
*/ 1 4 this 3 3812
1697 0 0 6 1580 3681 0 0 0 2 4 this 3 3812 5 other 1 3812
1698 0 0 6 1581 3681 0 0 0 2 4 this 3 3812 5 other 1 3812
1699 0 0 7 1582 3691 0 0 0 0
1700 0 0 7 1593 3821 3447 0 10 /**
*
*/ 0
1701 0 0 7 1593 3821 3447 0 0 1 6 param0 0 3822
1702 0 0 7 1593 3821 3447 0 10 /**
*
*/ 1 4 copy 1 3744
1703 0 0 7 1593 3821 3447 0 10 /**
*
*/ 2 1 r 1 3526 4 copy 1 3717
1704 0 0 7 1593 3821 3447 0 10 /**
*
*/ 4 1 r 1 3526 1 i 1 3526 1 j 1 3526 1 k 1 3526
1705 0 0 7 1594 3821 3447 0 10 /**
*
*/ 1 1 v 1 3726
1706 0 0 7 1595 3821 3447 0 54 /**
* Returns the complex conjugate of this quat.
*/ 1 4 this 3 3822
1707 0 0 7 1596 3716 2323 0 60 /**
* Transforms a 3-d vector by the indicated rotation
*/ 2 4 this 3 3822 1 v 1 3717
1708 0 0 7 1596 3743 2703 0 60 /**
* Transforms a 4-d vector by the indicated rotation
*/ 2 4 this 3 3822 1 v 1 3744
1709 0 0 7 1597 3821 3447 0 45 /**
* actual multiply call (non virtual)
*/ 2 4 this 3 3822 3 rhs 1 3822
1710 0 0 7 1598 3821 3447 0 0 1 4 this 3 3822
1711 0 0 7 1599 3821 3447 0 0 2 4 this 3 3822 5 other 1 3822
1712 0 0 7 1600 3821 3447 0 0 2 4 this 3 3822 5 other 1 3822
1713 0 0 6 1601 3526 0 0 127 /**
* Returns the angle between the orientation represented by this quaternion
* and the other one, expressed in radians.
*/ 2 4 this 3 3822 5 other 1 3822
1714 0 0 6 1602 3526 0 0 127 /**
* Returns the angle between the orientation represented by this quaternion
* and the other one, expressed in degrees.
*/ 2 4 this 3 3822 5 other 1 3822
1715 0 0 7 1603 3779 3084 0 0 2 4 this 3 3821 6 param0 0 3780
1716 0 0 7 1603 3790 3184 0 0 2 4 this 3 3821 6 param0 0 3784
1717 0 0 7 1603 3821 3447 0 0 2 4 this 3 3822 6 param0 0 3822
1718 0 0 7 1603 3821 3447 0 0 2 4 this 3 3822 6 scalar 1 3526
1719 0 0 7 1604 3821 3447 0 0 2 4 this 3 3822 6 scalar 1 3526
1720 0 0 6 1605 3821 0 0 10 /**
*
*/ 2 4 this 3 3821 6 param0 0 3822
1721 0 0 7 1606 3821 3447 0 97 /**
* Returns a new quaternion that represents this quaternion raised to the
* given power.
*/ 2 4 this 3 3822 6 param0 0 3526
1722 0 0 6 1607 3681 0 0 120 /**
* Returns true if two quaternions are memberwise equal within a default
* tolerance based on the numeric type.
*/ 2 4 this 3 3822 5 other 1 3822
1723 0 0 6 1607 3681 0 0 96 /**
* Returns true if two quaternions are memberwise equal within a specified
* tolerance.
*/ 3 4 this 3 3822 5 other 1 3822 9 threshold 1 3526
1724 0 0 6 1608 3681 0 0 127 /**
* Returns true if two quaternions represent the same rotation within a
* default tolerance based on the numeric type.
*/ 2 4 this 3 3822 5 other 1 3822
1725 0 0 6 1609 3681 0 0 103 /**
* Returns true if two quaternions represent the same rotation within a
* specified tolerance.
*/ 3 4 this 3 3822 5 other 1 3822 9 threshold 1 3526
1726 0 0 4 1610 3676 0 0 10 /**
*
*/ 2 4 this 3 3822 6 param0 0 3684
1727 0 0 4 1611 3676 0 0 43 /**
* Based on the quat lib from VRPN.
*/ 2 4 this 3 3822 1 m 1 3779
1728 0 0 4 1611 3676 0 0 43 /**
* Based on the quat lib from VRPN.
*/ 2 4 this 3 3822 1 m 1 3790
1729 0 0 4 1612 3676 0 0 226 /**
* Sets the quaternion according to the rotation represented by the matrix.
* Originally we tried an algorithm presented by Do-While Jones, but that
* turned out to be broken. This is based on the quat lib from UNC.
*/ 2 4 this 3 3821 1 m 1 3780
1730 0 0 4 1612 3676 0 0 10 /**
*
*/ 2 4 this 3 3821 1 m 1 3784
1731 0 0 4 1613 3676 0 0 132 /**
* Sets the quaternion as the unit quaternion that is equivalent to these
* Euler angles. (from Real-time Rendering, p.49)
*/ 3 4 this 3 3821 3 hpr 1 3717 2 cs 1 3545
1732 0 0 7 1614 3716 2323 0 73 /**
* Extracts the equivalent Euler angles from the unit quaternion.
*/ 2 4 this 3 3822 2 cs 1 3545
1733 0 0 7 1615 3725 2502 0 180 /**
* This, along with get_angle(), returns the rotation represented by the
* quaternion as an angle about an arbitrary axis. This returns the axis; it
* is not normalized.
*/ 1 4 this 3 3822
1734 0 0 7 1616 3725 2502 0 169 /**
* This, along with get_angle(), returns the rotation represented by the
* quaternion as an angle about an arbitrary axis. This returns the
* normalized axis.
*/ 1 4 this 3 3822
1735 0 0 6 1617 3526 0 0 343 /**
* This, along with get_axis(), returns the rotation represented by the
* quaternion as an angle about an arbitrary axis. This returns the angle, in
* radians counterclockwise about the axis.
*
* It is necessary to ensure the quaternion has been normalized (for instance,
* with a call to normalize()) before calling this method.
*/ 1 4 this 3 3822
1736 0 0 6 1618 3526 0 0 343 /**
* This, along with get_axis(), returns the rotation represented by the
* quaternion as an angle about an arbitrary axis. This returns the angle, in
* degrees counterclockwise about the axis.
*
* It is necessary to ensure the quaternion has been normalized (for instance,
* with a call to normalize()) before calling this method.
*/ 1 4 this 3 3822
1737 0 0 4 1619 3676 0 0 86 /**
* angle_rad is the angle about the axis in radians. axis must be normalized.
*/ 3 4 this 3 3821 9 angle_rad 1 3526 4 axis 1 3726
1738 0 0 4 1620 3676 0 0 86 /**
* angle_deg is the angle about the axis in degrees. axis must be normalized.
*/ 3 4 this 3 3821 9 angle_deg 1 3526 4 axis 1 3726
1739 0 0 7 1621 3725 2502 0 96 /**
* Returns the orientation represented by this quaternion, expressed as an up
* vector.
*/ 2 4 this 3 3822 2 cs 1 3545
1740 0 0 7 1622 3725 2502 0 98 /**
* Returns the orientation represented by this quaternion, expressed as a
* right vector.
*/ 2 4 this 3 3822 2 cs 1 3545
1741 0 0 7 1623 3725 2502 0 100 /**
* Returns the orientation represented by this quaternion, expressed as a
* forward vector.
*/ 2 4 this 3 3822 2 cs 1 3545
1742 0 0 6 1624 3526 0 0 10 /**
*
*/ 1 4 this 3 3822
1743 0 0 6 1625 3526 0 0 10 /**
*
*/ 1 4 this 3 3822
1744 0 0 6 1626 3526 0 0 10 /**
*
*/ 1 4 this 3 3822
1745 0 0 6 1627 3526 0 0 10 /**
*
*/ 1 4 this 3 3822
1746 0 0 4 1628 3676 0 0 10 /**
*
*/ 2 4 this 3 3821 1 r 1 3526
1747 0 0 4 1629 3676 0 0 10 /**
*
*/ 2 4 this 3 3821 1 i 1 3526
1748 0 0 4 1630 3676 0 0 10 /**
*
*/ 2 4 this 3 3821 1 j 1 3526
1749 0 0 4 1631 3676 0 0 10 /**
*
*/ 2 4 this 3 3821 1 k 1 3526
1750 0 0 6 1632 3681 0 0 10 /**
*
*/ 1 4 this 3 3821
1751 0 0 6 1633 3681 0 0 466 /**
* Computes the conjugate of the other quat, and stores the result in this
* quat. This is a fully general operation and makes no assumptions about the
* type of transform represented by the quat.
*
* The other quat must be a different object than this quat. However, if you
* need to get a conjugate of a quat in place, see conjugate_in_place.
*
* The return value is true if the quat was successfully inverted, false if
* there was a singularity.
*/ 2 4 this 3 3821 5 other 1 3822
1752 0 0 6 1634 3681 0 0 129 /**
* Sets this to be the conjugate of the current quat. Returns true if the
* successful, false if the quat was singular.
*/ 1 4 this 3 3821
1753 0 0 6 1635 3681 0 0 448 /**
* Computes the inverse of the other quat, and stores the result in this quat.
* This is a fully general operation and makes no assumptions about the type
* of transform represented by the quat.
*
* The other quat must be a different object than this quat. However, if you
* need to invert a quat in place, see invert_in_place.
*
* The return value is true if the quat was successfully inverted, false if
* there was a singularity.
*/ 2 4 this 3 3821 5 other 1 3822
1754 0 0 6 1636 3681 0 0 115 /**
* Inverts the current quat. Returns true if the inverse is successful, false
* if the quat was singular.
*/ 1 4 this 3 3821
1755 0 0 6 1637 3681 0 0 98 /**
* Returns true if this quaternion represents the identity transformation: no
* rotation.
*/ 1 4 this 3 3822
1756 0 0 6 1638 3681 0 0 110 /**
* Returns true if this quaternion represents the identity transformation
* within a given tolerance.
*/ 2 4 this 3 3822 9 tolerance 1 3526
1757 0 0 6 1639 3822 0 0 42 /**
* Returns an identity quaternion.
*/ 0
1758 0 0 7 1640 3691 0 0 0 0
1759 0 0 7 1643 3824 3496 0 10 /**
*
*/ 0
1760 0 0 7 1643 3824 3496 0 0 1 6 param0 0 3825
1761 0 0 7 1643 3824 3496 0 10 /**
*
*/ 1 4 copy 1 3750
1762 0 0 7 1643 3824 3496 0 10 /**
*
*/ 2 1 r 1 3529 4 copy 1 3720
1763 0 0 7 1643 3824 3496 0 10 /**
*
*/ 4 1 r 1 3529 1 i 1 3529 1 j 1 3529 1 k 1 3529
1764 0 0 7 1644 3824 3496 0 10 /**
*
*/ 1 1 v 1 3729
1765 0 0 7 1645 3824 3496 0 54 /**
* Returns the complex conjugate of this quat.
*/ 1 4 this 3 3825
1766 0 0 7 1646 3719 2396 0 60 /**
* Transforms a 3-d vector by the indicated rotation
*/ 2 4 this 3 3825 1 v 1 3720
1767 0 0 7 1646 3749 2788 0 60 /**
* Transforms a 4-d vector by the indicated rotation
*/ 2 4 this 3 3825 1 v 1 3750
1768 0 0 7 1647 3824 3496 0 45 /**
* actual multiply call (non virtual)
*/ 2 4 this 3 3825 3 rhs 1 3825
1769 0 0 7 1648 3824 3496 0 0 1 4 this 3 3825
1770 0 0 7 1649 3824 3496 0 0 2 4 this 3 3825 5 other 1 3825
1771 0 0 7 1650 3824 3496 0 0 2 4 this 3 3825 5 other 1 3825
1772 0 0 6 1651 3529 0 0 127 /**
* Returns the angle between the orientation represented by this quaternion
* and the other one, expressed in radians.
*/ 2 4 this 3 3825 5 other 1 3825
1773 0 0 6 1652 3529 0 0 127 /**
* Returns the angle between the orientation represented by this quaternion
* and the other one, expressed in degrees.
*/ 2 4 this 3 3825 5 other 1 3825
1774 0 0 7 1653 3800 3282 0 0 2 4 this 3 3824 6 param0 0 3801
1775 0 0 7 1653 3811 3380 0 0 2 4 this 3 3824 6 param0 0 3805
1776 0 0 7 1653 3824 3496 0 0 2 4 this 3 3825 6 param0 0 3825
1777 0 0 7 1653 3824 3496 0 0 2 4 this 3 3825 6 scalar 1 3529
1778 0 0 7 1654 3824 3496 0 0 2 4 this 3 3825 6 scalar 1 3529
1779 0 0 6 1655 3824 0 0 10 /**
*
*/ 2 4 this 3 3824 6 param0 0 3825
1780 0 0 7 1656 3824 3496 0 97 /**
* Returns a new quaternion that represents this quaternion raised to the
* given power.
*/ 2 4 this 3 3825 6 param0 0 3529
1781 0 0 6 1657 3681 0 0 120 /**
* Returns true if two quaternions are memberwise equal within a default
* tolerance based on the numeric type.
*/ 2 4 this 3 3825 5 other 1 3825
1782 0 0 6 1657 3681 0 0 96 /**
* Returns true if two quaternions are memberwise equal within a specified
* tolerance.
*/ 3 4 this 3 3825 5 other 1 3825 9 threshold 1 3529
1783 0 0 6 1658 3681 0 0 127 /**
* Returns true if two quaternions represent the same rotation within a
* default tolerance based on the numeric type.
*/ 2 4 this 3 3825 5 other 1 3825
1784 0 0 6 1659 3681 0 0 103 /**
* Returns true if two quaternions represent the same rotation within a
* specified tolerance.
*/ 3 4 this 3 3825 5 other 1 3825 9 threshold 1 3529
1785 0 0 4 1660 3676 0 0 10 /**
*
*/ 2 4 this 3 3825 6 param0 0 3684
1786 0 0 4 1661 3676 0 0 43 /**
* Based on the quat lib from VRPN.
*/ 2 4 this 3 3825 1 m 1 3800
1787 0 0 4 1661 3676 0 0 43 /**
* Based on the quat lib from VRPN.
*/ 2 4 this 3 3825 1 m 1 3811
1788 0 0 4 1662 3676 0 0 226 /**
* Sets the quaternion according to the rotation represented by the matrix.
* Originally we tried an algorithm presented by Do-While Jones, but that
* turned out to be broken. This is based on the quat lib from UNC.
*/ 2 4 this 3 3824 1 m 1 3801
1789 0 0 4 1662 3676 0 0 10 /**
*
*/ 2 4 this 3 3824 1 m 1 3805
1790 0 0 4 1663 3676 0 0 132 /**
* Sets the quaternion as the unit quaternion that is equivalent to these
* Euler angles. (from Real-time Rendering, p.49)
*/ 3 4 this 3 3824 3 hpr 1 3720 2 cs 1 3545
1791 0 0 7 1664 3719 2396 0 73 /**
* Extracts the equivalent Euler angles from the unit quaternion.
*/ 2 4 this 3 3825 2 cs 1 3545
1792 0 0 7 1665 3728 2536 0 180 /**
* This, along with get_angle(), returns the rotation represented by the
* quaternion as an angle about an arbitrary axis. This returns the axis; it
* is not normalized.
*/ 1 4 this 3 3825
1793 0 0 7 1666 3728 2536 0 169 /**
* This, along with get_angle(), returns the rotation represented by the
* quaternion as an angle about an arbitrary axis. This returns the
* normalized axis.
*/ 1 4 this 3 3825
1794 0 0 6 1667 3529 0 0 343 /**
* This, along with get_axis(), returns the rotation represented by the
* quaternion as an angle about an arbitrary axis. This returns the angle, in
* radians counterclockwise about the axis.
*
* It is necessary to ensure the quaternion has been normalized (for instance,
* with a call to normalize()) before calling this method.
*/ 1 4 this 3 3825
1795 0 0 6 1668 3529 0 0 343 /**
* This, along with get_axis(), returns the rotation represented by the
* quaternion as an angle about an arbitrary axis. This returns the angle, in
* degrees counterclockwise about the axis.
*
* It is necessary to ensure the quaternion has been normalized (for instance,
* with a call to normalize()) before calling this method.
*/ 1 4 this 3 3825
1796 0 0 4 1669 3676 0 0 86 /**
* angle_rad is the angle about the axis in radians. axis must be normalized.
*/ 3 4 this 3 3824 9 angle_rad 1 3529 4 axis 1 3729
1797 0 0 4 1670 3676 0 0 86 /**
* angle_deg is the angle about the axis in degrees. axis must be normalized.
*/ 3 4 this 3 3824 9 angle_deg 1 3529 4 axis 1 3729
1798 0 0 7 1671 3728 2536 0 96 /**
* Returns the orientation represented by this quaternion, expressed as an up
* vector.
*/ 2 4 this 3 3825 2 cs 1 3545
1799 0 0 7 1672 3728 2536 0 98 /**
* Returns the orientation represented by this quaternion, expressed as a
* right vector.
*/ 2 4 this 3 3825 2 cs 1 3545
1800 0 0 7 1673 3728 2536 0 100 /**
* Returns the orientation represented by this quaternion, expressed as a
* forward vector.
*/ 2 4 this 3 3825 2 cs 1 3545
1801 0 0 6 1674 3529 0 0 10 /**
*
*/ 1 4 this 3 3825
1802 0 0 6 1675 3529 0 0 10 /**
*
*/ 1 4 this 3 3825
1803 0 0 6 1676 3529 0 0 10 /**
*
*/ 1 4 this 3 3825
1804 0 0 6 1677 3529 0 0 10 /**
*
*/ 1 4 this 3 3825
1805 0 0 4 1678 3676 0 0 10 /**
*
*/ 2 4 this 3 3824 1 r 1 3529
1806 0 0 4 1679 3676 0 0 10 /**
*
*/ 2 4 this 3 3824 1 i 1 3529
1807 0 0 4 1680 3676 0 0 10 /**
*
*/ 2 4 this 3 3824 1 j 1 3529
1808 0 0 4 1681 3676 0 0 10 /**
*
*/ 2 4 this 3 3824 1 k 1 3529
1809 0 0 6 1682 3681 0 0 10 /**
*
*/ 1 4 this 3 3824
1810 0 0 6 1683 3681 0 0 466 /**
* Computes the conjugate of the other quat, and stores the result in this
* quat. This is a fully general operation and makes no assumptions about the
* type of transform represented by the quat.
*
* The other quat must be a different object than this quat. However, if you
* need to get a conjugate of a quat in place, see conjugate_in_place.
*
* The return value is true if the quat was successfully inverted, false if
* there was a singularity.
*/ 2 4 this 3 3824 5 other 1 3825
1811 0 0 6 1684 3681 0 0 129 /**
* Sets this to be the conjugate of the current quat. Returns true if the
* successful, false if the quat was singular.
*/ 1 4 this 3 3824
1812 0 0 6 1685 3681 0 0 448 /**
* Computes the inverse of the other quat, and stores the result in this quat.
* This is a fully general operation and makes no assumptions about the type
* of transform represented by the quat.
*
* The other quat must be a different object than this quat. However, if you
* need to invert a quat in place, see invert_in_place.
*
* The return value is true if the quat was successfully inverted, false if
* there was a singularity.
*/ 2 4 this 3 3824 5 other 1 3825
1813 0 0 6 1686 3681 0 0 115 /**
* Inverts the current quat. Returns true if the inverse is successful, false
* if the quat was singular.
*/ 1 4 this 3 3824
1814 0 0 6 1687 3681 0 0 98 /**
* Returns true if this quaternion represents the identity transformation: no
* rotation.
*/ 1 4 this 3 3825
1815 0 0 6 1688 3681 0 0 110 /**
* Returns true if this quaternion represents the identity transformation
* within a given tolerance.
*/ 2 4 this 3 3825 9 tolerance 1 3529
1816 0 0 6 1689 3825 0 0 42 /**
* Returns an identity quaternion.
*/ 0
1817 0 0 7 1690 3691 0 0 0 0
1818 0 0 7 1693 3827 3501 0 10 /**
*
*/ 0
1819 0 0 7 1693 3827 3501 0 19 /**
* lmatrix3
*/ 1 1 m 1 3780
1820 0 0 7 1693 3827 3501 0 19 /**
* lmatrix4
*/ 1 1 m 1 3784
1821 0 0 7 1693 3827 3501 0 10 /**
*
*/ 1 1 c 1 3822
1822 0 0 7 1693 3827 3501 0 0 1 6 param0 0 3828
1823 0 0 7 1693 3827 3501 0 10 /**
*
*/ 1 4 copy 1 3744
1824 0 0 7 1693 3827 3501 0 36 /**
* axis + angle (in degrees)
*/ 2 4 axis 1 3726 5 angle 1 3526
1825 0 0 7 1693 3827 3501 0 57 /**
* Sets the rotation from the given Euler angles.
*/ 3 1 h 1 3526 1 p 1 3526 1 r 1 3526
1826 0 0 7 1693 3827 3501 0 10 /**
*
*/ 4 1 r 1 3526 1 i 1 3526 1 j 1 3526 1 k 1 3526
1827 0 0 7 1694 3821 3447 0 0 2 4 this 3 3828 5 other 1 3822
1828 0 0 7 1694 3827 3501 0 0 2 4 this 3 3828 5 other 1 3828
1829 0 0 7 1694 3827 3501 0 0 2 4 this 3 3828 6 scalar 1 3526
1830 0 0 7 1695 3827 3501 0 0 2 4 this 3 3828 6 scalar 1 3526
1831 0 0 7 1696 3691 0 0 0 0
1832 0 0 7 1699 3830 3506 0 10 /**
*
*/ 0
1833 0 0 7 1699 3830 3506 0 19 /**
* lmatrix3
*/ 1 1 m 1 3801
1834 0 0 7 1699 3830 3506 0 19 /**
* lmatrix4
*/ 1 1 m 1 3805
1835 0 0 7 1699 3830 3506 0 10 /**
*
*/ 1 1 c 1 3825
1836 0 0 7 1699 3830 3506 0 0 1 6 param0 0 3831
1837 0 0 7 1699 3830 3506 0 10 /**
*
*/ 1 4 copy 1 3750
1838 0 0 7 1699 3830 3506 0 36 /**
* axis + angle (in degrees)
*/ 2 4 axis 1 3729 5 angle 1 3529
1839 0 0 7 1699 3830 3506 0 57 /**
* Sets the rotation from the given Euler angles.
*/ 3 1 h 1 3529 1 p 1 3529 1 r 1 3529
1840 0 0 7 1699 3830 3506 0 10 /**
*
*/ 4 1 r 1 3529 1 i 1 3529 1 j 1 3529 1 k 1 3529
1841 0 0 7 1700 3824 3496 0 0 2 4 this 3 3831 5 other 1 3825
1842 0 0 7 1700 3830 3506 0 0 2 4 this 3 3831 5 other 1 3831
1843 0 0 7 1700 3830 3506 0 0 2 4 this 3 3831 6 scalar 1 3529
1844 0 0 7 1701 3830 3506 0 0 2 4 this 3 3831 6 scalar 1 3529
1845 0 0 7 1702 3691 0 0 0 0
1846 0 0 7 1705 3833 3510 0 10 /**
*
*/ 0
1847 0 0 7 1705 3833 3510 0 18 /**
* matrix3
*/ 1 1 m 1 3780
1848 0 0 7 1705 3833 3510 0 18 /**
* matrix4
*/ 1 1 m 1 3784
1849 0 0 7 1705 3833 3510 0 0 1 6 param0 0 3834
1850 0 0 7 1705 3833 3510 0 10 /**
*
*/ 1 1 c 1 3822
1851 0 0 7 1705 3833 3510 0 25 /**
* vector + twist
*/ 2 8 point_at 1 3726 5 twist 1 3526
1852 0 0 7 1705 3833 3510 0 10 /**
*
*/ 4 1 r 1 3526 1 i 1 3526 1 j 1 3526 1 k 1 3526
1853 0 0 7 1706 3833 3510 0 0 2 4 this 3 3834 5 other 1 3822
1854 0 0 7 1706 3833 3510 0 0 2 4 this 3 3834 5 other 1 3828
1855 0 0 7 1707 3691 0 0 0 0
1856 0 0 7 1710 3836 3514 0 10 /**
*
*/ 0
1857 0 0 7 1710 3836 3514 0 18 /**
* matrix3
*/ 1 1 m 1 3801
1858 0 0 7 1710 3836 3514 0 18 /**
* matrix4
*/ 1 1 m 1 3805
1859 0 0 7 1710 3836 3514 0 0 1 6 param0 0 3837
1860 0 0 7 1710 3836 3514 0 10 /**
*
*/ 1 1 c 1 3825
1861 0 0 7 1710 3836 3514 0 25 /**
* vector + twist
*/ 2 8 point_at 1 3729 5 twist 1 3529
1862 0 0 7 1710 3836 3514 0 10 /**
*
*/ 4 1 r 1 3529 1 i 1 3529 1 j 1 3529 1 k 1 3529
1863 0 0 7 1711 3836 3514 0 0 2 4 this 3 3837 5 other 1 3825
1864 0 0 7 1711 3836 3514 0 0 2 4 this 3 3837 5 other 1 3831
1865 0 0 7 1712 3691 0 0 0 0
1866 0 0 7 1786 3841 3522 0 0 1 6 param0 0 3839
1867 0 0 7 1786 3841 3522 0 10 /**
*
*/ 1 4 name 1 3680
1868 0 0 7 1786 3841 3522 0 10 /**
*
*/ 4 4 name 1 3680 13 default_value 1 3842 11 description 1 3680 5 flags 1 3532
1869 0 0 7 1786 3841 3522 0 10 /**
*
*/ 4 4 name 1 3680 13 default_value 1 3680 11 description 1 3680 5 flags 1 3532
1870 0 0 6 1787 3841 0 0 0 2 4 this 3 3841 5 value 1 3842
1871 0 0 6 1789 3844 0 0 0 2 4 this 3 3839 1 n 1 3532
1872 0 0 4 1790 3676 0 0 48 /**
* Reassigns the variable's local value.
*/ 2 4 this 3 3841 5 value 1 3842
1873 0 0 6 1791 3842 0 0 40 /**
* Returns the variable's value.
*/ 1 4 this 3 3839
1874 0 0 7 1792 3845 0 0 48 /**
* Returns the variable's default value.
*/ 1 4 this 3 3839
1875 0 0 6 1788 3842 0 0 0 1 4 this 3 3839
1876 0 0 6 4 3529 0 0 0 1 1 f 1 3529
1877 0 0 6 4 3526 0 0 0 1 1 f 1 3526
1878 0 0 6 5 3529 0 0 0 1 1 f 1 3529
1879 0 0 6 5 3526 0 0 0 1 1 f 1 3526
1880 0 0 6 547 3545 0 0 0 0
1881 0 0 6 548 3545 0 0 0 1 3 str 1 3680
1882 0 0 6 549 3680 0 0 0 1 2 cs 1 3545
1883 0 0 6 550 3681 0 0 0 1 2 cs 1 3545
1884 0 0 7 1246 3800 3282 0 0 1 1 a 1 3801
1885 0 0 7 1246 3779 3084 0 0 1 1 a 1 3780
1886 0 0 7 1246 3811 3380 0 0 1 1 a 1 3805
1887 0 0 7 1246 3790 3184 0 0 1 1 a 1 3784
1888 0 0 7 1247 3800 3282 0 0 1 1 a 1 3801
1889 0 0 7 1247 3779 3084 0 0 1 1 a 1 3780
1890 0 0 7 1247 3811 3380 0 0 1 1 a 1 3805
1891 0 0 7 1247 3790 3184 0 0 1 1 a 1 3784
1892 0 0 7 1247 3824 3496 0 0 1 1 a 1 3825
1893 0 0 7 1247 3821 3447 0 0 1 1 a 1 3822
1894 0 0 7 1584 3800 3282 0 0 2 1 m 1 3801 1 q 1 3825
1895 0 0 7 1584 3779 3084 0 0 2 1 m 1 3780 1 q 1 3822
1896 0 0 7 1584 3811 3380 0 0 2 1 m 1 3805 1 q 1 3825
1897 0 0 7 1584 3790 3184 0 0 2 1 m 1 3784 1 q 1 3822
1898 0 0 7 1584 3710 2236 0 0 2 1 v 1 3711 1 m 1 3801
1899 0 0 7 1584 3707 2220 0 0 2 1 v 1 3708 1 m 1 3780
1900 0 0 7 1584 3737 2608 0 0 2 1 v 1 3738 1 m 1 3801
1901 0 0 7 1584 3737 2608 0 0 2 1 v 1 3738 1 m 1 3805
1902 0 0 7 1584 3734 2585 0 0 2 1 v 1 3735 1 m 1 3780
1903 0 0 7 1584 3734 2585 0 0 2 1 v 1 3735 1 m 1 3784
1904 0 0 7 1584 3773 2978 0 0 2 1 v 1 3774 1 m 1 3805
1905 0 0 7 1584 3770 2958 0 0 2 1 v 1 3771 1 m 1 3784
1906 0 0 7 1584 3719 2396 0 0 2 1 v 1 3720 1 m 1 3801
1907 0 0 7 1584 3716 2323 0 0 2 1 v 1 3717 1 m 1 3780
1908 0 0 7 1584 3749 2788 0 0 2 1 v 1 3750 1 m 1 3805
1909 0 0 7 1584 3743 2703 0 0 2 1 v 1 3744 1 m 1 3784
1910 0 0 7 1584 3701 2190 0 0 2 1 v 1 3702 1 m 1 3801
1911 0 0 7 1584 3698 2172 0 0 2 1 v 1 3699 1 m 1 3780
1912 0 0 7 1584 3728 2536 0 0 2 1 v 1 3729 1 m 1 3801
1913 0 0 7 1584 3728 2536 0 0 2 1 v 1 3729 1 m 1 3805
1914 0 0 7 1584 3725 2502 0 0 2 1 v 1 3726 1 m 1 3780
1915 0 0 7 1584 3725 2502 0 0 2 1 v 1 3726 1 m 1 3784
1916 0 0 7 1584 3764 2920 0 0 2 1 v 1 3765 1 m 1 3805
1917 0 0 7 1584 3761 2900 0 0 2 1 v 1 3762 1 m 1 3784
1918 0 0 4 1585 3676 0 0 0 2 1 v 1 3710 1 m 1 3801
1919 0 0 4 1585 3676 0 0 0 2 1 v 1 3707 1 m 1 3780
1920 0 0 4 1585 3676 0 0 0 2 1 v 1 3737 1 m 1 3801
1921 0 0 4 1585 3676 0 0 0 2 1 v 1 3737 1 m 1 3805
1922 0 0 4 1585 3676 0 0 0 2 1 v 1 3734 1 m 1 3780
1923 0 0 4 1585 3676 0 0 0 2 1 v 1 3734 1 m 1 3784
1924 0 0 4 1585 3676 0 0 0 2 1 v 1 3719 1 m 1 3801
1925 0 0 4 1585 3676 0 0 0 2 1 v 1 3716 1 m 1 3780
1926 0 0 4 1585 3676 0 0 0 2 1 v 1 3749 1 m 1 3805
1927 0 0 4 1585 3676 0 0 0 2 1 v 1 3743 1 m 1 3784
1928 0 0 4 1585 3676 0 0 0 2 1 v 1 3701 1 m 1 3801
1929 0 0 4 1585 3676 0 0 0 2 1 v 1 3698 1 m 1 3780
1930 0 0 4 1585 3676 0 0 0 2 1 v 1 3728 1 m 1 3801
1931 0 0 4 1585 3676 0 0 0 2 1 v 1 3728 1 m 1 3805
1932 0 0 4 1585 3676 0 0 0 2 1 v 1 3725 1 m 1 3780
1933 0 0 4 1585 3676 0 0 0 2 1 v 1 3725 1 m 1 3784
1934 0 0 4 1586 3676 0 0 0 2 4 dest 1 3686 5 value 1 3801
1935 0 0 4 1586 3676 0 0 0 2 4 dest 1 3686 5 value 1 3780
1936 0 0 4 1586 3676 0 0 0 2 4 dest 1 3686 5 value 1 3805
1937 0 0 4 1586 3676 0 0 0 2 4 dest 1 3686 5 value 1 3784
1938 0 0 4 1587 3676 0 0 0 2 6 result 1 3800 6 source 1 3688
1939 0 0 4 1587 3676 0 0 0 2 6 result 1 3779 6 source 1 3688
1940 0 0 4 1587 3676 0 0 0 2 6 result 1 3811 6 source 1 3688
1941 0 0 4 1587 3676 0 0 0 2 6 result 1 3790 6 source 1 3688
1942 0 0 4 1588 3676 0 0 0 4 3 mat 1 3800 5 scale 1 3720 3 hpr 1 3720 2 cs 1 3545
1943 0 0 4 1588 3676 0 0 0 5 3 mat 1 3800 5 scale 1 3720 5 shear 1 3720 3 hpr 1 3720 2 cs 1 3545
1944 0 0 4 1588 3676 0 0 0 4 3 mat 1 3779 5 scale 1 3717 3 hpr 1 3717 2 cs 1 3545
1945 0 0 4 1588 3676 0 0 0 5 3 mat 1 3779 5 scale 1 3717 5 shear 1 3717 3 hpr 1 3717 2 cs 1 3545
1946 0 0 4 1588 3676 0 0 0 5 3 mat 1 3811 5 scale 1 3720 3 hpr 1 3720 9 translate 1 3720 2 cs 1 3545
1947 0 0 4 1588 3676 0 0 0 6 3 mat 1 3811 5 scale 1 3720 5 shear 1 3720 3 hpr 1 3720 9 translate 1 3720 2 cs 1 3545
1948 0 0 4 1588 3676 0 0 0 3 3 mat 1 3811 10 components 1 3846 2 cs 1 3545
1949 0 0 4 1588 3676 0 0 0 5 3 mat 1 3790 5 scale 1 3717 3 hpr 1 3717 9 translate 1 3717 2 cs 1 3545
1950 0 0 4 1588 3676 0 0 0 6 3 mat 1 3790 5 scale 1 3717 5 shear 1 3717 3 hpr 1 3717 9 translate 1 3717 2 cs 1 3545
1951 0 0 4 1588 3676 0 0 0 3 3 mat 1 3790 10 components 1 3848 2 cs 1 3545
1952 0 0 6 1589 3681 0 0 0 4 3 mat 1 3801 5 scale 1 3719 3 hpr 1 3719 2 cs 1 3545
1953 0 0 6 1589 3681 0 0 0 5 3 mat 1 3801 5 scale 1 3719 5 shear 1 3719 3 hpr 1 3719 2 cs 1 3545
1954 0 0 6 1589 3681 0 0 0 4 3 mat 1 3780 5 scale 1 3716 3 hpr 1 3716 2 cs 1 3545
1955 0 0 6 1589 3681 0 0 0 5 3 mat 1 3780 5 scale 1 3716 5 shear 1 3716 3 hpr 1 3716 2 cs 1 3545
1956 0 0 6 1589 3681 0 0 0 5 3 mat 1 3805 5 scale 1 3719 3 hpr 1 3719 9 translate 1 3719 2 cs 1 3545
1957 0 0 6 1589 3681 0 0 0 6 3 mat 1 3805 5 scale 1 3719 5 shear 1 3719 3 hpr 1 3719 9 translate 1 3719 2 cs 1 3545
1958 0 0 6 1589 3681 0 0 0 3 3 mat 1 3805 10 components 1 3850 2 CS 1 3545
1959 0 0 6 1589 3681 0 0 0 5 3 mat 1 3784 5 scale 1 3716 3 hpr 1 3716 9 translate 1 3716 2 cs 1 3545
1960 0 0 6 1589 3681 0 0 0 6 3 mat 1 3784 5 scale 1 3716 5 shear 1 3716 3 hpr 1 3716 9 translate 1 3716 2 cs 1 3545
1961 0 0 6 1589 3681 0 0 0 3 3 mat 1 3784 10 components 1 3851 2 CS 1 3545
1962 0 0 6 1590 3681 0 0 0 5 3 mat 1 3801 5 scale 1 3719 5 shear 1 3719 3 hpr 1 3719 2 cs 1 3545
1963 0 0 6 1590 3681 0 0 0 5 3 mat 1 3780 5 scale 1 3716 5 shear 1 3716 3 hpr 1 3716 2 cs 1 3545
1964 0 0 7 1591 3719 2396 0 0 1 7 old_hpr 1 3720
1965 0 0 7 1591 3716 2323 0 0 1 7 old_hpr 1 3717
329
3523 11 MathNumbers 0 141313 11 MathNumbers 11 MathNumbers 0 0 0 1 1966 1967 0 0 0 0 0 0 0 0
3524 10 LVecBase2f 0 141313 10 LVecBase2f 10 LVecBase2f 0 0 0 1 1970 2032 2 3852 3853 61 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 2031 0 0 0 0 1 3525 75
/**
* This is the base class for all two-component vectors and points.
*/
3525 0 0 794624 12 LVecBase2f:: 0 3524 0 0 0 0 0 0 0 0 0 2 14 num_components 26 LVecBase2f::num_components 0
2 6 is_int 18 LVecBase2f::is_int 0
0 0 0
3526 5 float 0 8194 5 float 5 float 0 2 0 0 0 0 0 0 0 0 0 0 0
3527 10 LVecBase2d 0 141313 10 LVecBase2d 10 LVecBase2d 0 0 0 1 2033 2095 2 3854 3855 61 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 2044 2045 2046 2047 2048 2049 2050 2051 2052 2053 2054 2055 2056 2057 2058 2059 2060 2061 2062 2063 2064 2065 2066 2067 2068 2069 2070 2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088 2089 2090 2091 2092 2093 2094 0 0 0 0 1 3528 75
/**
* This is the base class for all two-component vectors and points.
*/
3528 0 0 794624 12 LVecBase2d:: 0 3527 0 0 0 0 0 0 0 0 0 2 14 num_components 26 LVecBase2d::num_components 0
2 6 is_int 18 LVecBase2d::is_int 0
0 0 0
3529 6 double 0 8194 6 double 6 double 0 3 0 0 0 0 0 0 0 0 0 0 0
3530 10 LVecBase2i 0 141313 10 LVecBase2i 10 LVecBase2i 0 0 0 1 2096 2154 2 3856 3857 57 2097 2098 2099 2100 2101 2102 2103 2104 2105 2106 2107 2108 2109 2110 2111 2112 2113 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 2124 2125 2126 2127 2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138 2139 2140 2141 2142 2143 2144 2145 2146 2147 2148 2149 2150 2151 2152 2153 0 0 0 0 1 3531 75
/**
* This is the base class for all two-component vectors and points.
*/
3531 0 0 794624 12 LVecBase2i:: 0 3530 0 0 0 0 0 0 0 0 0 2 14 num_components 26 LVecBase2i::num_components 0
2 6 is_int 18 LVecBase2i::is_int 0
1 0 0
3532 3 int 0 8194 3 int 3 int 0 1 0 0 0 0 0 0 0 0 0 0 0
3533 9 LVector2f 0 141313 9 LVector2f 9 LVector2f 0 0 0 1 2155 2172 0 16 2156 2157 2158 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170 2171 0 0 1 0 3524 0 0 0 0 49
/**
* This is a two-component vector offset.
*/
3534 9 LVector2d 0 141313 9 LVector2d 9 LVector2d 0 0 0 1 2173 2190 0 16 2174 2175 2176 2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188 2189 0 0 1 0 3527 0 0 0 0 49
/**
* This is a two-component vector offset.
*/
3535 9 LVector2i 0 141313 9 LVector2i 9 LVector2i 0 0 0 1 2191 2204 0 12 2192 2193 2194 2195 2196 2197 2198 2199 2200 2201 2202 2203 0 0 1 0 3530 0 0 0 0 49
/**
* This is a two-component vector offset.
*/
3536 8 LPoint2f 0 141313 8 LPoint2f 8 LPoint2f 0 0 0 1 2205 2220 0 14 2206 2207 2208 2209 2210 2211 2212 2213 2214 2215 2216 2217 2218 2219 0 0 1 0 3524 0 0 0 0 50
/**
* This is a two-component point in space.
*/
3537 8 LPoint2d 0 141313 8 LPoint2d 8 LPoint2d 0 0 0 1 2221 2236 0 14 2222 2223 2224 2225 2226 2227 2228 2229 2230 2231 2232 2233 2234 2235 0 0 1 0 3527 0 0 0 0 50
/**
* This is a two-component point in space.
*/
3538 8 LPoint2i 0 141313 8 LPoint2i 8 LPoint2i 0 0 0 1 2237 2250 0 12 2238 2239 2240 2241 2242 2243 2244 2245 2246 2247 2248 2249 0 0 1 0 3530 0 0 0 0 50
/**
* This is a two-component point in space.
*/
3539 10 LVecBase3f 0 141313 10 LVecBase3f 10 LVecBase3f 0 0 0 1 2251 2323 6 3858 3859 3860 3861 3862 3863 71 2252 2253 2254 2255 2256 2257 2258 2259 2260 2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 2282 2283 2284 2285 2286 2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314 2315 2316 2317 2318 2319 2320 2321 2322 0 0 0 0 1 3540 77
/**
* This is the base class for all three-component vectors and points.
*/
3540 0 0 794624 12 LVecBase3f:: 0 3539 0 0 0 0 0 0 0 0 0 2 14 num_components 26 LVecBase3f::num_components 0
3 6 is_int 18 LVecBase3f::is_int 0
0 0 0
3541 10 LVecBase3d 0 141313 10 LVecBase3d 10 LVecBase3d 0 0 0 1 2324 2396 6 3864 3865 3866 3867 3868 3869 71 2325 2326 2327 2328 2329 2330 2331 2332 2333 2334 2335 2336 2337 2338 2339 2340 2341 2342 2343 2344 2345 2346 2347 2348 2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362 2363 2364 2365 2366 2367 2368 2369 2370 2371 2372 2373 2374 2375 2376 2377 2378 2379 2380 2381 2382 2383 2384 2385 2386 2387 2388 2389 2390 2391 2392 2393 2394 2395 0 0 0 0 1 3542 77
/**
* This is the base class for all three-component vectors and points.
*/
3542 0 0 794624 12 LVecBase3d:: 0 3541 0 0 0 0 0 0 0 0 0 2 14 num_components 26 LVecBase3d::num_components 0
3 6 is_int 18 LVecBase3d::is_int 0
0 0 0
3543 10 LVecBase3i 0 141313 10 LVecBase3i 10 LVecBase3i 0 0 0 1 2397 2464 6 3870 3871 3872 3873 3874 3875 66 2398 2399 2400 2401 2402 2403 2404 2405 2406 2407 2408 2409 2410 2411 2412 2413 2414 2415 2416 2417 2418 2419 2420 2421 2422 2423 2424 2425 2426 2427 2428 2429 2430 2431 2432 2433 2434 2435 2436 2437 2438 2439 2440 2441 2442 2443 2444 2445 2446 2447 2448 2449 2450 2451 2452 2453 2454 2455 2456 2457 2458 2459 2460 2461 2462 2463 0 0 0 0 1 3544 77
/**
* This is the base class for all three-component vectors and points.
*/
3544 0 0 794624 12 LVecBase3i:: 0 3543 0 0 0 0 0 0 0 0 0 2 14 num_components 26 LVecBase3i::num_components 0
3 6 is_int 18 LVecBase3i::is_int 0
1 0 0
3545 16 CoordinateSystem 0 532481 16 CoordinateSystem 16 CoordinateSystem 0 0 0 0 0 0 0 0 0 0 6 10 CS_default 10 CS_default 210
// The CS_default entry does not refer to a particular coordinate system,
// but rather to the value stored in default_coordinate_system, which in
// turn is loaded from the config variable "coordinate-system".
0 12 CS_zup_right 12 CS_zup_right 21
// Z-Up, Right-handed
1 12 CS_yup_right 12 CS_yup_right 21
// Y-Up, Right-handed
2 11 CS_zup_left 11 CS_zup_left 20
// Z-Up, Left-handed
3 11 CS_yup_left 11 CS_yup_left 20
// Y-Up, Left-handed
4 10 CS_invalid 10 CS_invalid 156
// CS_invalid is not a coordinate system at all. It can be used in user-
// input processing code to indicate a contradictory coordinate system
// request.
5 0 0
3546 9 LVector3f 0 141313 9 LVector3f 9 LVector3f 0 0 0 1 2469 2502 3 3876 3877 3878 32 2470 2471 2472 2473 2474 2475 2476 2477 2478 2479 2480 2481 2482 2483 2484 2485 2486 2487 2488 2489 2490 2491 2492 2493 2494 2495 2496 2497 2498 2499 2500 2501 0 0 1 0 3539 0 0 0 0 338
/**
* This is a three-component vector distance (as opposed to a three-component
* point, which represents a particular point in space). Some of the methods
* are slightly different between LPoint3 and LVector3; in particular,
* subtraction of two points yields a vector, while addition of a vector and a
* point yields a point.
*/
3547 9 LVector3d 0 141313 9 LVector3d 9 LVector3d 0 0 0 1 2503 2536 3 3879 3880 3881 32 2504 2505 2506 2507 2508 2509 2510 2511 2512 2513 2514 2515 2516 2517 2518 2519 2520 2521 2522 2523 2524 2525 2526 2527 2528 2529 2530 2531 2532 2533 2534 2535 0 0 1 0 3541 0 0 0 0 338
/**
* This is a three-component vector distance (as opposed to a three-component
* point, which represents a particular point in space). Some of the methods
* are slightly different between LPoint3 and LVector3; in particular,
* subtraction of two points yields a vector, while addition of a vector and a
* point yields a point.
*/
3548 9 LVector3i 0 141313 9 LVector3i 9 LVector3i 0 0 0 1 2537 2562 3 3882 3883 3884 24 2538 2539 2540 2541 2542 2543 2544 2545 2546 2547 2548 2549 2550 2551 2552 2553 2554 2555 2556 2557 2558 2559 2560 2561 0 0 1 0 3543 0 0 0 0 338
/**
* This is a three-component vector distance (as opposed to a three-component
* point, which represents a particular point in space). Some of the methods
* are slightly different between LPoint3 and LVector3; in particular,
* subtraction of two points yields a vector, while addition of a vector and a
* point yields a point.
*/
3549 8 LPoint3f 0 141313 8 LPoint3f 8 LPoint3f 0 0 0 1 2563 2585 3 3885 3886 3887 21 2564 2565 2566 2567 2568 2569 2570 2571 2572 2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 0 0 1 0 3539 0 0 0 0 337
/**
* This is a three-component point in space (as opposed to a three-component
* vector, which represents a direction and a distance). Some of the methods
* are slightly different between LPoint3 and LVector3; in particular,
* subtraction of two points yields a vector, while addition of a vector and a
* point yields a point.
*/
3550 8 LPoint3d 0 141313 8 LPoint3d 8 LPoint3d 0 0 0 1 2586 2608 3 3888 3889 3890 21 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 0 0 1 0 3541 0 0 0 0 337
/**
* This is a three-component point in space (as opposed to a three-component
* vector, which represents a direction and a distance). Some of the methods
* are slightly different between LPoint3 and LVector3; in particular,
* subtraction of two points yields a vector, while addition of a vector and a
* point yields a point.
*/
3551 8 LPoint3i 0 141313 8 LPoint3i 8 LPoint3i 0 0 0 1 2609 2629 3 3891 3892 3893 19 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 0 0 1 0 3543 0 0 0 0 337
/**
* This is a three-component point in space (as opposed to a three-component
* vector, which represents a direction and a distance). Some of the methods
* are slightly different between LPoint3 and LVector3; in particular,
* subtraction of two points yields a vector, while addition of a vector and a
* point yields a point.
*/
3552 10 LVecBase4f 0 141313 10 LVecBase4f 10 LVecBase4f 0 0 0 1 2630 2703 5 3894 3895 3896 3897 3898 72 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 0 0 0 0 1 3553 77
/**
* This is the base class for all three-component vectors and points.
*/
3553 0 0 794624 12 LVecBase4f:: 0 3552 0 0 0 0 0 0 0 0 0 2 14 num_components 26 LVecBase4f::num_components 0
4 6 is_int 18 LVecBase4f::is_int 0
0 0 0
3554 19 UnalignedLVecBase4f 0 141313 19 UnalignedLVecBase4f 19 UnalignedLVecBase4f 0 0 0 1 2704 2714 0 9 2705 2706 2707 2708 2709 2710 2711 2712 2713 0 0 0 0 1 3555 391
/**
* This is an "unaligned" LVecBase4. It has no functionality other than to
* store numbers, and it will pack them in as tightly as possible, avoiding
* any SSE2 alignment requirements shared by the primary LVecBase4 class.
*
* Use it only when you need to pack numbers tightly without respect to
* alignment, and then copy it to a proper LVecBase4 to get actual use from
* it.
*/
3555 0 0 794624 21 UnalignedLVecBase4f:: 0 3554 0 0 0 0 0 0 0 0 0 2 14 num_components 35 UnalignedLVecBase4f::num_components 0
4 6 is_int 27 UnalignedLVecBase4f::is_int 0
0 0 0
3556 10 LVecBase4d 0 141313 10 LVecBase4d 10 LVecBase4d 0 0 0 1 2715 2788 5 3899 3900 3901 3902 3903 72 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745 2746 2747 2748 2749 2750 2751 2752 2753 2754 2755 2756 2757 2758 2759 2760 2761 2762 2763 2764 2765 2766 2767 2768 2769 2770 2771 2772 2773 2774 2775 2776 2777 2778 2779 2780 2781 2782 2783 2784 2785 2786 2787 0 0 0 0 1 3557 77
/**
* This is the base class for all three-component vectors and points.
*/
3557 0 0 794624 12 LVecBase4d:: 0 3556 0 0 0 0 0 0 0 0 0 2 14 num_components 26 LVecBase4d::num_components 0
4 6 is_int 18 LVecBase4d::is_int 0
0 0 0
3558 19 UnalignedLVecBase4d 0 141313 19 UnalignedLVecBase4d 19 UnalignedLVecBase4d 0 0 0 1 2789 2799 0 9 2790 2791 2792 2793 2794 2795 2796 2797 2798 0 0 0 0 1 3559 391
/**
* This is an "unaligned" LVecBase4. It has no functionality other than to
* store numbers, and it will pack them in as tightly as possible, avoiding
* any SSE2 alignment requirements shared by the primary LVecBase4 class.
*
* Use it only when you need to pack numbers tightly without respect to
* alignment, and then copy it to a proper LVecBase4 to get actual use from
* it.
*/
3559 0 0 794624 21 UnalignedLVecBase4d:: 0 3558 0 0 0 0 0 0 0 0 0 2 14 num_components 35 UnalignedLVecBase4d::num_components 0
4 6 is_int 27 UnalignedLVecBase4d::is_int 0
0 0 0
3560 10 LVecBase4i 0 141313 10 LVecBase4i 10 LVecBase4i 0 0 0 1 2800 2869 5 3904 3905 3906 3907 3908 68 2801 2802 2803 2804 2805 2806 2807 2808 2809 2810 2811 2812 2813 2814 2815 2816 2817 2818 2819 2820 2821 2822 2823 2824 2825 2826 2827 2828 2829 2830 2831 2832 2833 2834 2835 2836 2837 2838 2839 2840 2841 2842 2843 2844 2845 2846 2847 2848 2849 2850 2851 2852 2853 2854 2855 2856 2857 2858 2859 2860 2861 2862 2863 2864 2865 2866 2867 2868 0 0 0 0 1 3561 77
/**
* This is the base class for all three-component vectors and points.
*/
3561 0 0 794624 12 LVecBase4i:: 0 3560 0 0 0 0 0 0 0 0 0 2 14 num_components 26 LVecBase4i::num_components 0
4 6 is_int 18 LVecBase4i::is_int 0
1 0 0
3562 19 UnalignedLVecBase4i 0 141313 19 UnalignedLVecBase4i 19 UnalignedLVecBase4i 0 0 0 1 2870 2880 0 9 2871 2872 2873 2874 2875 2876 2877 2878 2879 0 0 0 0 1 3563 391
/**
* This is an "unaligned" LVecBase4. It has no functionality other than to
* store numbers, and it will pack them in as tightly as possible, avoiding
* any SSE2 alignment requirements shared by the primary LVecBase4 class.
*
* Use it only when you need to pack numbers tightly without respect to
* alignment, and then copy it to a proper LVecBase4 to get actual use from
* it.
*/
3563 0 0 794624 21 UnalignedLVecBase4i:: 0 3562 0 0 0 0 0 0 0 0 0 2 14 num_components 35 UnalignedLVecBase4i::num_components 0
4 6 is_int 27 UnalignedLVecBase4i::is_int 0
1 0 0
3564 9 LVector4f 0 141313 9 LVector4f 9 LVector4f 0 0 0 1 2881 2900 2 3909 3910 18 2882 2883 2884 2885 2886 2887 2888 2889 2890 2891 2892 2893 2894 2895 2896 2897 2898 2899 0 0 1 0 3552 0 0 0 0 52
/**
* This is a four-component vector distance.
*/
3565 9 LVector4d 0 141313 9 LVector4d 9 LVector4d 0 0 0 1 2901 2920 2 3911 3912 18 2902 2903 2904 2905 2906 2907 2908 2909 2910 2911 2912 2913 2914 2915 2916 2917 2918 2919 0 0 1 0 3556 0 0 0 0 52
/**
* This is a four-component vector distance.
*/
3566 9 LVector4i 0 141313 9 LVector4i 9 LVector4i 0 0 0 1 2921 2938 2 3913 3914 16 2922 2923 2924 2925 2926 2927 2928 2929 2930 2931 2932 2933 2934 2935 2936 2937 0 0 1 0 3560 0 0 0 0 52
/**
* This is a four-component vector distance.
*/
3567 8 LPoint4f 0 141313 8 LPoint4f 8 LPoint4f 0 0 0 1 2939 2958 2 3915 3916 18 2940 2941 2942 2943 2944 2945 2946 2947 2948 2949 2950 2951 2952 2953 2954 2955 2956 2957 0 0 1 0 3552 0 0 0 0 51
/**
* This is a four-component point in space.
*/
3568 8 LPoint4d 0 141313 8 LPoint4d 8 LPoint4d 0 0 0 1 2959 2978 2 3917 3918 18 2960 2961 2962 2963 2964 2965 2966 2967 2968 2969 2970 2971 2972 2973 2974 2975 2976 2977 0 0 1 0 3556 0 0 0 0 51
/**
* This is a four-component point in space.
*/
3569 8 LPoint4i 0 141313 8 LPoint4i 8 LPoint4i 0 0 0 1 2979 2996 2 3919 3920 16 2980 2981 2982 2983 2984 2985 2986 2987 2988 2989 2990 2991 2992 2993 2994 2995 0 0 1 0 3560 0 0 0 0 51
/**
* This is a four-component point in space.
*/
3570 9 LMatrix3f 0 141313 9 LMatrix3f 9 LMatrix3f 0 0 0 1 3007 3084 2 3921 3922 74 3008 3009 3010 3011 3012 3013 3014 3015 3016 3017 3018 3019 3020 3023 3024 3025 3026 3027 3028 3029 3030 3031 3032 3033 3034 3035 3036 3037 3038 3039 3040 3041 3042 3043 3044 3045 3046 3047 3048 3049 3050 3051 3052 3053 3054 3055 3056 3057 3058 3059 3060 3061 3062 3063 3064 3065 3066 3067 3068 3069 3070 3071 3072 3073 3074 3075 3076 3077 3078 3079 3080 3081 3082 3083 4 3929 3930 3931 3932 0 0 0 3 3571 3572 3573 231
/**
* This is a 3-by-3 transform matrix. It typically will represent either a
* rotation-and-scale (no translation) matrix in 3-d, or a full affine matrix
* (rotation, scale, translation) in 2-d, e.g. for a texture matrix.
*/
3571 0 0 794624 11 LMatrix3f:: 0 3570 0 0 0 0 0 0 0 0 0 2 14 num_components 25 LMatrix3f::num_components 0
9 6 is_int 17 LMatrix3f::is_int 0
0 0 0
3572 3 Row 0 403457 14 LMatrix3f::Row 14 LMatrix3f::Row 3570 0 0 1 3000 3001 0 2 2997 2998 0 1 2999 0 0 0 66
// These helper classes are used to support two-level operator [].
3573 4 CRow 0 403457 15 LMatrix3f::CRow 15 LMatrix3f::CRow 3570 0 0 1 3005 3006 0 2 3002 3003 0 1 3004 0 0 0 0
3574 9 LMatrix4f 0 141313 9 LMatrix4f 9 LMatrix4f 0 0 0 1 3097 3184 2 3923 3924 84 3098 3099 3100 3101 3102 3103 3104 3105 3106 3107 3108 3109 3110 3111 3112 3113 3116 3117 3118 3119 3120 3121 3122 3123 3124 3125 3126 3127 3128 3129 3130 3131 3132 3133 3134 3135 3136 3137 3138 3139 3140 3141 3142 3143 3144 3145 3146 3147 3148 3149 3150 3151 3152 3153 3154 3155 3156 3157 3158 3159 3160 3161 3162 3163 3164 3165 3166 3167 3168 3169 3170 3171 3172 3173 3174 3175 3176 3177 3178 3179 3180 3181 3182 3183 3 3933 3934 3935 0 0 0 3 3575 3576 3577 45
/**
* This is a 4-by-4 transform matrix.
*/
3575 0 0 794624 11 LMatrix4f:: 0 3574 0 0 0 0 0 0 0 0 0 2 14 num_components 25 LMatrix4f::num_components 0
16 6 is_int 17 LMatrix4f::is_int 0
0 0 0
3576 3 Row 0 403457 14 LMatrix4f::Row 14 LMatrix4f::Row 3574 0 0 1 3090 3091 0 2 3087 3088 0 1 3089 0 0 0 66
// These helper classes are used to support two-level operator [].
3577 4 CRow 0 403457 15 LMatrix4f::CRow 15 LMatrix4f::CRow 3574 0 0 1 3095 3096 0 2 3092 3093 0 1 3094 0 0 0 0
3578 18 UnalignedLMatrix4f 0 141313 18 UnalignedLMatrix4f 18 UnalignedLMatrix4f 0 0 0 1 3185 3194 0 8 3186 3187 3188 3189 3190 3191 3192 3193 0 0 0 0 1 3579 385
/**
* This is an "unaligned" LMatrix4. It has no functionality other than to
* store numbers, and it will pack them in as tightly as possible, avoiding
* any SSE2 alignment requirements shared by the primary LMatrix4 class.
*
* Use it only when you need to pack numbers tightly without respect to
* alignment, and then copy it to a proper LMatrix4 to get actual use from it.
*/
3579 0 0 794624 20 UnalignedLMatrix4f:: 0 3578 0 0 0 0 0 0 0 0 0 1 14 num_components 34 UnalignedLMatrix4f::num_components 0
16 0 0
3580 9 LMatrix3d 0 141313 9 LMatrix3d 9 LMatrix3d 0 0 0 1 3205 3282 2 3925 3926 74 3206 3207 3208 3209 3210 3211 3212 3213 3214 3215 3216 3217 3218 3221 3222 3223 3224 3225 3226 3227 3228 3229 3230 3231 3232 3233 3234 3235 3236 3237 3238 3239 3240 3241 3242 3243 3244 3245 3246 3247 3248 3249 3250 3251 3252 3253 3254 3255 3256 3257 3258 3259 3260 3261 3262 3263 3264 3265 3266 3267 3268 3269 3270 3271 3272 3273 3274 3275 3276 3277 3278 3279 3280 3281 4 3936 3937 3938 3939 0 0 0 3 3581 3582 3583 231
/**
* This is a 3-by-3 transform matrix. It typically will represent either a
* rotation-and-scale (no translation) matrix in 3-d, or a full affine matrix
* (rotation, scale, translation) in 2-d, e.g. for a texture matrix.
*/
3581 0 0 794624 11 LMatrix3d:: 0 3580 0 0 0 0 0 0 0 0 0 2 14 num_components 25 LMatrix3d::num_components 0
9 6 is_int 17 LMatrix3d::is_int 0
0 0 0
3582 3 Row 0 403457 14 LMatrix3d::Row 14 LMatrix3d::Row 3580 0 0 1 3198 3199 0 2 3195 3196 0 1 3197 0 0 0 66
// These helper classes are used to support two-level operator [].
3583 4 CRow 0 403457 15 LMatrix3d::CRow 15 LMatrix3d::CRow 3580 0 0 1 3203 3204 0 2 3200 3201 0 1 3202 0 0 0 0
3584 9 LMatrix4d 0 141313 9 LMatrix4d 9 LMatrix4d 0 0 0 1 3293 3380 2 3927 3928 84 3294 3295 3296 3297 3298 3299 3300 3301 3302 3303 3304 3305 3306 3307 3308 3309 3312 3313 3314 3315 3316 3317 3318 3319 3320 3321 3322 3323 3324 3325 3326 3327 3328 3329 3330 3331 3332 3333 3334 3335 3336 3337 3338 3339 3340 3341 3342 3343 3344 3345 3346 3347 3348 3349 3350 3351 3352 3353 3354 3355 3356 3357 3358 3359 3360 3361 3362 3363 3364 3365 3366 3367 3368 3369 3370 3371 3372 3373 3374 3375 3376 3377 3378 3379 3 3940 3941 3942 0 0 0 3 3585 3586 3587 45
/**
* This is a 4-by-4 transform matrix.
*/
3585 0 0 794624 11 LMatrix4d:: 0 3584 0 0 0 0 0 0 0 0 0 2 14 num_components 25 LMatrix4d::num_components 0
16 6 is_int 17 LMatrix4d::is_int 0
0 0 0
3586 3 Row 0 403457 14 LMatrix4d::Row 14 LMatrix4d::Row 3584 0 0 1 3286 3287 0 2 3283 3284 0 1 3285 0 0 0 66
// These helper classes are used to support two-level operator [].
3587 4 CRow 0 403457 15 LMatrix4d::CRow 15 LMatrix4d::CRow 3584 0 0 1 3291 3292 0 2 3288 3289 0 1 3290 0 0 0 0
3588 18 UnalignedLMatrix4d 0 141313 18 UnalignedLMatrix4d 18 UnalignedLMatrix4d 0 0 0 1 3381 3390 0 8 3382 3383 3384 3385 3386 3387 3388 3389 0 0 0 0 1 3589 385
/**
* This is an "unaligned" LMatrix4. It has no functionality other than to
* store numbers, and it will pack them in as tightly as possible, avoiding
* any SSE2 alignment requirements shared by the primary LMatrix4 class.
*
* Use it only when you need to pack numbers tightly without respect to
* alignment, and then copy it to a proper LMatrix4 to get actual use from it.
*/
3589 0 0 794624 20 UnalignedLMatrix4d:: 0 3588 0 0 0 0 0 0 0 0 0 1 14 num_components 34 UnalignedLMatrix4d::num_components 0
16 0 0
3590 12 LQuaternionf 0 141313 12 LQuaternionf 12 LQuaternionf 0 0 0 1 3399 3447 0 47 3400 3401 3402 3403 3404 3405 3406 3407 3408 3409 3410 3411 3412 3413 3414 3415 3416 3417 3418 3419 3420 3421 3422 3423 3424 3425 3426 3427 3428 3429 3430 3431 3432 3433 3434 3435 3436 3437 3438 3439 3440 3441 3442 3443 3444 3445 3446 0 0 1 0 3552 0 0 0 0 44
/**
* This is the base quaternion class
*/
3591 12 LQuaterniond 0 141313 12 LQuaterniond 12 LQuaterniond 0 0 0 1 3448 3496 0 47 3449 3450 3451 3452 3453 3454 3455 3456 3457 3458 3459 3460 3461 3462 3463 3464 3465 3466 3467 3468 3469 3470 3471 3472 3473 3474 3475 3476 3477 3478 3479 3480 3481 3482 3483 3484 3485 3486 3487 3488 3489 3490 3491 3492 3493 3494 3495 0 0 1 0 3556 0 0 0 0 44
/**
* This is the base quaternion class
*/
3592 10 LRotationf 0 141313 10 LRotationf 10 LRotationf 0 0 0 1 3497 3501 0 3 3498 3499 3500 0 0 1 0 3590 0 0 0 0 61
/**
* This is a unit quaternion representing a rotation.
*/
3593 10 LRotationd 0 141313 10 LRotationd 10 LRotationd 0 0 0 1 3502 3506 0 3 3503 3504 3505 0 0 1 0 3591 0 0 0 0 61
/**
* This is a unit quaternion representing a rotation.
*/
3594 13 LOrientationf 0 141313 13 LOrientationf 13 LOrientationf 0 0 0 1 3507 3510 0 2 3508 3509 0 0 1 0 3590 0 0 0 0 65
/**
* This is a unit quaternion representing an orientation.
*/
3595 13 LOrientationd 0 141313 13 LOrientationd 13 LOrientationd 0 0 0 1 3511 3514 0 2 3512 3513 0 0 1 0 3591 0 0 0 0 65
/**
* This is a unit quaternion representing an orientation.
*/
3596 8 LVertexf 0 2105345 8 LVertexf 8 LVertexf 0 0 3549 0 0 0 0 0 0 0 0 0 0
3597 8 LNormalf 0 2105345 8 LNormalf 8 LNormalf 0 0 3546 0 0 0 0 0 0 0 0 0 0
3598 10 LTexCoordf 0 2105345 10 LTexCoordf 10 LTexCoordf 0 0 3536 0 0 0 0 0 0 0 0 0 0
3599 11 LTexCoord3f 0 2105345 11 LTexCoord3f 11 LTexCoord3f 0 0 3549 0 0 0 0 0 0 0 0 0 0
3600 7 LColorf 0 2105345 7 LColorf 7 LColorf 0 0 3552 0 0 0 0 0 0 0 0 0 0
3601 10 LRGBColorf 0 2105345 10 LRGBColorf 10 LRGBColorf 0 0 3539 0 0 0 0 0 0 0 0 0 0
3602 8 LVertexd 0 2105345 8 LVertexd 8 LVertexd 0 0 3550 0 0 0 0 0 0 0 0 0 0
3603 8 LNormald 0 2105345 8 LNormald 8 LNormald 0 0 3547 0 0 0 0 0 0 0 0 0 0
3604 10 LTexCoordd 0 2105345 10 LTexCoordd 10 LTexCoordd 0 0 3537 0 0 0 0 0 0 0 0 0 0
3605 11 LTexCoord3d 0 2105345 11 LTexCoord3d 11 LTexCoord3d 0 0 3550 0 0 0 0 0 0 0 0 0 0
3606 7 LColord 0 2105345 7 LColord 7 LColord 0 0 3556 0 0 0 0 0 0 0 0 0 0
3607 10 LRGBColord 0 2105345 10 LRGBColord 10 LRGBColord 0 0 3541 0 0 0 0 0 0 0 0 0 0
3608 5 Mat4F 0 2105345 5 Mat4F 5 Mat4F 0 0 3574 0 0 0 0 0 0 0 0 0 0
3609 5 Mat3F 0 2105345 5 Mat3F 5 Mat3F 0 0 3570 0 0 0 0 0 0 0 0 0 0
3610 7 VBase4F 0 2105345 7 VBase4F 7 VBase4F 0 0 3552 0 0 0 0 0 0 0 0 0 0
3611 5 Vec4F 0 2105345 5 Vec4F 5 Vec4F 0 0 3564 0 0 0 0 0 0 0 0 0 0
3612 7 Point4F 0 2105345 7 Point4F 7 Point4F 0 0 3567 0 0 0 0 0 0 0 0 0 0
3613 7 VBase3F 0 2105345 7 VBase3F 7 VBase3F 0 0 3539 0 0 0 0 0 0 0 0 0 0
3614 5 Vec3F 0 2105345 5 Vec3F 5 Vec3F 0 0 3546 0 0 0 0 0 0 0 0 0 0
3615 7 Point3F 0 2105345 7 Point3F 7 Point3F 0 0 3549 0 0 0 0 0 0 0 0 0 0
3616 7 VBase2F 0 2105345 7 VBase2F 7 VBase2F 0 0 3524 0 0 0 0 0 0 0 0 0 0
3617 5 Vec2F 0 2105345 5 Vec2F 5 Vec2F 0 0 3533 0 0 0 0 0 0 0 0 0 0
3618 7 Point2F 0 2105345 7 Point2F 7 Point2F 0 0 3536 0 0 0 0 0 0 0 0 0 0
3619 5 QuatF 0 2105345 5 QuatF 5 QuatF 0 0 3590 0 0 0 0 0 0 0 0 0 0
3620 5 Mat4D 0 2105345 5 Mat4D 5 Mat4D 0 0 3584 0 0 0 0 0 0 0 0 0 0
3621 5 Mat3D 0 2105345 5 Mat3D 5 Mat3D 0 0 3580 0 0 0 0 0 0 0 0 0 0
3622 7 VBase4D 0 2105345 7 VBase4D 7 VBase4D 0 0 3556 0 0 0 0 0 0 0 0 0 0
3623 5 Vec4D 0 2105345 5 Vec4D 5 Vec4D 0 0 3565 0 0 0 0 0 0 0 0 0 0
3624 7 Point4D 0 2105345 7 Point4D 7 Point4D 0 0 3568 0 0 0 0 0 0 0 0 0 0
3625 7 VBase3D 0 2105345 7 VBase3D 7 VBase3D 0 0 3541 0 0 0 0 0 0 0 0 0 0
3626 5 Vec3D 0 2105345 5 Vec3D 5 Vec3D 0 0 3547 0 0 0 0 0 0 0 0 0 0
3627 7 Point3D 0 2105345 7 Point3D 7 Point3D 0 0 3550 0 0 0 0 0 0 0 0 0 0
3628 7 VBase2D 0 2105345 7 VBase2D 7 VBase2D 0 0 3527 0 0 0 0 0 0 0 0 0 0
3629 5 Vec2D 0 2105345 5 Vec2D 5 Vec2D 0 0 3534 0 0 0 0 0 0 0 0 0 0
3630 7 Point2D 0 2105345 7 Point2D 7 Point2D 0 0 3537 0 0 0 0 0 0 0 0 0 0
3631 5 QuatD 0 2105345 5 QuatD 5 QuatD 0 0 3591 0 0 0 0 0 0 0 0 0 0
3632 9 LVecBase2 0 2105345 9 LVecBase2 9 LVecBase2 0 0 3524 0 0 0 0 0 0 0 0 0 0
3633 7 LPoint2 0 2105345 7 LPoint2 7 LPoint2 0 0 3536 0 0 0 0 0 0 0 0 0 0
3634 8 LVector2 0 2105345 8 LVector2 8 LVector2 0 0 3533 0 0 0 0 0 0 0 0 0 0
3635 9 LVecBase3 0 2105345 9 LVecBase3 9 LVecBase3 0 0 3539 0 0 0 0 0 0 0 0 0 0
3636 7 LPoint3 0 2105345 7 LPoint3 7 LPoint3 0 0 3549 0 0 0 0 0 0 0 0 0 0
3637 8 LVector3 0 2105345 8 LVector3 8 LVector3 0 0 3546 0 0 0 0 0 0 0 0 0 0
3638 9 LVecBase4 0 2105345 9 LVecBase4 9 LVecBase4 0 0 3552 0 0 0 0 0 0 0 0 0 0
3639 7 LPoint4 0 2105345 7 LPoint4 7 LPoint4 0 0 3567 0 0 0 0 0 0 0 0 0 0
3640 8 LVector4 0 2105345 8 LVector4 8 LVector4 0 0 3564 0 0 0 0 0 0 0 0 0 0
3641 11 LQuaternion 0 2105345 11 LQuaternion 11 LQuaternion 0 0 3590 0 0 0 0 0 0 0 0 0 0
3642 9 LRotation 0 2105345 9 LRotation 9 LRotation 0 0 3592 0 0 0 0 0 0 0 0 0 0
3643 12 LOrientation 0 2105345 12 LOrientation 12 LOrientation 0 0 3594 0 0 0 0 0 0 0 0 0 0
3644 8 LMatrix3 0 2105345 8 LMatrix3 8 LMatrix3 0 0 3570 0 0 0 0 0 0 0 0 0 0
3645 8 LMatrix4 0 2105345 8 LMatrix4 8 LMatrix4 0 0 3574 0 0 0 0 0 0 0 0 0 0
3646 7 LVertex 0 2105345 7 LVertex 7 LVertex 0 0 3596 0 0 0 0 0 0 0 0 0 0
3647 7 LNormal 0 2105345 7 LNormal 7 LNormal 0 0 3597 0 0 0 0 0 0 0 0 0 0
3648 9 LTexCoord 0 2105345 9 LTexCoord 9 LTexCoord 0 0 3598 0 0 0 0 0 0 0 0 0 0
3649 10 LTexCoord3 0 2105345 10 LTexCoord3 10 LTexCoord3 0 0 3599 0 0 0 0 0 0 0 0 0 0
3650 6 LColor 0 2105345 6 LColor 6 LColor 0 0 3600 0 0 0 0 0 0 0 0 0 0
3651 9 LRGBColor 0 2105345 9 LRGBColor 9 LRGBColor 0 0 3601 0 0 0 0 0 0 0 0 0 0
3652 18 UnalignedLVecBase4 0 2105345 18 UnalignedLVecBase4 18 UnalignedLVecBase4 0 0 3554 0 0 0 0 0 0 0 0 0 0
3653 17 UnalignedLMatrix4 0 2105345 17 UnalignedLMatrix4 17 UnalignedLMatrix4 0 0 3578 0 0 0 0 0 0 0 0 0 0
3654 4 Mat4 0 2105345 4 Mat4 4 Mat4 0 0 3574 0 0 0 0 0 0 0 0 0 0
3655 4 Mat3 0 2105345 4 Mat3 4 Mat3 0 0 3570 0 0 0 0 0 0 0 0 0 0
3656 6 VBase4 0 2105345 6 VBase4 6 VBase4 0 0 3552 0 0 0 0 0 0 0 0 0 0
3657 4 Vec4 0 2105345 4 Vec4 4 Vec4 0 0 3564 0 0 0 0 0 0 0 0 0 0
3658 6 Point4 0 2105345 6 Point4 6 Point4 0 0 3567 0 0 0 0 0 0 0 0 0 0
3659 6 VBase3 0 2105345 6 VBase3 6 VBase3 0 0 3539 0 0 0 0 0 0 0 0 0 0
3660 4 Vec3 0 2105345 4 Vec3 4 Vec3 0 0 3546 0 0 0 0 0 0 0 0 0 0
3661 6 Point3 0 2105345 6 Point3 6 Point3 0 0 3549 0 0 0 0 0 0 0 0 0 0
3662 6 VBase2 0 2105345 6 VBase2 6 VBase2 0 0 3524 0 0 0 0 0 0 0 0 0 0
3663 4 Vec2 0 2105345 4 Vec2 4 Vec2 0 0 3533 0 0 0 0 0 0 0 0 0 0
3664 6 Point2 0 2105345 6 Point2 6 Point2 0 0 3536 0 0 0 0 0 0 0 0 0 0
3665 4 Quat 0 2105345 4 Quat 4 Quat 0 0 3590 0 0 0 0 0 0 0 0 0 0
3666 19 ConfigVariableColor 0 141313 19 ConfigVariableColor 19 ConfigVariableColor 0 0 0 1 3515 3522 0 5 3516 3518 3519 3520 3521 0 1 3517 1 0 3667 0 0 0 0 538
/**
* This is a convenience class to specialize ConfigVariable as a set of
* floating-point types representing a color value.
*
* It interprets the color differently depending on how many words were
* specified: if only one, it is interpreted as a shade of gray with alpha 1.
* If two values were specified, a grayscale and alpha pair. If three, a set
* of R, G, B values with alpha 1, and if four, a complete RGBA color.
*
* This isn't defined in dtool because it relies on the LColor class, which is
* defined in linmath.
*/
3667 14 ConfigVariable 0 2048 14 ConfigVariable 14 ConfigVariable 0 0 0 0 0 0 0 0 0 0 0 0 415
/**
* This is a generic, untyped ConfigVariable. It is also the base class for
* the typed ConfigVariables, and contains all of the code common to
* ConfigVariables of all types (except ConfigVariableList, which is a bit of
* a special case).
*
* Mostly, this class serves as a thin wrapper around ConfigVariableCore
* and/or ConfigDeclaration, more or less duplicating the interface presented
* there.
*/
3668 13 MathNumbers * 0 8576 13 MathNumbers * 13 MathNumbers * 0 0 3523 0 0 0 0 0 0 0 0 0 0
3669 19 MathNumbers const * 0 8576 19 MathNumbers const * 19 MathNumbers const * 0 0 3670 0 0 0 0 0 0 0 0 0 0
3670 17 MathNumbers const 0 8832 17 MathNumbers const 17 MathNumbers const 0 0 3523 0 0 0 0 0 0 0 0 0 0
3671 12 LVecBase2f * 0 8576 12 LVecBase2f * 12 LVecBase2f * 0 0 3524 0 0 0 0 0 0 0 0 0 0
3672 18 LVecBase2f const * 0 8576 18 LVecBase2f const * 18 LVecBase2f const * 0 0 3673 0 0 0 0 0 0 0 0 0 0
3673 16 LVecBase2f const 0 8832 16 LVecBase2f const 16 LVecBase2f const 0 0 3524 0 0 0 0 0 0 0 0 0 0
3674 6 size_t 0 2105344 11 std::size_t 11 std::size_t 0 0 3675 0 0 0 0 0 0 0 0 0 0
3675 22 unsigned long long int 0 8230 22 unsigned long long int 22 unsigned long long int 0 8 0 0 0 0 0 0 0 0 0 0 0
3676 4 void 0 8194 4 void 4 void 0 6 0 0 0 0 0 0 0 0 0 0 0
3677 10 PyObject * 0 8576 10 PyObject * 10 PyObject * 0 0 3678 0 0 0 0 0 0 0 0 0 0
3678 8 PyObject 0 2105344 8 PyObject 8 PyObject 0 0 3679 0 0 0 0 0 0 0 0 0 0
3679 7 _object 0 1024 7 _object 7 _object 0 0 0 0 0 0 0 0 0 0 0 0 0
3680 13 atomic string 0 2 13 atomic string 13 atomic string 0 7 0 0 0 0 0 0 0 0 0 0 0
3681 4 bool 0 8194 4 bool 4 bool 0 4 0 0 0 0 0 0 0 0 0 0 0
3682 23 ChecksumHashGenerator * 0 8576 23 ChecksumHashGenerator * 23 ChecksumHashGenerator * 0 0 3683 0 0 0 0 0 0 0 0 0 0
3683 21 ChecksumHashGenerator 0 2048 21 ChecksumHashGenerator 21 ChecksumHashGenerator 0 0 0 0 0 0 0 0 0 0 0 0 125
/**
* This is a specific kind of HashGenerator that simply adds up all of the
* ints. Nothing fancy, and pretty quick.
*/
3684 9 ostream * 0 8576 14 std::ostream * 14 std::ostream * 0 0 3685 0 0 0 0 0 0 0 0 0 0
3685 7 ostream 0 2048 12 std::ostream 12 std::ostream 0 0 0 0 0 0 0 0 0 0 0 0 0
3686 10 Datagram * 0 8576 10 Datagram * 10 Datagram * 0 0 3687 0 0 0 0 0 0 0 0 0 0
3687 8 Datagram 0 2048 8 Datagram 8 Datagram 0 0 0 0 0 0 0 0 0 0 0 0 565
/**
* An ordered list of data elements, formatted in memory for transmission over
* a socket or writing to a data file.
*
* Data elements should be added one at a time, in order, to the Datagram.
* The nature and contents of the data elements are totally up to the user.
* When a Datagram has been transmitted and received, its data elements may be
* extracted using a DatagramIterator; it is up to the caller to know the
* correct type of each data element in order.
*
* A Datagram is itself headerless; it is simply a collection of data
* elements.
*/
3688 18 DatagramIterator * 0 8576 18 DatagramIterator * 18 DatagramIterator * 0 0 3689 0 0 0 0 0 0 0 0 0 0
3689 16 DatagramIterator 0 2048 16 DatagramIterator 16 DatagramIterator 0 0 0 0 0 0 0 0 0 0 0 0 215
/**
* A class to retrieve the individual data elements previously stored in a
* Datagram. Elements may be retrieved one at a time; it is up to the caller
* to know the correct type and order of each element.
*/
3690 10 TypeHandle 0 16779264 10 TypeHandle 10 TypeHandle 0 0 0 0 0 0 0 0 0 0 0 0 732
/**
* TypeHandle is the identifier used to differentiate C++ class types. Any
* C++ classes that inherit from some base class, and must be differentiated
* at run time, should store a static TypeHandle object that can be queried
* through a static member function named get_class_type(). Most of the time,
* it is also desirable to inherit from TypedObject, which provides some
* virtual functions to return the TypeHandle for a particular instance.
*
* At its essence, a TypeHandle is simply a unique identifier that is assigned
* by the TypeRegistry. The TypeRegistry stores a tree of TypeHandles, so
* that ancestry of a particular type may be queried, and the type name may be
* retrieved for run-time display.
*/
3691 12 TypeHandle * 0 8576 12 TypeHandle * 12 TypeHandle * 0 0 3690 0 0 0 0 0 0 0 0 0 0
3692 12 LVecBase2d * 0 8576 12 LVecBase2d * 12 LVecBase2d * 0 0 3527 0 0 0 0 0 0 0 0 0 0
3693 18 LVecBase2d const * 0 8576 18 LVecBase2d const * 18 LVecBase2d const * 0 0 3694 0 0 0 0 0 0 0 0 0 0
3694 16 LVecBase2d const 0 8832 16 LVecBase2d const 16 LVecBase2d const 0 0 3527 0 0 0 0 0 0 0 0 0 0
3695 12 LVecBase2i * 0 8576 12 LVecBase2i * 12 LVecBase2i * 0 0 3530 0 0 0 0 0 0 0 0 0 0
3696 18 LVecBase2i const * 0 8576 18 LVecBase2i const * 18 LVecBase2i const * 0 0 3697 0 0 0 0 0 0 0 0 0 0
3697 16 LVecBase2i const 0 8832 16 LVecBase2i const 16 LVecBase2i const 0 0 3530 0 0 0 0 0 0 0 0 0 0
3698 11 LVector2f * 0 8576 11 LVector2f * 11 LVector2f * 0 0 3533 0 0 0 0 0 0 0 0 0 0
3699 17 LVector2f const * 0 8576 17 LVector2f const * 17 LVector2f const * 0 0 3700 0 0 0 0 0 0 0 0 0 0
3700 15 LVector2f const 0 8832 15 LVector2f const 15 LVector2f const 0 0 3533 0 0 0 0 0 0 0 0 0 0
3701 11 LVector2d * 0 8576 11 LVector2d * 11 LVector2d * 0 0 3534 0 0 0 0 0 0 0 0 0 0
3702 17 LVector2d const * 0 8576 17 LVector2d const * 17 LVector2d const * 0 0 3703 0 0 0 0 0 0 0 0 0 0
3703 15 LVector2d const 0 8832 15 LVector2d const 15 LVector2d const 0 0 3534 0 0 0 0 0 0 0 0 0 0
3704 11 LVector2i * 0 8576 11 LVector2i * 11 LVector2i * 0 0 3535 0 0 0 0 0 0 0 0 0 0
3705 17 LVector2i const * 0 8576 17 LVector2i const * 17 LVector2i const * 0 0 3706 0 0 0 0 0 0 0 0 0 0
3706 15 LVector2i const 0 8832 15 LVector2i const 15 LVector2i const 0 0 3535 0 0 0 0 0 0 0 0 0 0
3707 10 LPoint2f * 0 8576 10 LPoint2f * 10 LPoint2f * 0 0 3536 0 0 0 0 0 0 0 0 0 0
3708 16 LPoint2f const * 0 8576 16 LPoint2f const * 16 LPoint2f const * 0 0 3709 0 0 0 0 0 0 0 0 0 0
3709 14 LPoint2f const 0 8832 14 LPoint2f const 14 LPoint2f const 0 0 3536 0 0 0 0 0 0 0 0 0 0
3710 10 LPoint2d * 0 8576 10 LPoint2d * 10 LPoint2d * 0 0 3537 0 0 0 0 0 0 0 0 0 0
3711 16 LPoint2d const * 0 8576 16 LPoint2d const * 16 LPoint2d const * 0 0 3712 0 0 0 0 0 0 0 0 0 0
3712 14 LPoint2d const 0 8832 14 LPoint2d const 14 LPoint2d const 0 0 3537 0 0 0 0 0 0 0 0 0 0
3713 10 LPoint2i * 0 8576 10 LPoint2i * 10 LPoint2i * 0 0 3538 0 0 0 0 0 0 0 0 0 0
3714 16 LPoint2i const * 0 8576 16 LPoint2i const * 16 LPoint2i const * 0 0 3715 0 0 0 0 0 0 0 0 0 0
3715 14 LPoint2i const 0 8832 14 LPoint2i const 14 LPoint2i const 0 0 3538 0 0 0 0 0 0 0 0 0 0
3716 12 LVecBase3f * 0 8576 12 LVecBase3f * 12 LVecBase3f * 0 0 3539 0 0 0 0 0 0 0 0 0 0
3717 18 LVecBase3f const * 0 8576 18 LVecBase3f const * 18 LVecBase3f const * 0 0 3718 0 0 0 0 0 0 0 0 0 0
3718 16 LVecBase3f const 0 8832 16 LVecBase3f const 16 LVecBase3f const 0 0 3539 0 0 0 0 0 0 0 0 0 0
3719 12 LVecBase3d * 0 8576 12 LVecBase3d * 12 LVecBase3d * 0 0 3541 0 0 0 0 0 0 0 0 0 0
3720 18 LVecBase3d const * 0 8576 18 LVecBase3d const * 18 LVecBase3d const * 0 0 3721 0 0 0 0 0 0 0 0 0 0
3721 16 LVecBase3d const 0 8832 16 LVecBase3d const 16 LVecBase3d const 0 0 3541 0 0 0 0 0 0 0 0 0 0
3722 12 LVecBase3i * 0 8576 12 LVecBase3i * 12 LVecBase3i * 0 0 3543 0 0 0 0 0 0 0 0 0 0
3723 18 LVecBase3i const * 0 8576 18 LVecBase3i const * 18 LVecBase3i const * 0 0 3724 0 0 0 0 0 0 0 0 0 0
3724 16 LVecBase3i const 0 8832 16 LVecBase3i const 16 LVecBase3i const 0 0 3543 0 0 0 0 0 0 0 0 0 0
3725 11 LVector3f * 0 8576 11 LVector3f * 11 LVector3f * 0 0 3546 0 0 0 0 0 0 0 0 0 0
3726 17 LVector3f const * 0 8576 17 LVector3f const * 17 LVector3f const * 0 0 3727 0 0 0 0 0 0 0 0 0 0
3727 15 LVector3f const 0 8832 15 LVector3f const 15 LVector3f const 0 0 3546 0 0 0 0 0 0 0 0 0 0
3728 11 LVector3d * 0 8576 11 LVector3d * 11 LVector3d * 0 0 3547 0 0 0 0 0 0 0 0 0 0
3729 17 LVector3d const * 0 8576 17 LVector3d const * 17 LVector3d const * 0 0 3730 0 0 0 0 0 0 0 0 0 0
3730 15 LVector3d const 0 8832 15 LVector3d const 15 LVector3d const 0 0 3547 0 0 0 0 0 0 0 0 0 0
3731 11 LVector3i * 0 8576 11 LVector3i * 11 LVector3i * 0 0 3548 0 0 0 0 0 0 0 0 0 0
3732 17 LVector3i const * 0 8576 17 LVector3i const * 17 LVector3i const * 0 0 3733 0 0 0 0 0 0 0 0 0 0
3733 15 LVector3i const 0 8832 15 LVector3i const 15 LVector3i const 0 0 3548 0 0 0 0 0 0 0 0 0 0
3734 10 LPoint3f * 0 8576 10 LPoint3f * 10 LPoint3f * 0 0 3549 0 0 0 0 0 0 0 0 0 0
3735 16 LPoint3f const * 0 8576 16 LPoint3f const * 16 LPoint3f const * 0 0 3736 0 0 0 0 0 0 0 0 0 0
3736 14 LPoint3f const 0 8832 14 LPoint3f const 14 LPoint3f const 0 0 3549 0 0 0 0 0 0 0 0 0 0
3737 10 LPoint3d * 0 8576 10 LPoint3d * 10 LPoint3d * 0 0 3550 0 0 0 0 0 0 0 0 0 0
3738 16 LPoint3d const * 0 8576 16 LPoint3d const * 16 LPoint3d const * 0 0 3739 0 0 0 0 0 0 0 0 0 0
3739 14 LPoint3d const 0 8832 14 LPoint3d const 14 LPoint3d const 0 0 3550 0 0 0 0 0 0 0 0 0 0
3740 10 LPoint3i * 0 8576 10 LPoint3i * 10 LPoint3i * 0 0 3551 0 0 0 0 0 0 0 0 0 0
3741 16 LPoint3i const * 0 8576 16 LPoint3i const * 16 LPoint3i const * 0 0 3742 0 0 0 0 0 0 0 0 0 0
3742 14 LPoint3i const 0 8832 14 LPoint3i const 14 LPoint3i const 0 0 3551 0 0 0 0 0 0 0 0 0 0
3743 12 LVecBase4f * 0 8576 12 LVecBase4f * 12 LVecBase4f * 0 0 3552 0 0 0 0 0 0 0 0 0 0
3744 18 LVecBase4f const * 0 8576 18 LVecBase4f const * 18 LVecBase4f const * 0 0 3745 0 0 0 0 0 0 0 0 0 0
3745 16 LVecBase4f const 0 8832 16 LVecBase4f const 16 LVecBase4f const 0 0 3552 0 0 0 0 0 0 0 0 0 0
3746 27 UnalignedLVecBase4f const * 0 8576 27 UnalignedLVecBase4f const * 27 UnalignedLVecBase4f const * 0 0 3747 0 0 0 0 0 0 0 0 0 0
3747 25 UnalignedLVecBase4f const 0 8832 25 UnalignedLVecBase4f const 25 UnalignedLVecBase4f const 0 0 3554 0 0 0 0 0 0 0 0 0 0
3748 21 UnalignedLVecBase4f * 0 8576 21 UnalignedLVecBase4f * 21 UnalignedLVecBase4f * 0 0 3554 0 0 0 0 0 0 0 0 0 0
3749 12 LVecBase4d * 0 8576 12 LVecBase4d * 12 LVecBase4d * 0 0 3556 0 0 0 0 0 0 0 0 0 0
3750 18 LVecBase4d const * 0 8576 18 LVecBase4d const * 18 LVecBase4d const * 0 0 3751 0 0 0 0 0 0 0 0 0 0
3751 16 LVecBase4d const 0 8832 16 LVecBase4d const 16 LVecBase4d const 0 0 3556 0 0 0 0 0 0 0 0 0 0
3752 27 UnalignedLVecBase4d const * 0 8576 27 UnalignedLVecBase4d const * 27 UnalignedLVecBase4d const * 0 0 3753 0 0 0 0 0 0 0 0 0 0
3753 25 UnalignedLVecBase4d const 0 8832 25 UnalignedLVecBase4d const 25 UnalignedLVecBase4d const 0 0 3558 0 0 0 0 0 0 0 0 0 0
3754 21 UnalignedLVecBase4d * 0 8576 21 UnalignedLVecBase4d * 21 UnalignedLVecBase4d * 0 0 3558 0 0 0 0 0 0 0 0 0 0
3755 12 LVecBase4i * 0 8576 12 LVecBase4i * 12 LVecBase4i * 0 0 3560 0 0 0 0 0 0 0 0 0 0
3756 18 LVecBase4i const * 0 8576 18 LVecBase4i const * 18 LVecBase4i const * 0 0 3757 0 0 0 0 0 0 0 0 0 0
3757 16 LVecBase4i const 0 8832 16 LVecBase4i const 16 LVecBase4i const 0 0 3560 0 0 0 0 0 0 0 0 0 0
3758 27 UnalignedLVecBase4i const * 0 8576 27 UnalignedLVecBase4i const * 27 UnalignedLVecBase4i const * 0 0 3759 0 0 0 0 0 0 0 0 0 0
3759 25 UnalignedLVecBase4i const 0 8832 25 UnalignedLVecBase4i const 25 UnalignedLVecBase4i const 0 0 3562 0 0 0 0 0 0 0 0 0 0
3760 21 UnalignedLVecBase4i * 0 8576 21 UnalignedLVecBase4i * 21 UnalignedLVecBase4i * 0 0 3562 0 0 0 0 0 0 0 0 0 0
3761 11 LVector4f * 0 8576 11 LVector4f * 11 LVector4f * 0 0 3564 0 0 0 0 0 0 0 0 0 0
3762 17 LVector4f const * 0 8576 17 LVector4f const * 17 LVector4f const * 0 0 3763 0 0 0 0 0 0 0 0 0 0
3763 15 LVector4f const 0 8832 15 LVector4f const 15 LVector4f const 0 0 3564 0 0 0 0 0 0 0 0 0 0
3764 11 LVector4d * 0 8576 11 LVector4d * 11 LVector4d * 0 0 3565 0 0 0 0 0 0 0 0 0 0
3765 17 LVector4d const * 0 8576 17 LVector4d const * 17 LVector4d const * 0 0 3766 0 0 0 0 0 0 0 0 0 0
3766 15 LVector4d const 0 8832 15 LVector4d const 15 LVector4d const 0 0 3565 0 0 0 0 0 0 0 0 0 0
3767 11 LVector4i * 0 8576 11 LVector4i * 11 LVector4i * 0 0 3566 0 0 0 0 0 0 0 0 0 0
3768 17 LVector4i const * 0 8576 17 LVector4i const * 17 LVector4i const * 0 0 3769 0 0 0 0 0 0 0 0 0 0
3769 15 LVector4i const 0 8832 15 LVector4i const 15 LVector4i const 0 0 3566 0 0 0 0 0 0 0 0 0 0
3770 10 LPoint4f * 0 8576 10 LPoint4f * 10 LPoint4f * 0 0 3567 0 0 0 0 0 0 0 0 0 0
3771 16 LPoint4f const * 0 8576 16 LPoint4f const * 16 LPoint4f const * 0 0 3772 0 0 0 0 0 0 0 0 0 0
3772 14 LPoint4f const 0 8832 14 LPoint4f const 14 LPoint4f const 0 0 3567 0 0 0 0 0 0 0 0 0 0
3773 10 LPoint4d * 0 8576 10 LPoint4d * 10 LPoint4d * 0 0 3568 0 0 0 0 0 0 0 0 0 0
3774 16 LPoint4d const * 0 8576 16 LPoint4d const * 16 LPoint4d const * 0 0 3775 0 0 0 0 0 0 0 0 0 0
3775 14 LPoint4d const 0 8832 14 LPoint4d const 14 LPoint4d const 0 0 3568 0 0 0 0 0 0 0 0 0 0
3776 10 LPoint4i * 0 8576 10 LPoint4i * 10 LPoint4i * 0 0 3569 0 0 0 0 0 0 0 0 0 0
3777 16 LPoint4i const * 0 8576 16 LPoint4i const * 16 LPoint4i const * 0 0 3778 0 0 0 0 0 0 0 0 0 0
3778 14 LPoint4i const 0 8832 14 LPoint4i const 14 LPoint4i const 0 0 3569 0 0 0 0 0 0 0 0 0 0
3779 11 LMatrix3f * 0 8576 11 LMatrix3f * 11 LMatrix3f * 0 0 3570 0 0 0 0 0 0 0 0 0 0
3780 17 LMatrix3f const * 0 8576 17 LMatrix3f const * 17 LMatrix3f const * 0 0 3781 0 0 0 0 0 0 0 0 0 0
3781 15 LMatrix3f const 0 8832 15 LMatrix3f const 15 LMatrix3f const 0 0 3570 0 0 0 0 0 0 0 0 0 0
3782 5 Row * 0 8576 16 LMatrix3f::Row * 16 LMatrix3f::Row * 0 0 3572 0 0 0 0 0 0 0 0 0 0
3783 6 CRow * 0 8576 17 LMatrix3f::CRow * 17 LMatrix3f::CRow * 0 0 3573 0 0 0 0 0 0 0 0 0 0
3784 17 LMatrix4f const * 0 8576 17 LMatrix4f const * 17 LMatrix4f const * 0 0 3785 0 0 0 0 0 0 0 0 0 0
3785 15 LMatrix4f const 0 8832 15 LMatrix4f const 15 LMatrix4f const 0 0 3574 0 0 0 0 0 0 0 0 0 0
3786 11 Row const * 0 8576 22 LMatrix3f::Row const * 22 LMatrix3f::Row const * 0 0 3787 0 0 0 0 0 0 0 0 0 0
3787 9 Row const 0 8832 20 LMatrix3f::Row const 20 LMatrix3f::Row const 0 0 3572 0 0 0 0 0 0 0 0 0 0
3788 12 CRow const * 0 8576 23 LMatrix3f::CRow const * 23 LMatrix3f::CRow const * 0 0 3789 0 0 0 0 0 0 0 0 0 0
3789 10 CRow const 0 8832 21 LMatrix3f::CRow const 21 LMatrix3f::CRow const 0 0 3573 0 0 0 0 0 0 0 0 0 0
3790 11 LMatrix4f * 0 8576 11 LMatrix4f * 11 LMatrix4f * 0 0 3574 0 0 0 0 0 0 0 0 0 0
3791 26 UnalignedLMatrix4f const * 0 8576 26 UnalignedLMatrix4f const * 26 UnalignedLMatrix4f const * 0 0 3792 0 0 0 0 0 0 0 0 0 0
3792 24 UnalignedLMatrix4f const 0 8832 24 UnalignedLMatrix4f const 24 UnalignedLMatrix4f const 0 0 3578 0 0 0 0 0 0 0 0 0 0
3793 5 Row * 0 8576 16 LMatrix4f::Row * 16 LMatrix4f::Row * 0 0 3576 0 0 0 0 0 0 0 0 0 0
3794 6 CRow * 0 8576 17 LMatrix4f::CRow * 17 LMatrix4f::CRow * 0 0 3577 0 0 0 0 0 0 0 0 0 0
3795 11 Row const * 0 8576 22 LMatrix4f::Row const * 22 LMatrix4f::Row const * 0 0 3796 0 0 0 0 0 0 0 0 0 0
3796 9 Row const 0 8832 20 LMatrix4f::Row const 20 LMatrix4f::Row const 0 0 3576 0 0 0 0 0 0 0 0 0 0
3797 12 CRow const * 0 8576 23 LMatrix4f::CRow const * 23 LMatrix4f::CRow const * 0 0 3798 0 0 0 0 0 0 0 0 0 0
3798 10 CRow const 0 8832 21 LMatrix4f::CRow const 21 LMatrix4f::CRow const 0 0 3577 0 0 0 0 0 0 0 0 0 0
3799 20 UnalignedLMatrix4f * 0 8576 20 UnalignedLMatrix4f * 20 UnalignedLMatrix4f * 0 0 3578 0 0 0 0 0 0 0 0 0 0
3800 11 LMatrix3d * 0 8576 11 LMatrix3d * 11 LMatrix3d * 0 0 3580 0 0 0 0 0 0 0 0 0 0
3801 17 LMatrix3d const * 0 8576 17 LMatrix3d const * 17 LMatrix3d const * 0 0 3802 0 0 0 0 0 0 0 0 0 0
3802 15 LMatrix3d const 0 8832 15 LMatrix3d const 15 LMatrix3d const 0 0 3580 0 0 0 0 0 0 0 0 0 0
3803 5 Row * 0 8576 16 LMatrix3d::Row * 16 LMatrix3d::Row * 0 0 3582 0 0 0 0 0 0 0 0 0 0
3804 6 CRow * 0 8576 17 LMatrix3d::CRow * 17 LMatrix3d::CRow * 0 0 3583 0 0 0 0 0 0 0 0 0 0
3805 17 LMatrix4d const * 0 8576 17 LMatrix4d const * 17 LMatrix4d const * 0 0 3806 0 0 0 0 0 0 0 0 0 0
3806 15 LMatrix4d const 0 8832 15 LMatrix4d const 15 LMatrix4d const 0 0 3584 0 0 0 0 0 0 0 0 0 0
3807 11 Row const * 0 8576 22 LMatrix3d::Row const * 22 LMatrix3d::Row const * 0 0 3808 0 0 0 0 0 0 0 0 0 0
3808 9 Row const 0 8832 20 LMatrix3d::Row const 20 LMatrix3d::Row const 0 0 3582 0 0 0 0 0 0 0 0 0 0
3809 12 CRow const * 0 8576 23 LMatrix3d::CRow const * 23 LMatrix3d::CRow const * 0 0 3810 0 0 0 0 0 0 0 0 0 0
3810 10 CRow const 0 8832 21 LMatrix3d::CRow const 21 LMatrix3d::CRow const 0 0 3583 0 0 0 0 0 0 0 0 0 0
3811 11 LMatrix4d * 0 8576 11 LMatrix4d * 11 LMatrix4d * 0 0 3584 0 0 0 0 0 0 0 0 0 0
3812 26 UnalignedLMatrix4d const * 0 8576 26 UnalignedLMatrix4d const * 26 UnalignedLMatrix4d const * 0 0 3813 0 0 0 0 0 0 0 0 0 0
3813 24 UnalignedLMatrix4d const 0 8832 24 UnalignedLMatrix4d const 24 UnalignedLMatrix4d const 0 0 3588 0 0 0 0 0 0 0 0 0 0
3814 5 Row * 0 8576 16 LMatrix4d::Row * 16 LMatrix4d::Row * 0 0 3586 0 0 0 0 0 0 0 0 0 0
3815 6 CRow * 0 8576 17 LMatrix4d::CRow * 17 LMatrix4d::CRow * 0 0 3587 0 0 0 0 0 0 0 0 0 0
3816 11 Row const * 0 8576 22 LMatrix4d::Row const * 22 LMatrix4d::Row const * 0 0 3817 0 0 0 0 0 0 0 0 0 0
3817 9 Row const 0 8832 20 LMatrix4d::Row const 20 LMatrix4d::Row const 0 0 3586 0 0 0 0 0 0 0 0 0 0
3818 12 CRow const * 0 8576 23 LMatrix4d::CRow const * 23 LMatrix4d::CRow const * 0 0 3819 0 0 0 0 0 0 0 0 0 0
3819 10 CRow const 0 8832 21 LMatrix4d::CRow const 21 LMatrix4d::CRow const 0 0 3587 0 0 0 0 0 0 0 0 0 0
3820 20 UnalignedLMatrix4d * 0 8576 20 UnalignedLMatrix4d * 20 UnalignedLMatrix4d * 0 0 3588 0 0 0 0 0 0 0 0 0 0
3821 14 LQuaternionf * 0 8576 14 LQuaternionf * 14 LQuaternionf * 0 0 3590 0 0 0 0 0 0 0 0 0 0
3822 20 LQuaternionf const * 0 8576 20 LQuaternionf const * 20 LQuaternionf const * 0 0 3823 0 0 0 0 0 0 0 0 0 0
3823 18 LQuaternionf const 0 8832 18 LQuaternionf const 18 LQuaternionf const 0 0 3590 0 0 0 0 0 0 0 0 0 0
3824 14 LQuaterniond * 0 8576 14 LQuaterniond * 14 LQuaterniond * 0 0 3591 0 0 0 0 0 0 0 0 0 0
3825 20 LQuaterniond const * 0 8576 20 LQuaterniond const * 20 LQuaterniond const * 0 0 3826 0 0 0 0 0 0 0 0 0 0
3826 18 LQuaterniond const 0 8832 18 LQuaterniond const 18 LQuaterniond const 0 0 3591 0 0 0 0 0 0 0 0 0 0
3827 12 LRotationf * 0 8576 12 LRotationf * 12 LRotationf * 0 0 3592 0 0 0 0 0 0 0 0 0 0
3828 18 LRotationf const * 0 8576 18 LRotationf const * 18 LRotationf const * 0 0 3829 0 0 0 0 0 0 0 0 0 0
3829 16 LRotationf const 0 8832 16 LRotationf const 16 LRotationf const 0 0 3592 0 0 0 0 0 0 0 0 0 0
3830 12 LRotationd * 0 8576 12 LRotationd * 12 LRotationd * 0 0 3593 0 0 0 0 0 0 0 0 0 0
3831 18 LRotationd const * 0 8576 18 LRotationd const * 18 LRotationd const * 0 0 3832 0 0 0 0 0 0 0 0 0 0
3832 16 LRotationd const 0 8832 16 LRotationd const 16 LRotationd const 0 0 3593 0 0 0 0 0 0 0 0 0 0
3833 15 LOrientationf * 0 8576 15 LOrientationf * 15 LOrientationf * 0 0 3594 0 0 0 0 0 0 0 0 0 0
3834 21 LOrientationf const * 0 8576 21 LOrientationf const * 21 LOrientationf const * 0 0 3835 0 0 0 0 0 0 0 0 0 0
3835 19 LOrientationf const 0 8832 19 LOrientationf const 19 LOrientationf const 0 0 3594 0 0 0 0 0 0 0 0 0 0
3836 15 LOrientationd * 0 8576 15 LOrientationd * 15 LOrientationd * 0 0 3595 0 0 0 0 0 0 0 0 0 0
3837 21 LOrientationd const * 0 8576 21 LOrientationd const * 21 LOrientationd const * 0 0 3838 0 0 0 0 0 0 0 0 0 0
3838 19 LOrientationd const 0 8832 19 LOrientationd const 19 LOrientationd const 0 0 3595 0 0 0 0 0 0 0 0 0 0
3839 27 ConfigVariableColor const * 0 8576 27 ConfigVariableColor const * 27 ConfigVariableColor const * 0 0 3840 0 0 0 0 0 0 0 0 0 0
3840 25 ConfigVariableColor const 0 8832 25 ConfigVariableColor const 25 ConfigVariableColor const 0 0 3666 0 0 0 0 0 0 0 0 0 0
3841 21 ConfigVariableColor * 0 8576 21 ConfigVariableColor * 21 ConfigVariableColor * 0 0 3666 0 0 0 0 0 0 0 0 0 0
3842 14 LColor const * 0 8576 14 LColor const * 14 LColor const * 0 0 3843 0 0 0 0 0 0 0 0 0 0
3843 12 LColor const 0 8832 12 LColor const 12 LColor const 0 0 3650 0 0 0 0 0 0 0 0 0 0
3844 11 PN_stdfloat 0 2105344 11 PN_stdfloat 11 PN_stdfloat 0 0 3526 0 0 0 0 0 0 0 0 0 0
3845 8 LColor * 0 8576 8 LColor * 8 LColor * 0 0 3650 0 0 0 0 0 0 0 0 0 0
3846 38 double const [::num_matrix_components] 0 4202496 38 double const [::num_matrix_components] 38 double const [::num_matrix_components] 0 0 3847 12 0 0 0 0 0 0 0 0 0 0
3847 12 double const 0 8832 12 double const 12 double const 0 0 3529 0 0 0 0 0 0 0 0 0 0
3848 37 float const [::num_matrix_components] 0 4202496 37 float const [::num_matrix_components] 37 float const [::num_matrix_components] 0 0 3849 12 0 0 0 0 0 0 0 0 0 0
3849 11 float const 0 8832 11 float const 11 float const 0 0 3526 0 0 0 0 0 0 0 0 0 0
3850 32 double [::num_matrix_components] 0 4202496 32 double [::num_matrix_components] 32 double [::num_matrix_components] 0 0 3529 12 0 0 0 0 0 0 0 0 0 0
3851 31 float [::num_matrix_components] 0 4202496 31 float [::num_matrix_components] 31 float [::num_matrix_components] 0 0 3526 12 0 0 0 0 0 0 0 0 0 0
0
77
3852 1 x 0 6 3526 1986 1988 0 0 0 0 0 0 13 LVecBase2f::x 0
3853 1 y 0 6 3526 1987 1989 0 0 0 0 0 0 13 LVecBase2f::y 0
3854 1 x 0 6 3529 2049 2051 0 0 0 0 0 0 13 LVecBase2d::x 0
3855 1 y 0 6 3529 2050 2052 0 0 0 0 0 0 13 LVecBase2d::y 0
3856 1 x 0 6 3532 2112 2114 0 0 0 0 0 0 13 LVecBase2i::x 0
3857 1 y 0 6 3532 2113 2115 0 0 0 0 0 0 13 LVecBase2i::y 0
3858 1 x 0 6 3526 2267 2271 0 0 0 0 0 0 13 LVecBase3f::x 0
3859 1 y 0 6 3526 2268 2272 0 0 0 0 0 0 13 LVecBase3f::y 0
3860 1 z 0 6 3526 2269 2273 0 0 0 0 0 0 13 LVecBase3f::z 0
3861 2 xy 0 2 3524 2274 0 0 0 0 0 0 0 14 LVecBase3f::xy 0
3862 2 xz 0 2 3524 2275 0 0 0 0 0 0 0 14 LVecBase3f::xz 0
3863 2 yz 0 2 3524 2276 0 0 0 0 0 0 0 14 LVecBase3f::yz 0
3864 1 x 0 6 3529 2340 2344 0 0 0 0 0 0 13 LVecBase3d::x 0
3865 1 y 0 6 3529 2341 2345 0 0 0 0 0 0 13 LVecBase3d::y 0
3866 1 z 0 6 3529 2342 2346 0 0 0 0 0 0 13 LVecBase3d::z 0
3867 2 xy 0 2 3527 2347 0 0 0 0 0 0 0 14 LVecBase3d::xy 0
3868 2 xz 0 2 3527 2348 0 0 0 0 0 0 0 14 LVecBase3d::xz 0
3869 2 yz 0 2 3527 2349 0 0 0 0 0 0 0 14 LVecBase3d::yz 0
3870 1 x 0 6 3532 2413 2417 0 0 0 0 0 0 13 LVecBase3i::x 0
3871 1 y 0 6 3532 2414 2418 0 0 0 0 0 0 13 LVecBase3i::y 0
3872 1 z 0 6 3532 2415 2419 0 0 0 0 0 0 13 LVecBase3i::z 0
3873 2 xy 0 2 3530 2420 0 0 0 0 0 0 0 14 LVecBase3i::xy 0
3874 2 xz 0 2 3530 2421 0 0 0 0 0 0 0 14 LVecBase3i::xz 0
3875 2 yz 0 2 3530 2422 0 0 0 0 0 0 0 14 LVecBase3i::yz 0
3876 2 xy 0 2 3533 2476 0 0 0 0 0 0 0 13 LVector3f::xy 0
3877 2 xz 0 2 3533 2477 0 0 0 0 0 0 0 13 LVector3f::xz 0
3878 2 yz 0 2 3533 2478 0 0 0 0 0 0 0 13 LVector3f::yz 0
3879 2 xy 0 2 3534 2510 0 0 0 0 0 0 0 13 LVector3d::xy 0
3880 2 xz 0 2 3534 2511 0 0 0 0 0 0 0 13 LVector3d::xz 0
3881 2 yz 0 2 3534 2512 0 0 0 0 0 0 0 13 LVector3d::yz 0
3882 2 xy 0 2 3535 2544 0 0 0 0 0 0 0 13 LVector3i::xy 0
3883 2 xz 0 2 3535 2545 0 0 0 0 0 0 0 13 LVector3i::xz 0
3884 2 yz 0 2 3535 2546 0 0 0 0 0 0 0 13 LVector3i::yz 0
3885 2 xy 0 2 3536 2570 0 0 0 0 0 0 0 12 LPoint3f::xy 0
3886 2 xz 0 2 3536 2571 0 0 0 0 0 0 0 12 LPoint3f::xz 0
3887 2 yz 0 2 3536 2572 0 0 0 0 0 0 0 12 LPoint3f::yz 0
3888 2 xy 0 2 3537 2593 0 0 0 0 0 0 0 12 LPoint3d::xy 0
3889 2 xz 0 2 3537 2594 0 0 0 0 0 0 0 12 LPoint3d::xz 0
3890 2 yz 0 2 3537 2595 0 0 0 0 0 0 0 12 LPoint3d::yz 0
3891 2 xy 0 2 3538 2616 0 0 0 0 0 0 0 12 LPoint3i::xy 0
3892 2 xz 0 2 3538 2617 0 0 0 0 0 0 0 12 LPoint3i::xz 0
3893 2 yz 0 2 3538 2618 0 0 0 0 0 0 0 12 LPoint3i::yz 0
3894 1 x 0 6 3526 2648 2654 0 0 0 0 0 0 13 LVecBase4f::x 0
3895 1 y 0 6 3526 2649 2655 0 0 0 0 0 0 13 LVecBase4f::y 0
3896 1 z 0 6 3526 2650 2656 0 0 0 0 0 0 13 LVecBase4f::z 0
3897 3 xyz 0 2 3539 2652 0 0 0 0 0 0 0 15 LVecBase4f::xyz 0
3898 2 xy 0 2 3524 2653 0 0 0 0 0 0 0 14 LVecBase4f::xy 0
3899 1 x 0 6 3529 2733 2739 0 0 0 0 0 0 13 LVecBase4d::x 0
3900 1 y 0 6 3529 2734 2740 0 0 0 0 0 0 13 LVecBase4d::y 0
3901 1 z 0 6 3529 2735 2741 0 0 0 0 0 0 13 LVecBase4d::z 0
3902 3 xyz 0 2 3541 2737 0 0 0 0 0 0 0 15 LVecBase4d::xyz 0
3903 2 xy 0 2 3527 2738 0 0 0 0 0 0 0 14 LVecBase4d::xy 0
3904 1 x 0 6 3532 2818 2824 0 0 0 0 0 0 13 LVecBase4i::x 0
3905 1 y 0 6 3532 2819 2825 0 0 0 0 0 0 13 LVecBase4i::y 0
3906 1 z 0 6 3532 2820 2826 0 0 0 0 0 0 13 LVecBase4i::z 0
3907 3 xyz 0 2 3543 2822 0 0 0 0 0 0 0 15 LVecBase4i::xyz 0
3908 2 xy 0 2 3530 2823 0 0 0 0 0 0 0 14 LVecBase4i::xy 0
3909 3 xyz 0 2 3546 2889 0 0 0 0 0 0 0 14 LVector4f::xyz 0
3910 2 xy 0 2 3533 2890 0 0 0 0 0 0 0 13 LVector4f::xy 0
3911 3 xyz 0 2 3547 2909 0 0 0 0 0 0 0 14 LVector4d::xyz 0
3912 2 xy 0 2 3534 2910 0 0 0 0 0 0 0 13 LVector4d::xy 0
3913 3 xyz 0 2 3548 2929 0 0 0 0 0 0 0 14 LVector4i::xyz 0
3914 2 xy 0 2 3535 2930 0 0 0 0 0 0 0 13 LVector4i::xy 0
3915 3 xyz 0 2 3549 2947 0 0 0 0 0 0 0 13 LPoint4f::xyz 0
3916 2 xy 0 2 3536 2948 0 0 0 0 0 0 0 12 LPoint4f::xy 0
3917 3 xyz 0 2 3550 2967 0 0 0 0 0 0 0 13 LPoint4d::xyz 0
3918 2 xy 0 2 3537 2968 0 0 0 0 0 0 0 12 LPoint4d::xy 0
3919 3 xyz 0 2 3551 2987 0 0 0 0 0 0 0 13 LPoint4i::xyz 0
3920 2 xy 0 2 3538 2988 0 0 0 0 0 0 0 12 LPoint4i::xy 0
3921 4 rows 0 66 3539 3021 0 0 0 0 3016 0 0 15 LMatrix3f::rows 0
3922 4 cols 0 66 3539 3022 0 0 0 0 3016 0 0 15 LMatrix3f::cols 0
3923 4 rows 0 66 3552 3114 0 0 0 0 3108 0 0 15 LMatrix4f::rows 0
3924 4 cols 0 66 3552 3115 0 0 0 0 3108 0 0 15 LMatrix4f::cols 0
3925 4 rows 0 66 3541 3219 0 0 0 0 3214 0 0 15 LMatrix3d::rows 0
3926 4 cols 0 66 3541 3220 0 0 0 0 3214 0 0 15 LMatrix3d::cols 0
3927 4 rows 0 66 3556 3310 0 0 0 0 3304 0 0 15 LMatrix4d::rows 0
3928 4 cols 0 66 3556 3311 0 0 0 0 3304 0 0 15 LMatrix4d::cols 0
14
3929 8 get_rows 0 3016 3019 19 LMatrix3f::get_rows 0
3930 8 get_cols 0 3016 3020 19 LMatrix3f::get_cols 0
3931 9 get_col2s 0 3016 3024 20 LMatrix3f::get_col2s 0
3932 9 get_row2s 0 3016 3023 20 LMatrix3f::get_row2s 0
3933 8 get_rows 0 3108 3111 19 LMatrix4f::get_rows 0
3934 8 get_cols 0 3108 3112 19 LMatrix4f::get_cols 0
3935 9 get_row3s 0 3108 3113 20 LMatrix4f::get_row3s 0
3936 8 get_rows 0 3214 3217 19 LMatrix3d::get_rows 0
3937 8 get_cols 0 3214 3218 19 LMatrix3d::get_cols 0
3938 9 get_col2s 0 3214 3222 20 LMatrix3d::get_col2s 0
3939 9 get_row2s 0 3214 3221 20 LMatrix3d::get_row2s 0
3940 8 get_rows 0 3304 3307 19 LMatrix4d::get_rows 0
3941 8 get_cols 0 3304 3308 19 LMatrix4d::get_cols 0
3942 9 get_row3s 0 3304 3309 20 LMatrix4d::get_row3s 0