Poodletooth-iLand/dependencies/panda/pandac/input/libp3linmath.in
2015-05-29 05:03:48 -05:00

28414 lines
1.4 MiB

1412101846
2 2
12 libp3linmath 4 Ns0b 12 panda3d.core
1495
2021 12 ~MathNumbers 0 4 3516 25 MathNumbers::~MathNumbers 0 0 0
32
MathNumbers::~MathNumbers(void);
2022 9 deg_2_rad 0 1 0 9 deg_2_rad 0 2 1886 1887 0
67
inline double deg_2_rad(double f);
inline float deg_2_rad(float f);
2023 9 rad_2_deg 0 1 0 9 rad_2_deg 0 2 1888 1889 0
67
inline double rad_2_deg(double f);
inline float rad_2_deg(float f);
2024 10 LVecBase2f 0 4 3517 22 LVecBase2f::LVecBase2f 0 4 1 2 3 4 1392
// Filename: lvecBase2_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Default Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Copy Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
189
inline LVecBase2f::LVecBase2f(void);
inline LVecBase2f::LVecBase2f(LVecBase2f const &copy);
inline LVecBase2f::LVecBase2f(float fill_value);
inline LVecBase2f::LVecBase2f(float x, float y);
2025 10 operator = 0 4 3517 22 LVecBase2f::operator = 0 2 5 6 470
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Copy Assignment Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Fill Assignment Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
127
inline LVecBase2f &LVecBase2f::operator =(LVecBase2f const &copy);
inline LVecBase2f &LVecBase2f::operator =(float fill_value);
2026 12 operator new 0 4 3517 24 LVecBase2f::operator new 0 1 7 0
126
inline void *LVecBase2f::operator new(unsigned int size);
inline void *LVecBase2f::operator new(unsigned int size, void *ptr);
2027 15 operator delete 0 4 3517 27 LVecBase2f::operator delete 0 0 0
108
inline void LVecBase2f::operator delete(void *ptr);
inline void LVecBase2f::operator delete(void *, void *);
2028 12 validate_ptr 0 4 3517 24 LVecBase2f::validate_ptr 0 0 0
61
static inline bool LVecBase2f::validate_ptr(void const *ptr);
2029 4 zero 0 4 3517 16 LVecBase2f::zero 0 1 8 262
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::zero Named Constructor
// Access: Published
// Description: Returns a zero-length vector.
////////////////////////////////////////////////////////////////////
55
static inline LVecBase2f const &LVecBase2f::zero(void);
2030 6 unit_x 0 4 3517 18 LVecBase2f::unit_x 0 1 9 259
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::unit_x Named Constructor
// Access: Published
// Description: Returns a unit X vector.
////////////////////////////////////////////////////////////////////
57
static inline LVecBase2f const &LVecBase2f::unit_x(void);
2031 6 unit_y 0 4 3517 18 LVecBase2f::unit_y 0 1 10 259
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::unit_y Named Constructor
// Access: Published
// Description: Returns a unit Y vector.
////////////////////////////////////////////////////////////////////
57
static inline LVecBase2f const &LVecBase2f::unit_y(void);
2032 11 ~LVecBase2f 0 4 3517 23 LVecBase2f::~LVecBase2f 0 0 220
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Destructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
37
inline LVecBase2f::~LVecBase2f(void);
2033 10 __reduce__ 0 4 3517 22 LVecBase2f::__reduce__ 0 1 11 0
62
inline PyObject *LVecBase2f::__reduce__(PyObject *self) const;
2034 11 __getattr__ 0 4 3517 23 LVecBase2f::__getattr__ 0 1 12 0
86
inline PyObject *LVecBase2f::__getattr__(basic_string< char > const &attr_name) const;
2035 11 __setattr__ 0 4 3517 23 LVecBase2f::__setattr__ 0 1 13 0
108
inline int LVecBase2f::__setattr__(PyObject *self, basic_string< char > const &attr_name, PyObject *assign);
2036 11 operator [] 0 4 3517 23 LVecBase2f::operator [] 0 2 14 15 456
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Indexing Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Indexing Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
96
inline float LVecBase2f::operator [](int i) const;
inline float &LVecBase2f::operator [](int i);
2037 11 __setitem__ 0 4 3517 23 LVecBase2f::__setitem__ 0 1 16 0
52
inline void LVecBase2f::__setitem__(int i, float v);
2038 4 size 0 4 3517 16 LVecBase2f::size 0 1 17 274
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::size
// Access: Published, Static
// Description: Returns 2: the number of components of a LVecBase2.
////////////////////////////////////////////////////////////////////
41
static inline int LVecBase2f::size(void);
2039 6 is_nan 0 4 3517 18 LVecBase2f::is_nan 0 1 18 311
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::is_nan
// Access: Published
// Description: Returns true if any component of the vector is
// not-a-number, false otherwise.
////////////////////////////////////////////////////////////////////
43
inline bool LVecBase2f::is_nan(void) const;
2040 8 get_cell 0 4 3517 20 LVecBase2f::get_cell 0 1 19 218
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_cell
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
47
inline float LVecBase2f::get_cell(int i) const;
2041 5 get_x 0 4 3517 17 LVecBase2f::get_x 0 1 20 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_x
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
43
inline float LVecBase2f::get_x(void) const;
2042 5 get_y 0 4 3517 17 LVecBase2f::get_y 0 1 21 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_y
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
43
inline float LVecBase2f::get_y(void) const;
2043 8 set_cell 0 4 3517 20 LVecBase2f::set_cell 0 1 22 218
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::set_cell
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
53
inline void LVecBase2f::set_cell(int i, float value);
2044 5 set_x 0 4 3517 17 LVecBase2f::set_x 0 1 23 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::set_x
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
43
inline void LVecBase2f::set_x(float value);
2045 5 set_y 0 4 3517 17 LVecBase2f::set_y 0 1 24 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::set_y
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
43
inline void LVecBase2f::set_y(float value);
2046 11 add_to_cell 0 4 3517 23 LVecBase2f::add_to_cell 0 1 25 377
// 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:
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::add_to_cell
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
56
inline void LVecBase2f::add_to_cell(int i, float value);
2047 5 add_x 0 4 3517 17 LVecBase2f::add_x 0 1 26 371
// 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:
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::add_x
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
43
inline void LVecBase2f::add_x(float value);
2048 5 add_y 0 4 3517 17 LVecBase2f::add_y 0 1 27 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::add_y
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
43
inline void LVecBase2f::add_y(float value);
2049 8 get_data 0 4 3517 20 LVecBase2f::get_data 0 1 28 395
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_data
// Access: Published
// Description: 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;
2050 18 get_num_components 0 4 3517 30 LVecBase2f::get_num_components 0 1 29 279
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_num_components
// Access: Published
// Description: Returns the number of elements in the vector, two.
////////////////////////////////////////////////////////////////////
54
inline int LVecBase2f::get_num_components(void) const;
2051 4 fill 0 4 3517 16 LVecBase2f::fill 0 1 30 364
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::fill
// Access: Published
// Description: 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);
2052 3 set 0 4 3517 15 LVecBase2f::set 0 1 31 213
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::set
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
46
inline void LVecBase2f::set(float x, float y);
2053 3 dot 0 4 3517 15 LVecBase2f::dot 0 1 32 213
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::dot
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
60
inline float LVecBase2f::dot(LVecBase2f const &other) const;
2054 14 length_squared 0 4 3517 26 LVecBase2f::length_squared 0 1 33 300
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::length_squared
// Access: Published
// Description: Returns the square of the vector's length, cheap and
// easy.
////////////////////////////////////////////////////////////////////
52
inline float LVecBase2f::length_squared(void) const;
2055 6 length 0 4 3517 18 LVecBase2f::length 0 1 34 295
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::length
// Access: Published
// Description: Returns the length of the vector, by the Pythagorean
// theorem.
////////////////////////////////////////////////////////////////////
44
inline float LVecBase2f::length(void) const;
2056 9 normalize 0 4 3517 21 LVecBase2f::normalize 0 1 35 367
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::normalize
// Access: Published
// Description: 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);
2057 7 project 0 4 3517 19 LVecBase2f::project 0 1 36 390
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::project
// Access: Published
// Description: 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;
2058 10 operator < 0 4 3517 22 LVecBase2f::operator < 0 1 37 518
// FLOATTYPE_IS_INT
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator <
// Access: Published
// Description: This performs a lexicographical comparison. It's of
// questionable mathematical meaning, but sometimes has
// a practical purpose for sorting unique vectors,
// especially in an STL container. Also see
// compare_to().
////////////////////////////////////////////////////////////////////
66
inline bool LVecBase2f::operator <(LVecBase2f const &other) const;
2059 11 operator == 0 4 3517 23 LVecBase2f::operator == 0 1 38 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator ==
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
67
inline bool LVecBase2f::operator ==(LVecBase2f const &other) const;
2060 11 operator != 0 4 3517 23 LVecBase2f::operator != 0 1 39 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator !=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
67
inline bool LVecBase2f::operator !=(LVecBase2f const &other) const;
2061 10 compare_to 0 4 3517 22 LVecBase2f::compare_to 0 2 40 41 827
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::compare_to
// Access: Published
// Description: This flavor of compare_to uses a default threshold
// value based on the numeric type.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::compare_to
// Access: Published
// Description: 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;
2062 8 get_hash 0 4 3517 20 LVecBase2f::get_hash 0 2 42 43 516
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
////////////////////////////////////////////////////////////////////
118
inline unsigned int LVecBase2f::get_hash(void) const;
inline unsigned int LVecBase2f::get_hash(float threshold) const;
2063 8 add_hash 0 4 3517 20 LVecBase2f::add_hash 0 2 44 45 516
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
////////////////////////////////////////////////////////////////////
150
inline unsigned int LVecBase2f::add_hash(unsigned int hash) const;
inline unsigned int LVecBase2f::add_hash(unsigned int hash, float threshold) const;
2064 13 generate_hash 0 4 3517 25 LVecBase2f::generate_hash 0 2 46 47 546
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::generate_hash
// Access: Published
// Description: Adds the vector to the indicated hash generator.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::generate_hash
// Access: Published
// Description: 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;
2065 10 operator - 0 68 3517 22 LVecBase2f::operator - 0 1 48 237
// FLOATTYPE_IS_INT
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::unary -
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
53
inline LVecBase2f LVecBase2f::operator -(void) const;
2066 10 operator + 0 4 3517 22 LVecBase2f::operator + 0 1 49 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::vector + vector
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
72
inline LVecBase2f LVecBase2f::operator +(LVecBase2f const &other) const;
2067 10 operator - 0 4 3517 22 LVecBase2f::operator - 0 1 50 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::vector - vector
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
72
inline LVecBase2f LVecBase2f::operator -(LVecBase2f const &other) const;
2068 10 operator * 0 4 3517 22 LVecBase2f::operator * 0 1 51 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::vector * scalar
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
61
inline LVecBase2f LVecBase2f::operator *(float scalar) const;
2069 10 operator / 0 4 3517 22 LVecBase2f::operator / 0 1 52 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::vector / scalar
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
61
inline LVecBase2f LVecBase2f::operator /(float scalar) const;
2070 11 operator += 0 4 3517 23 LVecBase2f::operator += 0 1 53 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator +=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
61
inline void LVecBase2f::operator +=(LVecBase2f const &other);
2071 11 operator -= 0 4 3517 23 LVecBase2f::operator -= 0 1 54 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator -=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
61
inline void LVecBase2f::operator -=(LVecBase2f const &other);
2072 11 operator *= 0 4 3517 23 LVecBase2f::operator *= 0 1 55 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator *=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
50
inline void LVecBase2f::operator *=(float scalar);
2073 11 operator /= 0 4 3517 23 LVecBase2f::operator /= 0 1 56 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator /=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
50
inline void LVecBase2f::operator /=(float scalar);
2074 7 __pow__ 0 4 3517 19 LVecBase2f::__pow__ 0 1 57 0
60
inline LVecBase2f LVecBase2f::__pow__(float exponent) const;
2075 8 __ipow__ 0 4 3517 20 LVecBase2f::__ipow__ 0 1 58 0
70
inline PyObject *LVecBase2f::__ipow__(PyObject *self, float exponent);
2076 4 fmax 0 4 3517 16 LVecBase2f::fmax 0 1 59 214
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::fmax
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
60
inline LVecBase2f LVecBase2f::fmax(LVecBase2f const &other);
2077 4 fmin 0 4 3517 16 LVecBase2f::fmin 0 1 60 214
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::fmin
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
60
inline LVecBase2f LVecBase2f::fmin(LVecBase2f const &other);
2078 12 almost_equal 0 4 3517 24 LVecBase2f::almost_equal 0 2 61 62 662
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::almost_equal
// Access: Published
// Description: Returns true if two vectors are memberwise equal
// within a specified tolerance.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::almost_equal
// Access: Published
// Description: 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;
2079 6 output 0 4 3517 18 LVecBase2f::output 0 1 63 216
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::output
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
51
inline void LVecBase2f::output(ostream &out) const;
2080 11 python_repr 0 4 3517 23 LVecBase2f::python_repr 0 1 64 0
96
inline void LVecBase2f::python_repr(ostream &out, basic_string< char > const &class_name) const;
2081 20 write_datagram_fixed 0 4 3517 32 LVecBase2f::write_datagram_fixed 0 1 65 642
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::write_datagram_fixed
// Access: Published
// Description: 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;
2082 19 read_datagram_fixed 0 4 3517 31 LVecBase2f::read_datagram_fixed 0 1 66 348
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::read_datagram_fixed
// Access: Published
// Description: 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);
2083 14 write_datagram 0 4 3517 26 LVecBase2f::write_datagram 0 1 67 464
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::write_datagram
// Access: Published
// Description: 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;
2084 13 read_datagram 0 4 3517 25 LVecBase2f::read_datagram 0 1 68 280
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::read_datagram
// Access: Published
// Description: Reads the vector from the Datagram using get_stdfloat().
////////////////////////////////////////////////////////////////////
64
inline void LVecBase2f::read_datagram(DatagramIterator &source);
2085 14 get_class_type 0 4 3517 26 LVecBase2f::get_class_type 0 1 69 0
51
static TypeHandle LVecBase2f::get_class_type(void);
2086 10 LVecBase2d 0 4 3518 22 LVecBase2d::LVecBase2d 0 4 70 71 72 73 1392
// Filename: lvecBase2_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Default Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Copy Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
192
inline LVecBase2d::LVecBase2d(void);
inline LVecBase2d::LVecBase2d(LVecBase2d const &copy);
inline LVecBase2d::LVecBase2d(double fill_value);
inline LVecBase2d::LVecBase2d(double x, double y);
2087 10 operator = 0 4 3518 22 LVecBase2d::operator = 0 2 74 75 470
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Copy Assignment Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Fill Assignment Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
128
inline LVecBase2d &LVecBase2d::operator =(LVecBase2d const &copy);
inline LVecBase2d &LVecBase2d::operator =(double fill_value);
2088 12 operator new 0 4 3518 24 LVecBase2d::operator new 0 1 76 0
126
inline void *LVecBase2d::operator new(unsigned int size);
inline void *LVecBase2d::operator new(unsigned int size, void *ptr);
2089 15 operator delete 0 4 3518 27 LVecBase2d::operator delete 0 0 0
108
inline void LVecBase2d::operator delete(void *ptr);
inline void LVecBase2d::operator delete(void *, void *);
2090 12 validate_ptr 0 4 3518 24 LVecBase2d::validate_ptr 0 0 0
61
static inline bool LVecBase2d::validate_ptr(void const *ptr);
2091 4 zero 0 4 3518 16 LVecBase2d::zero 0 1 77 262
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::zero Named Constructor
// Access: Published
// Description: Returns a zero-length vector.
////////////////////////////////////////////////////////////////////
55
static inline LVecBase2d const &LVecBase2d::zero(void);
2092 6 unit_x 0 4 3518 18 LVecBase2d::unit_x 0 1 78 259
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::unit_x Named Constructor
// Access: Published
// Description: Returns a unit X vector.
////////////////////////////////////////////////////////////////////
57
static inline LVecBase2d const &LVecBase2d::unit_x(void);
2093 6 unit_y 0 4 3518 18 LVecBase2d::unit_y 0 1 79 259
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::unit_y Named Constructor
// Access: Published
// Description: Returns a unit Y vector.
////////////////////////////////////////////////////////////////////
57
static inline LVecBase2d const &LVecBase2d::unit_y(void);
2094 11 ~LVecBase2d 0 4 3518 23 LVecBase2d::~LVecBase2d 0 0 220
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Destructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
37
inline LVecBase2d::~LVecBase2d(void);
2095 10 __reduce__ 0 4 3518 22 LVecBase2d::__reduce__ 0 1 80 0
62
inline PyObject *LVecBase2d::__reduce__(PyObject *self) const;
2096 11 __getattr__ 0 4 3518 23 LVecBase2d::__getattr__ 0 1 81 0
86
inline PyObject *LVecBase2d::__getattr__(basic_string< char > const &attr_name) const;
2097 11 __setattr__ 0 4 3518 23 LVecBase2d::__setattr__ 0 1 82 0
108
inline int LVecBase2d::__setattr__(PyObject *self, basic_string< char > const &attr_name, PyObject *assign);
2098 11 operator [] 0 4 3518 23 LVecBase2d::operator [] 0 2 83 84 456
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Indexing Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Indexing Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
98
inline double LVecBase2d::operator [](int i) const;
inline double &LVecBase2d::operator [](int i);
2099 11 __setitem__ 0 4 3518 23 LVecBase2d::__setitem__ 0 1 85 0
53
inline void LVecBase2d::__setitem__(int i, double v);
2100 4 size 0 4 3518 16 LVecBase2d::size 0 1 86 274
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::size
// Access: Published, Static
// Description: Returns 2: the number of components of a LVecBase2.
////////////////////////////////////////////////////////////////////
41
static inline int LVecBase2d::size(void);
2101 6 is_nan 0 4 3518 18 LVecBase2d::is_nan 0 1 87 311
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::is_nan
// Access: Published
// Description: Returns true if any component of the vector is
// not-a-number, false otherwise.
////////////////////////////////////////////////////////////////////
43
inline bool LVecBase2d::is_nan(void) const;
2102 8 get_cell 0 4 3518 20 LVecBase2d::get_cell 0 1 88 218
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_cell
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
48
inline double LVecBase2d::get_cell(int i) const;
2103 5 get_x 0 4 3518 17 LVecBase2d::get_x 0 1 89 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_x
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
44
inline double LVecBase2d::get_x(void) const;
2104 5 get_y 0 4 3518 17 LVecBase2d::get_y 0 1 90 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_y
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
44
inline double LVecBase2d::get_y(void) const;
2105 8 set_cell 0 4 3518 20 LVecBase2d::set_cell 0 1 91 218
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::set_cell
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
54
inline void LVecBase2d::set_cell(int i, double value);
2106 5 set_x 0 4 3518 17 LVecBase2d::set_x 0 1 92 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::set_x
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
44
inline void LVecBase2d::set_x(double value);
2107 5 set_y 0 4 3518 17 LVecBase2d::set_y 0 1 93 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::set_y
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
44
inline void LVecBase2d::set_y(double value);
2108 11 add_to_cell 0 4 3518 23 LVecBase2d::add_to_cell 0 1 94 377
// 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:
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::add_to_cell
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
57
inline void LVecBase2d::add_to_cell(int i, double value);
2109 5 add_x 0 4 3518 17 LVecBase2d::add_x 0 1 95 371
// 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:
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::add_x
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
44
inline void LVecBase2d::add_x(double value);
2110 5 add_y 0 4 3518 17 LVecBase2d::add_y 0 1 96 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::add_y
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
44
inline void LVecBase2d::add_y(double value);
2111 8 get_data 0 4 3518 20 LVecBase2d::get_data 0 1 97 395
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_data
// Access: Published
// Description: 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;
2112 18 get_num_components 0 4 3518 30 LVecBase2d::get_num_components 0 1 98 279
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_num_components
// Access: Published
// Description: Returns the number of elements in the vector, two.
////////////////////////////////////////////////////////////////////
54
inline int LVecBase2d::get_num_components(void) const;
2113 4 fill 0 4 3518 16 LVecBase2d::fill 0 1 99 364
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::fill
// Access: Published
// Description: 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);
2114 3 set 0 4 3518 15 LVecBase2d::set 0 1 100 213
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::set
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
48
inline void LVecBase2d::set(double x, double y);
2115 3 dot 0 4 3518 15 LVecBase2d::dot 0 1 101 213
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::dot
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
61
inline double LVecBase2d::dot(LVecBase2d const &other) const;
2116 14 length_squared 0 4 3518 26 LVecBase2d::length_squared 0 1 102 300
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::length_squared
// Access: Published
// Description: Returns the square of the vector's length, cheap and
// easy.
////////////////////////////////////////////////////////////////////
53
inline double LVecBase2d::length_squared(void) const;
2117 6 length 0 4 3518 18 LVecBase2d::length 0 1 103 295
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::length
// Access: Published
// Description: Returns the length of the vector, by the Pythagorean
// theorem.
////////////////////////////////////////////////////////////////////
45
inline double LVecBase2d::length(void) const;
2118 9 normalize 0 4 3518 21 LVecBase2d::normalize 0 1 104 367
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::normalize
// Access: Published
// Description: 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);
2119 7 project 0 4 3518 19 LVecBase2d::project 0 1 105 390
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::project
// Access: Published
// Description: 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;
2120 10 operator < 0 4 3518 22 LVecBase2d::operator < 0 1 106 518
// FLOATTYPE_IS_INT
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator <
// Access: Published
// Description: This performs a lexicographical comparison. It's of
// questionable mathematical meaning, but sometimes has
// a practical purpose for sorting unique vectors,
// especially in an STL container. Also see
// compare_to().
////////////////////////////////////////////////////////////////////
66
inline bool LVecBase2d::operator <(LVecBase2d const &other) const;
2121 11 operator == 0 4 3518 23 LVecBase2d::operator == 0 1 107 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator ==
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
67
inline bool LVecBase2d::operator ==(LVecBase2d const &other) const;
2122 11 operator != 0 4 3518 23 LVecBase2d::operator != 0 1 108 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator !=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
67
inline bool LVecBase2d::operator !=(LVecBase2d const &other) const;
2123 10 compare_to 0 4 3518 22 LVecBase2d::compare_to 0 2 109 110 827
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::compare_to
// Access: Published
// Description: This flavor of compare_to uses a default threshold
// value based on the numeric type.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::compare_to
// Access: Published
// Description: 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;
2124 8 get_hash 0 4 3518 20 LVecBase2d::get_hash 0 2 111 112 516
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
////////////////////////////////////////////////////////////////////
119
inline unsigned int LVecBase2d::get_hash(void) const;
inline unsigned int LVecBase2d::get_hash(double threshold) const;
2125 8 add_hash 0 4 3518 20 LVecBase2d::add_hash 0 2 113 114 516
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
////////////////////////////////////////////////////////////////////
151
inline unsigned int LVecBase2d::add_hash(unsigned int hash) const;
inline unsigned int LVecBase2d::add_hash(unsigned int hash, double threshold) const;
2126 13 generate_hash 0 4 3518 25 LVecBase2d::generate_hash 0 2 115 116 546
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::generate_hash
// Access: Published
// Description: Adds the vector to the indicated hash generator.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::generate_hash
// Access: Published
// Description: 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;
2127 10 operator - 0 68 3518 22 LVecBase2d::operator - 0 1 117 237
// FLOATTYPE_IS_INT
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::unary -
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
53
inline LVecBase2d LVecBase2d::operator -(void) const;
2128 10 operator + 0 4 3518 22 LVecBase2d::operator + 0 1 118 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::vector + vector
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
72
inline LVecBase2d LVecBase2d::operator +(LVecBase2d const &other) const;
2129 10 operator - 0 4 3518 22 LVecBase2d::operator - 0 1 119 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::vector - vector
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
72
inline LVecBase2d LVecBase2d::operator -(LVecBase2d const &other) const;
2130 10 operator * 0 4 3518 22 LVecBase2d::operator * 0 1 120 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::vector * scalar
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
62
inline LVecBase2d LVecBase2d::operator *(double scalar) const;
2131 10 operator / 0 4 3518 22 LVecBase2d::operator / 0 1 121 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::vector / scalar
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
62
inline LVecBase2d LVecBase2d::operator /(double scalar) const;
2132 11 operator += 0 4 3518 23 LVecBase2d::operator += 0 1 122 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator +=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
61
inline void LVecBase2d::operator +=(LVecBase2d const &other);
2133 11 operator -= 0 4 3518 23 LVecBase2d::operator -= 0 1 123 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator -=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
61
inline void LVecBase2d::operator -=(LVecBase2d const &other);
2134 11 operator *= 0 4 3518 23 LVecBase2d::operator *= 0 1 124 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator *=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
51
inline void LVecBase2d::operator *=(double scalar);
2135 11 operator /= 0 4 3518 23 LVecBase2d::operator /= 0 1 125 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator /=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
51
inline void LVecBase2d::operator /=(double scalar);
2136 7 __pow__ 0 4 3518 19 LVecBase2d::__pow__ 0 1 126 0
61
inline LVecBase2d LVecBase2d::__pow__(double exponent) const;
2137 8 __ipow__ 0 4 3518 20 LVecBase2d::__ipow__ 0 1 127 0
71
inline PyObject *LVecBase2d::__ipow__(PyObject *self, double exponent);
2138 4 fmax 0 4 3518 16 LVecBase2d::fmax 0 1 128 214
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::fmax
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
60
inline LVecBase2d LVecBase2d::fmax(LVecBase2d const &other);
2139 4 fmin 0 4 3518 16 LVecBase2d::fmin 0 1 129 214
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::fmin
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
60
inline LVecBase2d LVecBase2d::fmin(LVecBase2d const &other);
2140 12 almost_equal 0 4 3518 24 LVecBase2d::almost_equal 0 2 130 131 662
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::almost_equal
// Access: Published
// Description: Returns true if two vectors are memberwise equal
// within a specified tolerance.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::almost_equal
// Access: Published
// Description: 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;
2141 6 output 0 4 3518 18 LVecBase2d::output 0 1 132 216
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::output
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
51
inline void LVecBase2d::output(ostream &out) const;
2142 11 python_repr 0 4 3518 23 LVecBase2d::python_repr 0 1 133 0
96
inline void LVecBase2d::python_repr(ostream &out, basic_string< char > const &class_name) const;
2143 20 write_datagram_fixed 0 4 3518 32 LVecBase2d::write_datagram_fixed 0 1 134 642
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::write_datagram_fixed
// Access: Published
// Description: 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;
2144 19 read_datagram_fixed 0 4 3518 31 LVecBase2d::read_datagram_fixed 0 1 135 348
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::read_datagram_fixed
// Access: Published
// Description: 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);
2145 14 write_datagram 0 4 3518 26 LVecBase2d::write_datagram 0 1 136 464
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::write_datagram
// Access: Published
// Description: 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;
2146 13 read_datagram 0 4 3518 25 LVecBase2d::read_datagram 0 1 137 280
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::read_datagram
// Access: Published
// Description: Reads the vector from the Datagram using get_stdfloat().
////////////////////////////////////////////////////////////////////
64
inline void LVecBase2d::read_datagram(DatagramIterator &source);
2147 14 get_class_type 0 4 3518 26 LVecBase2d::get_class_type 0 1 138 0
51
static TypeHandle LVecBase2d::get_class_type(void);
2148 10 LVecBase2i 0 4 3519 22 LVecBase2i::LVecBase2i 0 4 139 140 141 142 1392
// Filename: lvecBase2_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Default Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Copy Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
183
inline LVecBase2i::LVecBase2i(void);
inline LVecBase2i::LVecBase2i(LVecBase2i const &copy);
inline LVecBase2i::LVecBase2i(int fill_value);
inline LVecBase2i::LVecBase2i(int x, int y);
2149 10 operator = 0 4 3519 22 LVecBase2i::operator = 0 2 143 144 470
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Copy Assignment Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Fill Assignment Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
125
inline LVecBase2i &LVecBase2i::operator =(LVecBase2i const &copy);
inline LVecBase2i &LVecBase2i::operator =(int fill_value);
2150 12 operator new 0 4 3519 24 LVecBase2i::operator new 0 1 145 0
126
inline void *LVecBase2i::operator new(unsigned int size);
inline void *LVecBase2i::operator new(unsigned int size, void *ptr);
2151 15 operator delete 0 4 3519 27 LVecBase2i::operator delete 0 0 0
108
inline void LVecBase2i::operator delete(void *ptr);
inline void LVecBase2i::operator delete(void *, void *);
2152 12 validate_ptr 0 4 3519 24 LVecBase2i::validate_ptr 0 0 0
61
static inline bool LVecBase2i::validate_ptr(void const *ptr);
2153 4 zero 0 4 3519 16 LVecBase2i::zero 0 1 146 262
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::zero Named Constructor
// Access: Published
// Description: Returns a zero-length vector.
////////////////////////////////////////////////////////////////////
55
static inline LVecBase2i const &LVecBase2i::zero(void);
2154 6 unit_x 0 4 3519 18 LVecBase2i::unit_x 0 1 147 259
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::unit_x Named Constructor
// Access: Published
// Description: Returns a unit X vector.
////////////////////////////////////////////////////////////////////
57
static inline LVecBase2i const &LVecBase2i::unit_x(void);
2155 6 unit_y 0 4 3519 18 LVecBase2i::unit_y 0 1 148 259
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::unit_y Named Constructor
// Access: Published
// Description: Returns a unit Y vector.
////////////////////////////////////////////////////////////////////
57
static inline LVecBase2i const &LVecBase2i::unit_y(void);
2156 11 ~LVecBase2i 0 4 3519 23 LVecBase2i::~LVecBase2i 0 0 220
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Destructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
37
inline LVecBase2i::~LVecBase2i(void);
2157 10 __reduce__ 0 4 3519 22 LVecBase2i::__reduce__ 0 1 149 0
62
inline PyObject *LVecBase2i::__reduce__(PyObject *self) const;
2158 11 __getattr__ 0 4 3519 23 LVecBase2i::__getattr__ 0 1 150 0
86
inline PyObject *LVecBase2i::__getattr__(basic_string< char > const &attr_name) const;
2159 11 __setattr__ 0 4 3519 23 LVecBase2i::__setattr__ 0 1 151 0
108
inline int LVecBase2i::__setattr__(PyObject *self, basic_string< char > const &attr_name, PyObject *assign);
2160 11 operator [] 0 4 3519 23 LVecBase2i::operator [] 0 2 152 153 456
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Indexing Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Indexing Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
92
inline int LVecBase2i::operator [](int i) const;
inline int &LVecBase2i::operator [](int i);
2161 11 __setitem__ 0 4 3519 23 LVecBase2i::__setitem__ 0 1 154 0
50
inline void LVecBase2i::__setitem__(int i, int v);
2162 4 size 0 4 3519 16 LVecBase2i::size 0 1 155 274
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::size
// Access: Published, Static
// Description: Returns 2: the number of components of a LVecBase2.
////////////////////////////////////////////////////////////////////
41
static inline int LVecBase2i::size(void);
2163 6 is_nan 0 4 3519 18 LVecBase2i::is_nan 0 1 156 311
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::is_nan
// Access: Published
// Description: Returns true if any component of the vector is
// not-a-number, false otherwise.
////////////////////////////////////////////////////////////////////
43
inline bool LVecBase2i::is_nan(void) const;
2164 8 get_cell 0 4 3519 20 LVecBase2i::get_cell 0 1 157 218
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_cell
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
45
inline int LVecBase2i::get_cell(int i) const;
2165 5 get_x 0 4 3519 17 LVecBase2i::get_x 0 1 158 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_x
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
41
inline int LVecBase2i::get_x(void) const;
2166 5 get_y 0 4 3519 17 LVecBase2i::get_y 0 1 159 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_y
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
41
inline int LVecBase2i::get_y(void) const;
2167 8 set_cell 0 4 3519 20 LVecBase2i::set_cell 0 1 160 218
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::set_cell
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
51
inline void LVecBase2i::set_cell(int i, int value);
2168 5 set_x 0 4 3519 17 LVecBase2i::set_x 0 1 161 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::set_x
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
41
inline void LVecBase2i::set_x(int value);
2169 5 set_y 0 4 3519 17 LVecBase2i::set_y 0 1 162 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::set_y
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
41
inline void LVecBase2i::set_y(int value);
2170 11 add_to_cell 0 4 3519 23 LVecBase2i::add_to_cell 0 1 163 377
// 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:
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::add_to_cell
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
54
inline void LVecBase2i::add_to_cell(int i, int value);
2171 5 add_x 0 4 3519 17 LVecBase2i::add_x 0 1 164 371
// 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:
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::add_x
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
41
inline void LVecBase2i::add_x(int value);
2172 5 add_y 0 4 3519 17 LVecBase2i::add_y 0 1 165 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::add_y
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
41
inline void LVecBase2i::add_y(int value);
2173 8 get_data 0 4 3519 20 LVecBase2i::get_data 0 1 166 395
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_data
// Access: Published
// Description: 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;
2174 18 get_num_components 0 4 3519 30 LVecBase2i::get_num_components 0 1 167 279
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_num_components
// Access: Published
// Description: Returns the number of elements in the vector, two.
////////////////////////////////////////////////////////////////////
54
inline int LVecBase2i::get_num_components(void) const;
2175 4 fill 0 4 3519 16 LVecBase2i::fill 0 1 168 364
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::fill
// Access: Published
// Description: 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);
2176 3 set 0 4 3519 15 LVecBase2i::set 0 1 169 213
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::set
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
42
inline void LVecBase2i::set(int x, int y);
2177 3 dot 0 4 3519 15 LVecBase2i::dot 0 1 170 213
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::dot
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
58
inline int LVecBase2i::dot(LVecBase2i const &other) const;
2178 14 length_squared 0 4 3519 26 LVecBase2i::length_squared 0 1 171 300
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::length_squared
// Access: Published
// Description: Returns the square of the vector's length, cheap and
// easy.
////////////////////////////////////////////////////////////////////
50
inline int LVecBase2i::length_squared(void) const;
2179 10 operator < 0 4 3519 22 LVecBase2i::operator < 0 1 172 498
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator <
// Access: Published
// Description: This performs a lexicographical comparison. It's of
// questionable mathematical meaning, but sometimes has
// a practical purpose for sorting unique vectors,
// especially in an STL container. Also see
// compare_to().
////////////////////////////////////////////////////////////////////
66
inline bool LVecBase2i::operator <(LVecBase2i const &other) const;
2180 11 operator == 0 4 3519 23 LVecBase2i::operator == 0 1 173 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator ==
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
67
inline bool LVecBase2i::operator ==(LVecBase2i const &other) const;
2181 11 operator != 0 4 3519 23 LVecBase2i::operator != 0 1 174 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator !=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
67
inline bool LVecBase2i::operator !=(LVecBase2i const &other) const;
2182 10 compare_to 0 4 3519 22 LVecBase2i::compare_to 0 1 175 321
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::compare_to
// Access: Published
// Description: 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;
2183 8 get_hash 0 4 3519 20 LVecBase2i::get_hash 0 1 176 257
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
////////////////////////////////////////////////////////////////////
53
inline unsigned int LVecBase2i::get_hash(void) const;
2184 8 add_hash 0 4 3519 20 LVecBase2i::add_hash 0 1 177 257
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
////////////////////////////////////////////////////////////////////
66
inline unsigned int LVecBase2i::add_hash(unsigned int hash) const;
2185 13 generate_hash 0 4 3519 25 LVecBase2i::generate_hash 0 1 178 272
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::generate_hash
// Access: Published
// Description: Adds the vector to the indicated hash generator.
////////////////////////////////////////////////////////////////////
76
inline void LVecBase2i::generate_hash(ChecksumHashGenerator &hashgen) const;
2186 10 operator - 0 68 3519 22 LVecBase2i::operator - 0 1 179 217
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::unary -
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
53
inline LVecBase2i LVecBase2i::operator -(void) const;
2187 10 operator + 0 4 3519 22 LVecBase2i::operator + 0 1 180 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::vector + vector
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
72
inline LVecBase2i LVecBase2i::operator +(LVecBase2i const &other) const;
2188 10 operator - 0 4 3519 22 LVecBase2i::operator - 0 1 181 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::vector - vector
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
72
inline LVecBase2i LVecBase2i::operator -(LVecBase2i const &other) const;
2189 10 operator * 0 4 3519 22 LVecBase2i::operator * 0 1 182 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::vector * scalar
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
59
inline LVecBase2i LVecBase2i::operator *(int scalar) const;
2190 10 operator / 0 4 3519 22 LVecBase2i::operator / 0 1 183 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::vector / scalar
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
59
inline LVecBase2i LVecBase2i::operator /(int scalar) const;
2191 11 operator += 0 4 3519 23 LVecBase2i::operator += 0 1 184 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator +=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
61
inline void LVecBase2i::operator +=(LVecBase2i const &other);
2192 11 operator -= 0 4 3519 23 LVecBase2i::operator -= 0 1 185 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator -=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
61
inline void LVecBase2i::operator -=(LVecBase2i const &other);
2193 11 operator *= 0 4 3519 23 LVecBase2i::operator *= 0 1 186 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator *=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
48
inline void LVecBase2i::operator *=(int scalar);
2194 11 operator /= 0 4 3519 23 LVecBase2i::operator /= 0 1 187 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator /=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
48
inline void LVecBase2i::operator /=(int scalar);
2195 7 __pow__ 0 4 3519 19 LVecBase2i::__pow__ 0 1 188 0
58
inline LVecBase2i LVecBase2i::__pow__(int exponent) const;
2196 8 __ipow__ 0 4 3519 20 LVecBase2i::__ipow__ 0 1 189 0
68
inline PyObject *LVecBase2i::__ipow__(PyObject *self, int exponent);
2197 4 fmax 0 4 3519 16 LVecBase2i::fmax 0 1 190 214
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::fmax
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
60
inline LVecBase2i LVecBase2i::fmax(LVecBase2i const &other);
2198 4 fmin 0 4 3519 16 LVecBase2i::fmin 0 1 191 214
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::fmin
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
60
inline LVecBase2i LVecBase2i::fmin(LVecBase2i const &other);
2199 12 almost_equal 0 4 3519 24 LVecBase2i::almost_equal 0 2 192 193 662
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::almost_equal
// Access: Published
// Description: Returns true if two vectors are memberwise equal
// within a specified tolerance.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::almost_equal
// Access: Published
// Description: 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;
2200 6 output 0 4 3519 18 LVecBase2i::output 0 1 194 216
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::output
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
51
inline void LVecBase2i::output(ostream &out) const;
2201 11 python_repr 0 4 3519 23 LVecBase2i::python_repr 0 1 195 0
96
inline void LVecBase2i::python_repr(ostream &out, basic_string< char > const &class_name) const;
2202 20 write_datagram_fixed 0 4 3519 32 LVecBase2i::write_datagram_fixed 0 1 196 642
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::write_datagram_fixed
// Access: Published
// Description: 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;
2203 19 read_datagram_fixed 0 4 3519 31 LVecBase2i::read_datagram_fixed 0 1 197 348
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::read_datagram_fixed
// Access: Published
// Description: 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);
2204 14 write_datagram 0 4 3519 26 LVecBase2i::write_datagram 0 1 198 464
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::write_datagram
// Access: Published
// Description: 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;
2205 13 read_datagram 0 4 3519 25 LVecBase2i::read_datagram 0 1 199 280
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::read_datagram
// Access: Published
// Description: Reads the vector from the Datagram using get_stdfloat().
////////////////////////////////////////////////////////////////////
64
inline void LVecBase2i::read_datagram(DatagramIterator &source);
2206 14 get_class_type 0 4 3519 26 LVecBase2i::get_class_type 0 1 200 0
51
static TypeHandle LVecBase2i::get_class_type(void);
2207 9 LVector2f 0 4 3520 20 LVector2f::LVector2f 0 4 201 202 203 204 1375
// Filename: lvector2_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector2::Default Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector2::Copy Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector2::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector2::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
181
inline LVector2f::LVector2f(void);
inline LVector2f::LVector2f(LVecBase2f const &copy);
inline LVector2f::LVector2f(float fill_value);
inline LVector2f::LVector2f(float x, float y);
2208 10 operator = 0 4 3520 21 LVector2f::operator = 0 2 205 206 456
////////////////////////////////////////////////////////////////////
// Function: LVector2::Copy Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector2::Copy Fill Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
123
inline LVector2f &LVector2f::operator =(LVecBase2f const &copy);
inline LVector2f &LVector2f::operator =(float fill_value);
2209 11 __getattr__ 0 4 3520 22 LVector2f::__getattr__ 0 1 207 0
85
inline PyObject *LVector2f::__getattr__(basic_string< char > const &attr_name) const;
2210 11 __setattr__ 0 4 3520 22 LVector2f::__setattr__ 0 1 208 0
107
inline int LVector2f::__setattr__(PyObject *self, basic_string< char > const &attr_name, PyObject *assign);
2211 4 zero 0 4 3520 15 LVector2f::zero 0 1 209 258
////////////////////////////////////////////////////////////////////
// Function: LVector2::zero Named Constructor
// Access: Public
// Description: Returns a zero-length vector.
////////////////////////////////////////////////////////////////////
53
static inline LVector2f const &LVector2f::zero(void);
2212 6 unit_x 0 4 3520 17 LVector2f::unit_x 0 1 210 255
////////////////////////////////////////////////////////////////////
// Function: LVector2::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X vector.
////////////////////////////////////////////////////////////////////
55
static inline LVector2f const &LVector2f::unit_x(void);
2213 6 unit_y 0 4 3520 17 LVector2f::unit_y 0 1 211 255
////////////////////////////////////////////////////////////////////
// Function: LVector2::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y vector.
////////////////////////////////////////////////////////////////////
55
static inline LVector2f const &LVector2f::unit_y(void);
2214 10 operator - 0 68 3520 21 LVector2f::operator - 0 1 212 213
////////////////////////////////////////////////////////////////////
// Function: LVector2::unary -
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
51
inline LVector2f LVector2f::operator -(void) const;
2215 10 operator + 0 4 3520 21 LVector2f::operator + 0 2 213 214 445
////////////////////////////////////////////////////////////////////
// Function: LVector2::vector + vecbase
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector2::vector + vector
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
141
inline LVecBase2f LVector2f::operator +(LVecBase2f const &other) const;
inline LVector2f LVector2f::operator +(LVector2f const &other) const;
2216 10 operator - 0 4 3520 21 LVector2f::operator - 0 2 215 216 445
////////////////////////////////////////////////////////////////////
// Function: LVector2::vector - vecbase
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector2::vector - vector
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
141
inline LVecBase2f LVector2f::operator -(LVecBase2f const &other) const;
inline LVector2f LVector2f::operator -(LVector2f const &other) const;
2217 10 operator * 0 4 3520 21 LVector2f::operator * 0 1 217 223
////////////////////////////////////////////////////////////////////
// Function: LVector2::operator * scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
59
inline LVector2f LVector2f::operator *(float scalar) const;
2218 10 operator / 0 4 3520 21 LVector2f::operator / 0 1 218 223
////////////////////////////////////////////////////////////////////
// Function: LVector2::operator / scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
59
inline LVector2f LVector2f::operator /(float scalar) const;
2219 7 project 0 4 3520 18 LVector2f::project 0 1 219 389
////////////////////////////////////////////////////////////////////
// Function: LVector2::project
// Access: Published
// Description: 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;
2220 16 signed_angle_rad 0 4 3520 27 LVector2f::signed_angle_rad 0 1 220 321
////////////////////////////////////////////////////////////////////
// Function: LVector2::signed_angle_rad
// Access: Published
// Description: returns the signed angled between two vectors.
// normalization is NOT necessary
////////////////////////////////////////////////////////////////////
71
inline float LVector2f::signed_angle_rad(LVector2f const &other) const;
2221 16 signed_angle_deg 0 4 3520 27 LVector2f::signed_angle_deg 0 1 221 321
////////////////////////////////////////////////////////////////////
// Function: LVector2::signed_angle_deg
// Access: Published
// Description: returns the signed angled between two vectors.
// normalization is NOT necessary
////////////////////////////////////////////////////////////////////
71
inline float LVector2f::signed_angle_deg(LVector2f const &other) const;
2222 11 python_repr 0 4 3520 22 LVector2f::python_repr 0 1 222 0
95
inline void LVector2f::python_repr(ostream &out, basic_string< char > const &class_name) const;
2223 14 get_class_type 0 4 3520 25 LVector2f::get_class_type 0 1 223 0
50
static TypeHandle LVector2f::get_class_type(void);
2224 10 ~LVector2f 0 4 3520 21 LVector2f::~LVector2f 0 0 0
28
LVector2f::~LVector2f(void);
2225 9 LVector2d 0 4 3521 20 LVector2d::LVector2d 0 4 224 225 226 227 1375
// Filename: lvector2_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector2::Default Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector2::Copy Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector2::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector2::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
184
inline LVector2d::LVector2d(void);
inline LVector2d::LVector2d(LVecBase2d const &copy);
inline LVector2d::LVector2d(double fill_value);
inline LVector2d::LVector2d(double x, double y);
2226 10 operator = 0 4 3521 21 LVector2d::operator = 0 2 228 229 456
////////////////////////////////////////////////////////////////////
// Function: LVector2::Copy Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector2::Copy Fill Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
124
inline LVector2d &LVector2d::operator =(LVecBase2d const &copy);
inline LVector2d &LVector2d::operator =(double fill_value);
2227 11 __getattr__ 0 4 3521 22 LVector2d::__getattr__ 0 1 230 0
85
inline PyObject *LVector2d::__getattr__(basic_string< char > const &attr_name) const;
2228 11 __setattr__ 0 4 3521 22 LVector2d::__setattr__ 0 1 231 0
107
inline int LVector2d::__setattr__(PyObject *self, basic_string< char > const &attr_name, PyObject *assign);
2229 4 zero 0 4 3521 15 LVector2d::zero 0 1 232 258
////////////////////////////////////////////////////////////////////
// Function: LVector2::zero Named Constructor
// Access: Public
// Description: Returns a zero-length vector.
////////////////////////////////////////////////////////////////////
53
static inline LVector2d const &LVector2d::zero(void);
2230 6 unit_x 0 4 3521 17 LVector2d::unit_x 0 1 233 255
////////////////////////////////////////////////////////////////////
// Function: LVector2::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X vector.
////////////////////////////////////////////////////////////////////
55
static inline LVector2d const &LVector2d::unit_x(void);
2231 6 unit_y 0 4 3521 17 LVector2d::unit_y 0 1 234 255
////////////////////////////////////////////////////////////////////
// Function: LVector2::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y vector.
////////////////////////////////////////////////////////////////////
55
static inline LVector2d const &LVector2d::unit_y(void);
2232 10 operator - 0 68 3521 21 LVector2d::operator - 0 1 235 213
////////////////////////////////////////////////////////////////////
// Function: LVector2::unary -
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
51
inline LVector2d LVector2d::operator -(void) const;
2233 10 operator + 0 4 3521 21 LVector2d::operator + 0 2 236 237 445
////////////////////////////////////////////////////////////////////
// Function: LVector2::vector + vecbase
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector2::vector + vector
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
141
inline LVecBase2d LVector2d::operator +(LVecBase2d const &other) const;
inline LVector2d LVector2d::operator +(LVector2d const &other) const;
2234 10 operator - 0 4 3521 21 LVector2d::operator - 0 2 238 239 445
////////////////////////////////////////////////////////////////////
// Function: LVector2::vector - vecbase
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector2::vector - vector
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
141
inline LVecBase2d LVector2d::operator -(LVecBase2d const &other) const;
inline LVector2d LVector2d::operator -(LVector2d const &other) const;
2235 10 operator * 0 4 3521 21 LVector2d::operator * 0 1 240 223
////////////////////////////////////////////////////////////////////
// Function: LVector2::operator * scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
60
inline LVector2d LVector2d::operator *(double scalar) const;
2236 10 operator / 0 4 3521 21 LVector2d::operator / 0 1 241 223
////////////////////////////////////////////////////////////////////
// Function: LVector2::operator / scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
60
inline LVector2d LVector2d::operator /(double scalar) const;
2237 7 project 0 4 3521 18 LVector2d::project 0 1 242 389
////////////////////////////////////////////////////////////////////
// Function: LVector2::project
// Access: Published
// Description: 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;
2238 16 signed_angle_rad 0 4 3521 27 LVector2d::signed_angle_rad 0 1 243 321
////////////////////////////////////////////////////////////////////
// Function: LVector2::signed_angle_rad
// Access: Published
// Description: returns the signed angled between two vectors.
// normalization is NOT necessary
////////////////////////////////////////////////////////////////////
72
inline double LVector2d::signed_angle_rad(LVector2d const &other) const;
2239 16 signed_angle_deg 0 4 3521 27 LVector2d::signed_angle_deg 0 1 244 321
////////////////////////////////////////////////////////////////////
// Function: LVector2::signed_angle_deg
// Access: Published
// Description: returns the signed angled between two vectors.
// normalization is NOT necessary
////////////////////////////////////////////////////////////////////
72
inline double LVector2d::signed_angle_deg(LVector2d const &other) const;
2240 11 python_repr 0 4 3521 22 LVector2d::python_repr 0 1 245 0
95
inline void LVector2d::python_repr(ostream &out, basic_string< char > const &class_name) const;
2241 14 get_class_type 0 4 3521 25 LVector2d::get_class_type 0 1 246 0
50
static TypeHandle LVector2d::get_class_type(void);
2242 10 ~LVector2d 0 4 3521 21 LVector2d::~LVector2d 0 0 0
28
LVector2d::~LVector2d(void);
2243 9 LVector2i 0 4 3522 20 LVector2i::LVector2i 0 4 247 248 249 250 1375
// Filename: lvector2_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector2::Default Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector2::Copy Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector2::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector2::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
175
inline LVector2i::LVector2i(void);
inline LVector2i::LVector2i(LVecBase2i const &copy);
inline LVector2i::LVector2i(int fill_value);
inline LVector2i::LVector2i(int x, int y);
2244 10 operator = 0 4 3522 21 LVector2i::operator = 0 2 251 252 456
////////////////////////////////////////////////////////////////////
// Function: LVector2::Copy Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector2::Copy Fill Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
121
inline LVector2i &LVector2i::operator =(LVecBase2i const &copy);
inline LVector2i &LVector2i::operator =(int fill_value);
2245 11 __getattr__ 0 4 3522 22 LVector2i::__getattr__ 0 1 253 0
85
inline PyObject *LVector2i::__getattr__(basic_string< char > const &attr_name) const;
2246 11 __setattr__ 0 4 3522 22 LVector2i::__setattr__ 0 1 254 0
107
inline int LVector2i::__setattr__(PyObject *self, basic_string< char > const &attr_name, PyObject *assign);
2247 4 zero 0 4 3522 15 LVector2i::zero 0 1 255 258
////////////////////////////////////////////////////////////////////
// Function: LVector2::zero Named Constructor
// Access: Public
// Description: Returns a zero-length vector.
////////////////////////////////////////////////////////////////////
53
static inline LVector2i const &LVector2i::zero(void);
2248 6 unit_x 0 4 3522 17 LVector2i::unit_x 0 1 256 255
////////////////////////////////////////////////////////////////////
// Function: LVector2::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X vector.
////////////////////////////////////////////////////////////////////
55
static inline LVector2i const &LVector2i::unit_x(void);
2249 6 unit_y 0 4 3522 17 LVector2i::unit_y 0 1 257 255
////////////////////////////////////////////////////////////////////
// Function: LVector2::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y vector.
////////////////////////////////////////////////////////////////////
55
static inline LVector2i const &LVector2i::unit_y(void);
2250 10 operator - 0 68 3522 21 LVector2i::operator - 0 1 258 213
////////////////////////////////////////////////////////////////////
// Function: LVector2::unary -
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
51
inline LVector2i LVector2i::operator -(void) const;
2251 10 operator + 0 4 3522 21 LVector2i::operator + 0 2 259 260 445
////////////////////////////////////////////////////////////////////
// Function: LVector2::vector + vecbase
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector2::vector + vector
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
141
inline LVecBase2i LVector2i::operator +(LVecBase2i const &other) const;
inline LVector2i LVector2i::operator +(LVector2i const &other) const;
2252 10 operator - 0 4 3522 21 LVector2i::operator - 0 2 261 262 445
////////////////////////////////////////////////////////////////////
// Function: LVector2::vector - vecbase
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector2::vector - vector
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
141
inline LVecBase2i LVector2i::operator -(LVecBase2i const &other) const;
inline LVector2i LVector2i::operator -(LVector2i const &other) const;
2253 10 operator * 0 4 3522 21 LVector2i::operator * 0 1 263 223
////////////////////////////////////////////////////////////////////
// Function: LVector2::operator * scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
57
inline LVector2i LVector2i::operator *(int scalar) const;
2254 10 operator / 0 4 3522 21 LVector2i::operator / 0 1 264 223
////////////////////////////////////////////////////////////////////
// Function: LVector2::operator / scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
57
inline LVector2i LVector2i::operator /(int scalar) const;
2255 11 python_repr 0 4 3522 22 LVector2i::python_repr 0 1 265 0
95
inline void LVector2i::python_repr(ostream &out, basic_string< char > const &class_name) const;
2256 14 get_class_type 0 4 3522 25 LVector2i::get_class_type 0 1 266 0
50
static TypeHandle LVector2i::get_class_type(void);
2257 10 ~LVector2i 0 4 3522 21 LVector2i::~LVector2i 0 0 0
28
LVector2i::~LVector2i(void);
2258 8 LPoint2f 0 4 3523 18 LPoint2f::LPoint2f 0 4 267 268 269 270 1370
// Filename: lpoint2_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint2::Default Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint2::Copy Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint2::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint2::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
173
inline LPoint2f::LPoint2f(void);
inline LPoint2f::LPoint2f(LVecBase2f const &copy);
inline LPoint2f::LPoint2f(float fill_value);
inline LPoint2f::LPoint2f(float x, float y);
2259 10 operator = 0 4 3523 20 LPoint2f::operator = 0 2 271 272 454
////////////////////////////////////////////////////////////////////
// Function: LPoint2::Copy Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint2::Copy Fill Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
119
inline LPoint2f &LPoint2f::operator =(LVecBase2f const &copy);
inline LPoint2f &LPoint2f::operator =(float fill_value);
2260 11 __getattr__ 0 4 3523 21 LPoint2f::__getattr__ 0 1 273 0
84
inline PyObject *LPoint2f::__getattr__(basic_string< char > const &attr_name) const;
2261 11 __setattr__ 0 4 3523 21 LPoint2f::__setattr__ 0 1 274 0
106
inline int LPoint2f::__setattr__(PyObject *self, basic_string< char > const &attr_name, PyObject *assign);
2262 4 zero 0 4 3523 14 LPoint2f::zero 0 1 275 256
////////////////////////////////////////////////////////////////////
// Function: LPoint2::zero Named Constructor
// Access: Public
// Description: Returns a zero-length point.
////////////////////////////////////////////////////////////////////
51
static inline LPoint2f const &LPoint2f::zero(void);
2263 6 unit_x 0 4 3523 16 LPoint2f::unit_x 0 1 276 253
////////////////////////////////////////////////////////////////////
// Function: LPoint2::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X point.
////////////////////////////////////////////////////////////////////
53
static inline LPoint2f const &LPoint2f::unit_x(void);
2264 6 unit_y 0 4 3523 16 LPoint2f::unit_y 0 1 277 253
////////////////////////////////////////////////////////////////////
// Function: LPoint2::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y point.
////////////////////////////////////////////////////////////////////
53
static inline LPoint2f const &LPoint2f::unit_y(void);
2265 10 operator - 0 68 3523 20 LPoint2f::operator - 0 1 278 212
////////////////////////////////////////////////////////////////////
// Function: LPoint2::unary -
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
49
inline LPoint2f LPoint2f::operator -(void) const;
2266 10 operator + 0 4 3523 20 LPoint2f::operator + 0 2 279 280 441
////////////////////////////////////////////////////////////////////
// Function: LPoint2::point + vecbase
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint2::point + vector
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
138
inline LVecBase2f LPoint2f::operator +(LVecBase2f const &other) const;
inline LPoint2f LPoint2f::operator +(LVector2f const &other) const;
2267 10 operator - 0 4 3523 20 LPoint2f::operator - 0 3 281 282 283 661
////////////////////////////////////////////////////////////////////
// Function: LPoint2::point - vecbase
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint2::point - point
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint2::point - vector
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
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;
2268 10 operator * 0 4 3523 20 LPoint2f::operator * 0 1 284 222
////////////////////////////////////////////////////////////////////
// Function: LPoint2::operator * scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
57
inline LPoint2f LPoint2f::operator *(float scalar) const;
2269 10 operator / 0 4 3523 20 LPoint2f::operator / 0 1 285 222
////////////////////////////////////////////////////////////////////
// Function: LPoint2::operator / scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
57
inline LPoint2f LPoint2f::operator /(float scalar) const;
2270 7 project 0 4 3523 17 LPoint2f::project 0 1 286 388
////////////////////////////////////////////////////////////////////
// Function: LPoint2::project
// Access: Published
// Description: 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;
2271 11 python_repr 0 4 3523 21 LPoint2f::python_repr 0 1 287 0
94
inline void LPoint2f::python_repr(ostream &out, basic_string< char > const &class_name) const;
2272 14 get_class_type 0 4 3523 24 LPoint2f::get_class_type 0 1 288 0
49
static TypeHandle LPoint2f::get_class_type(void);
2273 9 ~LPoint2f 0 4 3523 19 LPoint2f::~LPoint2f 0 0 0
26
LPoint2f::~LPoint2f(void);
2274 8 LPoint2d 0 4 3524 18 LPoint2d::LPoint2d 0 4 289 290 291 292 1370
// Filename: lpoint2_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint2::Default Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint2::Copy Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint2::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint2::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
176
inline LPoint2d::LPoint2d(void);
inline LPoint2d::LPoint2d(LVecBase2d const &copy);
inline LPoint2d::LPoint2d(double fill_value);
inline LPoint2d::LPoint2d(double x, double y);
2275 10 operator = 0 4 3524 20 LPoint2d::operator = 0 2 293 294 454
////////////////////////////////////////////////////////////////////
// Function: LPoint2::Copy Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint2::Copy Fill Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
120
inline LPoint2d &LPoint2d::operator =(LVecBase2d const &copy);
inline LPoint2d &LPoint2d::operator =(double fill_value);
2276 11 __getattr__ 0 4 3524 21 LPoint2d::__getattr__ 0 1 295 0
84
inline PyObject *LPoint2d::__getattr__(basic_string< char > const &attr_name) const;
2277 11 __setattr__ 0 4 3524 21 LPoint2d::__setattr__ 0 1 296 0
106
inline int LPoint2d::__setattr__(PyObject *self, basic_string< char > const &attr_name, PyObject *assign);
2278 4 zero 0 4 3524 14 LPoint2d::zero 0 1 297 256
////////////////////////////////////////////////////////////////////
// Function: LPoint2::zero Named Constructor
// Access: Public
// Description: Returns a zero-length point.
////////////////////////////////////////////////////////////////////
51
static inline LPoint2d const &LPoint2d::zero(void);
2279 6 unit_x 0 4 3524 16 LPoint2d::unit_x 0 1 298 253
////////////////////////////////////////////////////////////////////
// Function: LPoint2::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X point.
////////////////////////////////////////////////////////////////////
53
static inline LPoint2d const &LPoint2d::unit_x(void);
2280 6 unit_y 0 4 3524 16 LPoint2d::unit_y 0 1 299 253
////////////////////////////////////////////////////////////////////
// Function: LPoint2::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y point.
////////////////////////////////////////////////////////////////////
53
static inline LPoint2d const &LPoint2d::unit_y(void);
2281 10 operator - 0 68 3524 20 LPoint2d::operator - 0 1 300 212
////////////////////////////////////////////////////////////////////
// Function: LPoint2::unary -
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
49
inline LPoint2d LPoint2d::operator -(void) const;
2282 10 operator + 0 4 3524 20 LPoint2d::operator + 0 2 301 302 441
////////////////////////////////////////////////////////////////////
// Function: LPoint2::point + vecbase
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint2::point + vector
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
138
inline LVecBase2d LPoint2d::operator +(LVecBase2d const &other) const;
inline LPoint2d LPoint2d::operator +(LVector2d const &other) const;
2283 10 operator - 0 4 3524 20 LPoint2d::operator - 0 3 303 304 305 661
////////////////////////////////////////////////////////////////////
// Function: LPoint2::point - vecbase
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint2::point - point
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint2::point - vector
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
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;
2284 10 operator * 0 4 3524 20 LPoint2d::operator * 0 1 306 222
////////////////////////////////////////////////////////////////////
// Function: LPoint2::operator * scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
58
inline LPoint2d LPoint2d::operator *(double scalar) const;
2285 10 operator / 0 4 3524 20 LPoint2d::operator / 0 1 307 222
////////////////////////////////////////////////////////////////////
// Function: LPoint2::operator / scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
58
inline LPoint2d LPoint2d::operator /(double scalar) const;
2286 7 project 0 4 3524 17 LPoint2d::project 0 1 308 388
////////////////////////////////////////////////////////////////////
// Function: LPoint2::project
// Access: Published
// Description: 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;
2287 11 python_repr 0 4 3524 21 LPoint2d::python_repr 0 1 309 0
94
inline void LPoint2d::python_repr(ostream &out, basic_string< char > const &class_name) const;
2288 14 get_class_type 0 4 3524 24 LPoint2d::get_class_type 0 1 310 0
49
static TypeHandle LPoint2d::get_class_type(void);
2289 9 ~LPoint2d 0 4 3524 19 LPoint2d::~LPoint2d 0 0 0
26
LPoint2d::~LPoint2d(void);
2290 8 LPoint2i 0 4 3525 18 LPoint2i::LPoint2i 0 4 311 312 313 314 1370
// Filename: lpoint2_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint2::Default Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint2::Copy Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint2::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint2::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
167
inline LPoint2i::LPoint2i(void);
inline LPoint2i::LPoint2i(LVecBase2i const &copy);
inline LPoint2i::LPoint2i(int fill_value);
inline LPoint2i::LPoint2i(int x, int y);
2291 10 operator = 0 4 3525 20 LPoint2i::operator = 0 2 315 316 454
////////////////////////////////////////////////////////////////////
// Function: LPoint2::Copy Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint2::Copy Fill Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
117
inline LPoint2i &LPoint2i::operator =(LVecBase2i const &copy);
inline LPoint2i &LPoint2i::operator =(int fill_value);
2292 11 __getattr__ 0 4 3525 21 LPoint2i::__getattr__ 0 1 317 0
84
inline PyObject *LPoint2i::__getattr__(basic_string< char > const &attr_name) const;
2293 11 __setattr__ 0 4 3525 21 LPoint2i::__setattr__ 0 1 318 0
106
inline int LPoint2i::__setattr__(PyObject *self, basic_string< char > const &attr_name, PyObject *assign);
2294 4 zero 0 4 3525 14 LPoint2i::zero 0 1 319 256
////////////////////////////////////////////////////////////////////
// Function: LPoint2::zero Named Constructor
// Access: Public
// Description: Returns a zero-length point.
////////////////////////////////////////////////////////////////////
51
static inline LPoint2i const &LPoint2i::zero(void);
2295 6 unit_x 0 4 3525 16 LPoint2i::unit_x 0 1 320 253
////////////////////////////////////////////////////////////////////
// Function: LPoint2::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X point.
////////////////////////////////////////////////////////////////////
53
static inline LPoint2i const &LPoint2i::unit_x(void);
2296 6 unit_y 0 4 3525 16 LPoint2i::unit_y 0 1 321 253
////////////////////////////////////////////////////////////////////
// Function: LPoint2::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y point.
////////////////////////////////////////////////////////////////////
53
static inline LPoint2i const &LPoint2i::unit_y(void);
2297 10 operator - 0 68 3525 20 LPoint2i::operator - 0 1 322 212
////////////////////////////////////////////////////////////////////
// Function: LPoint2::unary -
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
49
inline LPoint2i LPoint2i::operator -(void) const;
2298 10 operator + 0 4 3525 20 LPoint2i::operator + 0 2 323 324 441
////////////////////////////////////////////////////////////////////
// Function: LPoint2::point + vecbase
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint2::point + vector
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
138
inline LVecBase2i LPoint2i::operator +(LVecBase2i const &other) const;
inline LPoint2i LPoint2i::operator +(LVector2i const &other) const;
2299 10 operator - 0 4 3525 20 LPoint2i::operator - 0 3 325 326 327 661
////////////////////////////////////////////////////////////////////
// Function: LPoint2::point - vecbase
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint2::point - point
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint2::point - vector
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
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;
2300 10 operator * 0 4 3525 20 LPoint2i::operator * 0 1 328 222
////////////////////////////////////////////////////////////////////
// Function: LPoint2::operator * scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
55
inline LPoint2i LPoint2i::operator *(int scalar) const;
2301 10 operator / 0 4 3525 20 LPoint2i::operator / 0 1 329 222
////////////////////////////////////////////////////////////////////
// Function: LPoint2::operator / scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
55
inline LPoint2i LPoint2i::operator /(int scalar) const;
2302 11 python_repr 0 4 3525 21 LPoint2i::python_repr 0 1 330 0
94
inline void LPoint2i::python_repr(ostream &out, basic_string< char > const &class_name) const;
2303 14 get_class_type 0 4 3525 24 LPoint2i::get_class_type 0 1 331 0
49
static TypeHandle LPoint2i::get_class_type(void);
2304 9 ~LPoint2i 0 4 3525 19 LPoint2i::~LPoint2i 0 0 0
26
LPoint2i::~LPoint2i(void);
2305 10 LVecBase3f 0 4 3526 22 LVecBase3f::LVecBase3f 0 5 332 333 334 335 336 1603
// Filename: lvecBase3_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Default Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Copy Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
262
inline LVecBase3f::LVecBase3f(void);
inline LVecBase3f::LVecBase3f(LVecBase3f const &copy);
inline LVecBase3f::LVecBase3f(float fill_value);
inline LVecBase3f::LVecBase3f(float x, float y, float z);
inline LVecBase3f::LVecBase3f(LVecBase2f const &copy, float z);
2306 10 operator = 0 4 3526 22 LVecBase3f::operator = 0 2 337 338 464
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Copy Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Fill Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
127
inline LVecBase3f &LVecBase3f::operator =(LVecBase3f const &copy);
inline LVecBase3f &LVecBase3f::operator =(float fill_value);
2307 12 operator new 0 4 3526 24 LVecBase3f::operator new 0 1 339 0
126
inline void *LVecBase3f::operator new(unsigned int size);
inline void *LVecBase3f::operator new(unsigned int size, void *ptr);
2308 15 operator delete 0 4 3526 27 LVecBase3f::operator delete 0 0 0
108
inline void LVecBase3f::operator delete(void *ptr);
inline void LVecBase3f::operator delete(void *, void *);
2309 12 validate_ptr 0 4 3526 24 LVecBase3f::validate_ptr 0 0 0
61
static inline bool LVecBase3f::validate_ptr(void const *ptr);
2310 4 zero 0 4 3526 16 LVecBase3f::zero 0 1 340 259
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::zero Named Constructor
// Access: Public
// Description: Returns a zero-length vector.
////////////////////////////////////////////////////////////////////
55
static inline LVecBase3f const &LVecBase3f::zero(void);
2311 6 unit_x 0 4 3526 18 LVecBase3f::unit_x 0 1 341 256
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X vector.
////////////////////////////////////////////////////////////////////
57
static inline LVecBase3f const &LVecBase3f::unit_x(void);
2312 6 unit_y 0 4 3526 18 LVecBase3f::unit_y 0 1 342 256
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y vector.
////////////////////////////////////////////////////////////////////
57
static inline LVecBase3f const &LVecBase3f::unit_y(void);
2313 6 unit_z 0 4 3526 18 LVecBase3f::unit_z 0 1 343 256
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::unit_z Named Constructor
// Access: Public
// Description: Returns a unit Z vector.
////////////////////////////////////////////////////////////////////
57
static inline LVecBase3f const &LVecBase3f::unit_z(void);
2314 11 ~LVecBase3f 0 4 3526 23 LVecBase3f::~LVecBase3f 0 0 217
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Destructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
37
inline LVecBase3f::~LVecBase3f(void);
2315 10 __reduce__ 0 4 3526 22 LVecBase3f::__reduce__ 0 1 344 0
62
inline PyObject *LVecBase3f::__reduce__(PyObject *self) const;
2316 11 __getattr__ 0 4 3526 23 LVecBase3f::__getattr__ 0 1 345 0
86
inline PyObject *LVecBase3f::__getattr__(basic_string< char > const &attr_name) const;
2317 11 __setattr__ 0 4 3526 23 LVecBase3f::__setattr__ 0 1 346 0
108
inline int LVecBase3f::__setattr__(PyObject *self, basic_string< char > const &attr_name, PyObject *assign);
2318 11 operator [] 0 4 3526 23 LVecBase3f::operator [] 0 2 347 348 450
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Indexing Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Indexing Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
96
inline float LVecBase3f::operator [](int i) const;
inline float &LVecBase3f::operator [](int i);
2319 11 __setitem__ 0 4 3526 23 LVecBase3f::__setitem__ 0 1 349 0
52
inline void LVecBase3f::__setitem__(int i, float v);
2320 4 size 0 4 3526 16 LVecBase3f::size 0 1 350 271
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::size
// Access: Public, Static
// Description: Returns 3: the number of components of a LVecBase3.
////////////////////////////////////////////////////////////////////
41
static inline int LVecBase3f::size(void);
2321 6 is_nan 0 4 3526 18 LVecBase3f::is_nan 0 1 351 308
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::is_nan
// Access: Public
// Description: Returns true if any component of the vector is
// not-a-number, false otherwise.
////////////////////////////////////////////////////////////////////
43
inline bool LVecBase3f::is_nan(void) const;
2322 8 get_cell 0 4 3526 20 LVecBase3f::get_cell 0 1 352 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_cell
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
47
inline float LVecBase3f::get_cell(int i) const;
2323 5 get_x 0 4 3526 17 LVecBase3f::get_x 0 1 353 212
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_x
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
43
inline float LVecBase3f::get_x(void) const;
2324 5 get_y 0 4 3526 17 LVecBase3f::get_y 0 1 354 212
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_y
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
43
inline float LVecBase3f::get_y(void) const;
2325 5 get_z 0 4 3526 17 LVecBase3f::get_z 0 1 355 212
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_z
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
43
inline float LVecBase3f::get_z(void) const;
2326 8 set_cell 0 4 3526 20 LVecBase3f::set_cell 0 1 356 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::set_cell
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
53
inline void LVecBase3f::set_cell(int i, float value);
2327 5 set_x 0 4 3526 17 LVecBase3f::set_x 0 1 357 212
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::set_x
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
43
inline void LVecBase3f::set_x(float value);
2328 5 set_y 0 4 3526 17 LVecBase3f::set_y 0 1 358 212
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::set_y
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
43
inline void LVecBase3f::set_y(float value);
2329 5 set_z 0 4 3526 17 LVecBase3f::set_z 0 1 359 212
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::set_z
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
43
inline void LVecBase3f::set_z(float value);
2330 6 get_xy 0 4 3526 18 LVecBase3f::get_xy 0 1 360 317
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_xy
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first two components of this vector.
////////////////////////////////////////////////////////////////////
49
inline LVecBase2f LVecBase3f::get_xy(void) const;
2331 6 get_xz 0 4 3526 18 LVecBase3f::get_xz 0 1 361 322
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_xz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first and last components of this vector.
////////////////////////////////////////////////////////////////////
49
inline LVecBase2f LVecBase3f::get_xz(void) const;
2332 6 get_yz 0 4 3526 18 LVecBase3f::get_yz 0 1 362 316
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_yz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// last two components of this vector.
////////////////////////////////////////////////////////////////////
49
inline LVecBase2f LVecBase3f::get_yz(void) const;
2333 11 add_to_cell 0 4 3526 23 LVecBase3f::add_to_cell 0 1 363 374
// 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:
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::add_to_cell
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
56
inline void LVecBase3f::add_to_cell(int i, float value);
2334 5 add_x 0 4 3526 17 LVecBase3f::add_x 0 1 364 368
// 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:
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::add_x
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
43
inline void LVecBase3f::add_x(float value);
2335 5 add_y 0 4 3526 17 LVecBase3f::add_y 0 1 365 212
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::add_y
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
43
inline void LVecBase3f::add_y(float value);
2336 5 add_z 0 4 3526 17 LVecBase3f::add_z 0 1 366 212
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::add_z
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
43
inline void LVecBase3f::add_z(float value);
2337 8 get_data 0 4 3526 20 LVecBase3f::get_data 0 1 367 399
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_data
// Access: Public
// Description: 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;
2338 18 get_num_components 0 4 3526 30 LVecBase3f::get_num_components 0 1 368 278
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_num_components
// Access: Public
// Description: Returns the number of elements in the vector, three.
////////////////////////////////////////////////////////////////////
54
inline int LVecBase3f::get_num_components(void) const;
2339 4 fill 0 4 3526 16 LVecBase3f::fill 0 1 369 364
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::fill
// Access: Published
// Description: 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);
2340 3 set 0 4 3526 15 LVecBase3f::set 0 1 370 213
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::set
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
55
inline void LVecBase3f::set(float x, float y, float z);
2341 3 dot 0 4 3526 15 LVecBase3f::dot 0 1 371 213
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::dot
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
60
inline float LVecBase3f::dot(LVecBase3f const &other) const;
2342 14 length_squared 0 4 3526 26 LVecBase3f::length_squared 0 1 372 300
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::length_squared
// Access: Published
// Description: Returns the square of the vector's length, cheap and
// easy.
////////////////////////////////////////////////////////////////////
52
inline float LVecBase3f::length_squared(void) const;
2343 6 length 0 4 3526 18 LVecBase3f::length 0 1 373 295
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::length
// Access: Published
// Description: Returns the length of the vector, by the Pythagorean
// theorem.
////////////////////////////////////////////////////////////////////
44
inline float LVecBase3f::length(void) const;
2344 9 normalize 0 4 3526 21 LVecBase3f::normalize 0 1 374 367
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::normalize
// Access: Published
// Description: 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);
2345 7 project 0 4 3526 19 LVecBase3f::project 0 1 375 390
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::project
// Access: Published
// Description: 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;
2346 5 cross 0 4 3526 17 LVecBase3f::cross 0 1 376 235
// FLOATTYPE_IS_INT
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::cross
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
67
inline LVecBase3f LVecBase3f::cross(LVecBase3f const &other) const;
2347 10 operator < 0 4 3526 22 LVecBase3f::operator < 0 1 377 498
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator <
// Access: Published
// Description: This performs a lexicographical comparison. It's of
// questionable mathematical meaning, but sometimes has
// a practical purpose for sorting unique vectors,
// especially in an STL container. Also see
// compare_to().
////////////////////////////////////////////////////////////////////
66
inline bool LVecBase3f::operator <(LVecBase3f const &other) const;
2348 11 operator == 0 4 3526 23 LVecBase3f::operator == 0 1 378 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator ==
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
67
inline bool LVecBase3f::operator ==(LVecBase3f const &other) const;
2349 11 operator != 0 4 3526 23 LVecBase3f::operator != 0 1 379 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator !=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
67
inline bool LVecBase3f::operator !=(LVecBase3f const &other) const;
2350 20 get_standardized_hpr 0 4 3526 32 LVecBase3f::get_standardized_hpr 0 1 380 1030
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_standardized_hpr
// Access: Published
// Description: 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;
2351 10 compare_to 0 4 3526 22 LVecBase3f::compare_to 0 2 381 382 827
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::compare_to
// Access: Published
// Description: This flavor of compare_to uses a default threshold
// value based on the numeric type.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::compare_to
// Access: Published
// Description: 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;
2352 8 get_hash 0 4 3526 20 LVecBase3f::get_hash 0 2 383 384 516
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
////////////////////////////////////////////////////////////////////
118
inline unsigned int LVecBase3f::get_hash(void) const;
inline unsigned int LVecBase3f::get_hash(float threshold) const;
2353 8 add_hash 0 4 3526 20 LVecBase3f::add_hash 0 2 385 386 516
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
////////////////////////////////////////////////////////////////////
150
inline unsigned int LVecBase3f::add_hash(unsigned int hash) const;
inline unsigned int LVecBase3f::add_hash(unsigned int hash, float threshold) const;
2354 13 generate_hash 0 4 3526 25 LVecBase3f::generate_hash 0 2 387 388 546
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::generate_hash
// Access: Published
// Description: Adds the vector to the indicated hash generator.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::generate_hash
// Access: Published
// Description: 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;
2355 10 operator - 0 68 3526 22 LVecBase3f::operator - 0 1 389 237
// FLOATTYPE_IS_INT
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::unary -
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
53
inline LVecBase3f LVecBase3f::operator -(void) const;
2356 10 operator + 0 4 3526 22 LVecBase3f::operator + 0 1 390 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::vector + vector
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
72
inline LVecBase3f LVecBase3f::operator +(LVecBase3f const &other) const;
2357 10 operator - 0 4 3526 22 LVecBase3f::operator - 0 1 391 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::vector - vector
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
72
inline LVecBase3f LVecBase3f::operator -(LVecBase3f const &other) const;
2358 10 operator * 0 4 3526 22 LVecBase3f::operator * 0 1 392 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::vector * scalar
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
61
inline LVecBase3f LVecBase3f::operator *(float scalar) const;
2359 10 operator / 0 4 3526 22 LVecBase3f::operator / 0 1 393 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::vector / scalar
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
61
inline LVecBase3f LVecBase3f::operator /(float scalar) const;
2360 11 operator += 0 4 3526 23 LVecBase3f::operator += 0 1 394 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator +=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
61
inline void LVecBase3f::operator +=(LVecBase3f const &other);
2361 11 operator -= 0 4 3526 23 LVecBase3f::operator -= 0 1 395 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator -=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
61
inline void LVecBase3f::operator -=(LVecBase3f const &other);
2362 11 operator *= 0 4 3526 23 LVecBase3f::operator *= 0 1 396 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator *=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
50
inline void LVecBase3f::operator *=(float scalar);
2363 11 operator /= 0 4 3526 23 LVecBase3f::operator /= 0 1 397 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator /=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
50
inline void LVecBase3f::operator /=(float scalar);
2364 7 __pow__ 0 4 3526 19 LVecBase3f::__pow__ 0 1 398 0
60
inline LVecBase3f LVecBase3f::__pow__(float exponent) const;
2365 8 __ipow__ 0 4 3526 20 LVecBase3f::__ipow__ 0 1 399 0
70
inline PyObject *LVecBase3f::__ipow__(PyObject *self, float exponent);
2366 4 fmax 0 4 3526 16 LVecBase3f::fmax 0 1 400 211
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::fmax
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
60
inline LVecBase3f LVecBase3f::fmax(LVecBase3f const &other);
2367 4 fmin 0 4 3526 16 LVecBase3f::fmin 0 1 401 211
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::fmin
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
60
inline LVecBase3f LVecBase3f::fmin(LVecBase3f const &other);
2368 10 cross_into 0 4 3526 22 LVecBase3f::cross_into 0 1 402 241
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::cross product (with assignment)
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
60
inline void LVecBase3f::cross_into(LVecBase3f const &other);
2369 12 almost_equal 0 4 3526 24 LVecBase3f::almost_equal 0 2 403 404 662
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::almost_equal
// Access: Published
// Description: Returns true if two vectors are memberwise equal
// within a specified tolerance.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::almost_equal
// Access: Published
// Description: 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;
2370 6 output 0 4 3526 18 LVecBase3f::output 0 1 405 216
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::output
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
51
inline void LVecBase3f::output(ostream &out) const;
2371 11 python_repr 0 4 3526 23 LVecBase3f::python_repr 0 1 406 0
96
inline void LVecBase3f::python_repr(ostream &out, basic_string< char > const &class_name) const;
2372 20 write_datagram_fixed 0 4 3526 32 LVecBase3f::write_datagram_fixed 0 1 407 642
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::write_datagram_fixed
// Access: Published
// Description: 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;
2373 19 read_datagram_fixed 0 4 3526 31 LVecBase3f::read_datagram_fixed 0 1 408 348
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::read_datagram_fixed
// Access: Published
// Description: 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);
2374 14 write_datagram 0 4 3526 26 LVecBase3f::write_datagram 0 1 409 464
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::write_datagram
// Access: Published
// Description: 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;
2375 13 read_datagram 0 4 3526 25 LVecBase3f::read_datagram 0 1 410 280
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::read_datagram
// Access: Published
// Description: Reads the vector from the Datagram using get_stdfloat().
////////////////////////////////////////////////////////////////////
64
inline void LVecBase3f::read_datagram(DatagramIterator &source);
2376 14 get_class_type 0 4 3526 26 LVecBase3f::get_class_type 0 1 411 0
51
static TypeHandle LVecBase3f::get_class_type(void);
2377 10 LVecBase3d 0 4 3527 22 LVecBase3d::LVecBase3d 0 5 412 413 414 415 416 1603
// Filename: lvecBase3_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Default Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Copy Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
267
inline LVecBase3d::LVecBase3d(void);
inline LVecBase3d::LVecBase3d(LVecBase3d const &copy);
inline LVecBase3d::LVecBase3d(double fill_value);
inline LVecBase3d::LVecBase3d(double x, double y, double z);
inline LVecBase3d::LVecBase3d(LVecBase2d const &copy, double z);
2378 10 operator = 0 4 3527 22 LVecBase3d::operator = 0 2 417 418 464
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Copy Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Fill Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
128
inline LVecBase3d &LVecBase3d::operator =(LVecBase3d const &copy);
inline LVecBase3d &LVecBase3d::operator =(double fill_value);
2379 12 operator new 0 4 3527 24 LVecBase3d::operator new 0 1 419 0
126
inline void *LVecBase3d::operator new(unsigned int size);
inline void *LVecBase3d::operator new(unsigned int size, void *ptr);
2380 15 operator delete 0 4 3527 27 LVecBase3d::operator delete 0 0 0
108
inline void LVecBase3d::operator delete(void *ptr);
inline void LVecBase3d::operator delete(void *, void *);
2381 12 validate_ptr 0 4 3527 24 LVecBase3d::validate_ptr 0 0 0
61
static inline bool LVecBase3d::validate_ptr(void const *ptr);
2382 4 zero 0 4 3527 16 LVecBase3d::zero 0 1 420 259
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::zero Named Constructor
// Access: Public
// Description: Returns a zero-length vector.
////////////////////////////////////////////////////////////////////
55
static inline LVecBase3d const &LVecBase3d::zero(void);
2383 6 unit_x 0 4 3527 18 LVecBase3d::unit_x 0 1 421 256
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X vector.
////////////////////////////////////////////////////////////////////
57
static inline LVecBase3d const &LVecBase3d::unit_x(void);
2384 6 unit_y 0 4 3527 18 LVecBase3d::unit_y 0 1 422 256
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y vector.
////////////////////////////////////////////////////////////////////
57
static inline LVecBase3d const &LVecBase3d::unit_y(void);
2385 6 unit_z 0 4 3527 18 LVecBase3d::unit_z 0 1 423 256
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::unit_z Named Constructor
// Access: Public
// Description: Returns a unit Z vector.
////////////////////////////////////////////////////////////////////
57
static inline LVecBase3d const &LVecBase3d::unit_z(void);
2386 11 ~LVecBase3d 0 4 3527 23 LVecBase3d::~LVecBase3d 0 0 217
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Destructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
37
inline LVecBase3d::~LVecBase3d(void);
2387 10 __reduce__ 0 4 3527 22 LVecBase3d::__reduce__ 0 1 424 0
62
inline PyObject *LVecBase3d::__reduce__(PyObject *self) const;
2388 11 __getattr__ 0 4 3527 23 LVecBase3d::__getattr__ 0 1 425 0
86
inline PyObject *LVecBase3d::__getattr__(basic_string< char > const &attr_name) const;
2389 11 __setattr__ 0 4 3527 23 LVecBase3d::__setattr__ 0 1 426 0
108
inline int LVecBase3d::__setattr__(PyObject *self, basic_string< char > const &attr_name, PyObject *assign);
2390 11 operator [] 0 4 3527 23 LVecBase3d::operator [] 0 2 427 428 450
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Indexing Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Indexing Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
98
inline double LVecBase3d::operator [](int i) const;
inline double &LVecBase3d::operator [](int i);
2391 11 __setitem__ 0 4 3527 23 LVecBase3d::__setitem__ 0 1 429 0
53
inline void LVecBase3d::__setitem__(int i, double v);
2392 4 size 0 4 3527 16 LVecBase3d::size 0 1 430 271
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::size
// Access: Public, Static
// Description: Returns 3: the number of components of a LVecBase3.
////////////////////////////////////////////////////////////////////
41
static inline int LVecBase3d::size(void);
2393 6 is_nan 0 4 3527 18 LVecBase3d::is_nan 0 1 431 308
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::is_nan
// Access: Public
// Description: Returns true if any component of the vector is
// not-a-number, false otherwise.
////////////////////////////////////////////////////////////////////
43
inline bool LVecBase3d::is_nan(void) const;
2394 8 get_cell 0 4 3527 20 LVecBase3d::get_cell 0 1 432 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_cell
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
48
inline double LVecBase3d::get_cell(int i) const;
2395 5 get_x 0 4 3527 17 LVecBase3d::get_x 0 1 433 212
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_x
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
44
inline double LVecBase3d::get_x(void) const;
2396 5 get_y 0 4 3527 17 LVecBase3d::get_y 0 1 434 212
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_y
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
44
inline double LVecBase3d::get_y(void) const;
2397 5 get_z 0 4 3527 17 LVecBase3d::get_z 0 1 435 212
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_z
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
44
inline double LVecBase3d::get_z(void) const;
2398 8 set_cell 0 4 3527 20 LVecBase3d::set_cell 0 1 436 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::set_cell
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
54
inline void LVecBase3d::set_cell(int i, double value);
2399 5 set_x 0 4 3527 17 LVecBase3d::set_x 0 1 437 212
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::set_x
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
44
inline void LVecBase3d::set_x(double value);
2400 5 set_y 0 4 3527 17 LVecBase3d::set_y 0 1 438 212
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::set_y
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
44
inline void LVecBase3d::set_y(double value);
2401 5 set_z 0 4 3527 17 LVecBase3d::set_z 0 1 439 212
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::set_z
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
44
inline void LVecBase3d::set_z(double value);
2402 6 get_xy 0 4 3527 18 LVecBase3d::get_xy 0 1 440 317
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_xy
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first two components of this vector.
////////////////////////////////////////////////////////////////////
49
inline LVecBase2d LVecBase3d::get_xy(void) const;
2403 6 get_xz 0 4 3527 18 LVecBase3d::get_xz 0 1 441 322
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_xz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first and last components of this vector.
////////////////////////////////////////////////////////////////////
49
inline LVecBase2d LVecBase3d::get_xz(void) const;
2404 6 get_yz 0 4 3527 18 LVecBase3d::get_yz 0 1 442 316
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_yz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// last two components of this vector.
////////////////////////////////////////////////////////////////////
49
inline LVecBase2d LVecBase3d::get_yz(void) const;
2405 11 add_to_cell 0 4 3527 23 LVecBase3d::add_to_cell 0 1 443 374
// 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:
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::add_to_cell
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
57
inline void LVecBase3d::add_to_cell(int i, double value);
2406 5 add_x 0 4 3527 17 LVecBase3d::add_x 0 1 444 368
// 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:
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::add_x
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
44
inline void LVecBase3d::add_x(double value);
2407 5 add_y 0 4 3527 17 LVecBase3d::add_y 0 1 445 212
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::add_y
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
44
inline void LVecBase3d::add_y(double value);
2408 5 add_z 0 4 3527 17 LVecBase3d::add_z 0 1 446 212
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::add_z
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
44
inline void LVecBase3d::add_z(double value);
2409 8 get_data 0 4 3527 20 LVecBase3d::get_data 0 1 447 399
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_data
// Access: Public
// Description: 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;
2410 18 get_num_components 0 4 3527 30 LVecBase3d::get_num_components 0 1 448 278
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_num_components
// Access: Public
// Description: Returns the number of elements in the vector, three.
////////////////////////////////////////////////////////////////////
54
inline int LVecBase3d::get_num_components(void) const;
2411 4 fill 0 4 3527 16 LVecBase3d::fill 0 1 449 364
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::fill
// Access: Published
// Description: 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);
2412 3 set 0 4 3527 15 LVecBase3d::set 0 1 450 213
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::set
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
58
inline void LVecBase3d::set(double x, double y, double z);
2413 3 dot 0 4 3527 15 LVecBase3d::dot 0 1 451 213
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::dot
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
61
inline double LVecBase3d::dot(LVecBase3d const &other) const;
2414 14 length_squared 0 4 3527 26 LVecBase3d::length_squared 0 1 452 300
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::length_squared
// Access: Published
// Description: Returns the square of the vector's length, cheap and
// easy.
////////////////////////////////////////////////////////////////////
53
inline double LVecBase3d::length_squared(void) const;
2415 6 length 0 4 3527 18 LVecBase3d::length 0 1 453 295
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::length
// Access: Published
// Description: Returns the length of the vector, by the Pythagorean
// theorem.
////////////////////////////////////////////////////////////////////
45
inline double LVecBase3d::length(void) const;
2416 9 normalize 0 4 3527 21 LVecBase3d::normalize 0 1 454 367
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::normalize
// Access: Published
// Description: 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);
2417 7 project 0 4 3527 19 LVecBase3d::project 0 1 455 390
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::project
// Access: Published
// Description: 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;
2418 5 cross 0 4 3527 17 LVecBase3d::cross 0 1 456 235
// FLOATTYPE_IS_INT
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::cross
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
67
inline LVecBase3d LVecBase3d::cross(LVecBase3d const &other) const;
2419 10 operator < 0 4 3527 22 LVecBase3d::operator < 0 1 457 498
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator <
// Access: Published
// Description: This performs a lexicographical comparison. It's of
// questionable mathematical meaning, but sometimes has
// a practical purpose for sorting unique vectors,
// especially in an STL container. Also see
// compare_to().
////////////////////////////////////////////////////////////////////
66
inline bool LVecBase3d::operator <(LVecBase3d const &other) const;
2420 11 operator == 0 4 3527 23 LVecBase3d::operator == 0 1 458 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator ==
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
67
inline bool LVecBase3d::operator ==(LVecBase3d const &other) const;
2421 11 operator != 0 4 3527 23 LVecBase3d::operator != 0 1 459 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator !=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
67
inline bool LVecBase3d::operator !=(LVecBase3d const &other) const;
2422 20 get_standardized_hpr 0 4 3527 32 LVecBase3d::get_standardized_hpr 0 1 460 1030
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_standardized_hpr
// Access: Published
// Description: 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;
2423 10 compare_to 0 4 3527 22 LVecBase3d::compare_to 0 2 461 462 827
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::compare_to
// Access: Published
// Description: This flavor of compare_to uses a default threshold
// value based on the numeric type.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::compare_to
// Access: Published
// Description: 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;
2424 8 get_hash 0 4 3527 20 LVecBase3d::get_hash 0 2 463 464 516
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
////////////////////////////////////////////////////////////////////
119
inline unsigned int LVecBase3d::get_hash(void) const;
inline unsigned int LVecBase3d::get_hash(double threshold) const;
2425 8 add_hash 0 4 3527 20 LVecBase3d::add_hash 0 2 465 466 516
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
////////////////////////////////////////////////////////////////////
151
inline unsigned int LVecBase3d::add_hash(unsigned int hash) const;
inline unsigned int LVecBase3d::add_hash(unsigned int hash, double threshold) const;
2426 13 generate_hash 0 4 3527 25 LVecBase3d::generate_hash 0 2 467 468 546
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::generate_hash
// Access: Published
// Description: Adds the vector to the indicated hash generator.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::generate_hash
// Access: Published
// Description: 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;
2427 10 operator - 0 68 3527 22 LVecBase3d::operator - 0 1 469 237
// FLOATTYPE_IS_INT
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::unary -
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
53
inline LVecBase3d LVecBase3d::operator -(void) const;
2428 10 operator + 0 4 3527 22 LVecBase3d::operator + 0 1 470 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::vector + vector
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
72
inline LVecBase3d LVecBase3d::operator +(LVecBase3d const &other) const;
2429 10 operator - 0 4 3527 22 LVecBase3d::operator - 0 1 471 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::vector - vector
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
72
inline LVecBase3d LVecBase3d::operator -(LVecBase3d const &other) const;
2430 10 operator * 0 4 3527 22 LVecBase3d::operator * 0 1 472 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::vector * scalar
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
62
inline LVecBase3d LVecBase3d::operator *(double scalar) const;
2431 10 operator / 0 4 3527 22 LVecBase3d::operator / 0 1 473 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::vector / scalar
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
62
inline LVecBase3d LVecBase3d::operator /(double scalar) const;
2432 11 operator += 0 4 3527 23 LVecBase3d::operator += 0 1 474 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator +=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
61
inline void LVecBase3d::operator +=(LVecBase3d const &other);
2433 11 operator -= 0 4 3527 23 LVecBase3d::operator -= 0 1 475 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator -=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
61
inline void LVecBase3d::operator -=(LVecBase3d const &other);
2434 11 operator *= 0 4 3527 23 LVecBase3d::operator *= 0 1 476 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator *=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
51
inline void LVecBase3d::operator *=(double scalar);
2435 11 operator /= 0 4 3527 23 LVecBase3d::operator /= 0 1 477 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator /=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
51
inline void LVecBase3d::operator /=(double scalar);
2436 7 __pow__ 0 4 3527 19 LVecBase3d::__pow__ 0 1 478 0
61
inline LVecBase3d LVecBase3d::__pow__(double exponent) const;
2437 8 __ipow__ 0 4 3527 20 LVecBase3d::__ipow__ 0 1 479 0
71
inline PyObject *LVecBase3d::__ipow__(PyObject *self, double exponent);
2438 4 fmax 0 4 3527 16 LVecBase3d::fmax 0 1 480 211
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::fmax
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
60
inline LVecBase3d LVecBase3d::fmax(LVecBase3d const &other);
2439 4 fmin 0 4 3527 16 LVecBase3d::fmin 0 1 481 211
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::fmin
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
60
inline LVecBase3d LVecBase3d::fmin(LVecBase3d const &other);
2440 10 cross_into 0 4 3527 22 LVecBase3d::cross_into 0 1 482 241
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::cross product (with assignment)
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
60
inline void LVecBase3d::cross_into(LVecBase3d const &other);
2441 12 almost_equal 0 4 3527 24 LVecBase3d::almost_equal 0 2 483 484 662
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::almost_equal
// Access: Published
// Description: Returns true if two vectors are memberwise equal
// within a specified tolerance.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::almost_equal
// Access: Published
// Description: 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;
2442 6 output 0 4 3527 18 LVecBase3d::output 0 1 485 216
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::output
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
51
inline void LVecBase3d::output(ostream &out) const;
2443 11 python_repr 0 4 3527 23 LVecBase3d::python_repr 0 1 486 0
96
inline void LVecBase3d::python_repr(ostream &out, basic_string< char > const &class_name) const;
2444 20 write_datagram_fixed 0 4 3527 32 LVecBase3d::write_datagram_fixed 0 1 487 642
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::write_datagram_fixed
// Access: Published
// Description: 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;
2445 19 read_datagram_fixed 0 4 3527 31 LVecBase3d::read_datagram_fixed 0 1 488 348
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::read_datagram_fixed
// Access: Published
// Description: 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);
2446 14 write_datagram 0 4 3527 26 LVecBase3d::write_datagram 0 1 489 464
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::write_datagram
// Access: Published
// Description: 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;
2447 13 read_datagram 0 4 3527 25 LVecBase3d::read_datagram 0 1 490 280
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::read_datagram
// Access: Published
// Description: Reads the vector from the Datagram using get_stdfloat().
////////////////////////////////////////////////////////////////////
64
inline void LVecBase3d::read_datagram(DatagramIterator &source);
2448 14 get_class_type 0 4 3527 26 LVecBase3d::get_class_type 0 1 491 0
51
static TypeHandle LVecBase3d::get_class_type(void);
2449 10 LVecBase3i 0 4 3528 22 LVecBase3i::LVecBase3i 0 5 492 493 494 495 496 1603
// Filename: lvecBase3_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Default Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Copy Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
252
inline LVecBase3i::LVecBase3i(void);
inline LVecBase3i::LVecBase3i(LVecBase3i const &copy);
inline LVecBase3i::LVecBase3i(int fill_value);
inline LVecBase3i::LVecBase3i(int x, int y, int z);
inline LVecBase3i::LVecBase3i(LVecBase2i const &copy, int z);
2450 10 operator = 0 4 3528 22 LVecBase3i::operator = 0 2 497 498 464
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Copy Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Fill Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
125
inline LVecBase3i &LVecBase3i::operator =(LVecBase3i const &copy);
inline LVecBase3i &LVecBase3i::operator =(int fill_value);
2451 12 operator new 0 4 3528 24 LVecBase3i::operator new 0 1 499 0
126
inline void *LVecBase3i::operator new(unsigned int size);
inline void *LVecBase3i::operator new(unsigned int size, void *ptr);
2452 15 operator delete 0 4 3528 27 LVecBase3i::operator delete 0 0 0
108
inline void LVecBase3i::operator delete(void *ptr);
inline void LVecBase3i::operator delete(void *, void *);
2453 12 validate_ptr 0 4 3528 24 LVecBase3i::validate_ptr 0 0 0
61
static inline bool LVecBase3i::validate_ptr(void const *ptr);
2454 4 zero 0 4 3528 16 LVecBase3i::zero 0 1 500 259
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::zero Named Constructor
// Access: Public
// Description: Returns a zero-length vector.
////////////////////////////////////////////////////////////////////
55
static inline LVecBase3i const &LVecBase3i::zero(void);
2455 6 unit_x 0 4 3528 18 LVecBase3i::unit_x 0 1 501 256
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X vector.
////////////////////////////////////////////////////////////////////
57
static inline LVecBase3i const &LVecBase3i::unit_x(void);
2456 6 unit_y 0 4 3528 18 LVecBase3i::unit_y 0 1 502 256
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y vector.
////////////////////////////////////////////////////////////////////
57
static inline LVecBase3i const &LVecBase3i::unit_y(void);
2457 6 unit_z 0 4 3528 18 LVecBase3i::unit_z 0 1 503 256
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::unit_z Named Constructor
// Access: Public
// Description: Returns a unit Z vector.
////////////////////////////////////////////////////////////////////
57
static inline LVecBase3i const &LVecBase3i::unit_z(void);
2458 11 ~LVecBase3i 0 4 3528 23 LVecBase3i::~LVecBase3i 0 0 217
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Destructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
37
inline LVecBase3i::~LVecBase3i(void);
2459 10 __reduce__ 0 4 3528 22 LVecBase3i::__reduce__ 0 1 504 0
62
inline PyObject *LVecBase3i::__reduce__(PyObject *self) const;
2460 11 __getattr__ 0 4 3528 23 LVecBase3i::__getattr__ 0 1 505 0
86
inline PyObject *LVecBase3i::__getattr__(basic_string< char > const &attr_name) const;
2461 11 __setattr__ 0 4 3528 23 LVecBase3i::__setattr__ 0 1 506 0
108
inline int LVecBase3i::__setattr__(PyObject *self, basic_string< char > const &attr_name, PyObject *assign);
2462 11 operator [] 0 4 3528 23 LVecBase3i::operator [] 0 2 507 508 450
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Indexing Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Indexing Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
92
inline int LVecBase3i::operator [](int i) const;
inline int &LVecBase3i::operator [](int i);
2463 11 __setitem__ 0 4 3528 23 LVecBase3i::__setitem__ 0 1 509 0
50
inline void LVecBase3i::__setitem__(int i, int v);
2464 4 size 0 4 3528 16 LVecBase3i::size 0 1 510 271
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::size
// Access: Public, Static
// Description: Returns 3: the number of components of a LVecBase3.
////////////////////////////////////////////////////////////////////
41
static inline int LVecBase3i::size(void);
2465 6 is_nan 0 4 3528 18 LVecBase3i::is_nan 0 1 511 308
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::is_nan
// Access: Public
// Description: Returns true if any component of the vector is
// not-a-number, false otherwise.
////////////////////////////////////////////////////////////////////
43
inline bool LVecBase3i::is_nan(void) const;
2466 8 get_cell 0 4 3528 20 LVecBase3i::get_cell 0 1 512 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_cell
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
45
inline int LVecBase3i::get_cell(int i) const;
2467 5 get_x 0 4 3528 17 LVecBase3i::get_x 0 1 513 212
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_x
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
41
inline int LVecBase3i::get_x(void) const;
2468 5 get_y 0 4 3528 17 LVecBase3i::get_y 0 1 514 212
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_y
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
41
inline int LVecBase3i::get_y(void) const;
2469 5 get_z 0 4 3528 17 LVecBase3i::get_z 0 1 515 212
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_z
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
41
inline int LVecBase3i::get_z(void) const;
2470 8 set_cell 0 4 3528 20 LVecBase3i::set_cell 0 1 516 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::set_cell
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
51
inline void LVecBase3i::set_cell(int i, int value);
2471 5 set_x 0 4 3528 17 LVecBase3i::set_x 0 1 517 212
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::set_x
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
41
inline void LVecBase3i::set_x(int value);
2472 5 set_y 0 4 3528 17 LVecBase3i::set_y 0 1 518 212
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::set_y
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
41
inline void LVecBase3i::set_y(int value);
2473 5 set_z 0 4 3528 17 LVecBase3i::set_z 0 1 519 212
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::set_z
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
41
inline void LVecBase3i::set_z(int value);
2474 6 get_xy 0 4 3528 18 LVecBase3i::get_xy 0 1 520 317
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_xy
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first two components of this vector.
////////////////////////////////////////////////////////////////////
49
inline LVecBase2i LVecBase3i::get_xy(void) const;
2475 6 get_xz 0 4 3528 18 LVecBase3i::get_xz 0 1 521 322
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_xz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first and last components of this vector.
////////////////////////////////////////////////////////////////////
49
inline LVecBase2i LVecBase3i::get_xz(void) const;
2476 6 get_yz 0 4 3528 18 LVecBase3i::get_yz 0 1 522 316
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_yz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// last two components of this vector.
////////////////////////////////////////////////////////////////////
49
inline LVecBase2i LVecBase3i::get_yz(void) const;
2477 11 add_to_cell 0 4 3528 23 LVecBase3i::add_to_cell 0 1 523 374
// 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:
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::add_to_cell
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
54
inline void LVecBase3i::add_to_cell(int i, int value);
2478 5 add_x 0 4 3528 17 LVecBase3i::add_x 0 1 524 368
// 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:
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::add_x
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
41
inline void LVecBase3i::add_x(int value);
2479 5 add_y 0 4 3528 17 LVecBase3i::add_y 0 1 525 212
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::add_y
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
41
inline void LVecBase3i::add_y(int value);
2480 5 add_z 0 4 3528 17 LVecBase3i::add_z 0 1 526 212
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::add_z
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
41
inline void LVecBase3i::add_z(int value);
2481 8 get_data 0 4 3528 20 LVecBase3i::get_data 0 1 527 399
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_data
// Access: Public
// Description: 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;
2482 18 get_num_components 0 4 3528 30 LVecBase3i::get_num_components 0 1 528 278
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_num_components
// Access: Public
// Description: Returns the number of elements in the vector, three.
////////////////////////////////////////////////////////////////////
54
inline int LVecBase3i::get_num_components(void) const;
2483 4 fill 0 4 3528 16 LVecBase3i::fill 0 1 529 364
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::fill
// Access: Published
// Description: 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);
2484 3 set 0 4 3528 15 LVecBase3i::set 0 1 530 213
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::set
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
49
inline void LVecBase3i::set(int x, int y, int z);
2485 3 dot 0 4 3528 15 LVecBase3i::dot 0 1 531 213
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::dot
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
58
inline int LVecBase3i::dot(LVecBase3i const &other) const;
2486 14 length_squared 0 4 3528 26 LVecBase3i::length_squared 0 1 532 300
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::length_squared
// Access: Published
// Description: Returns the square of the vector's length, cheap and
// easy.
////////////////////////////////////////////////////////////////////
50
inline int LVecBase3i::length_squared(void) const;
2487 5 cross 0 4 3528 17 LVecBase3i::cross 0 1 533 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::cross
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
67
inline LVecBase3i LVecBase3i::cross(LVecBase3i const &other) const;
2488 10 operator < 0 4 3528 22 LVecBase3i::operator < 0 1 534 498
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator <
// Access: Published
// Description: This performs a lexicographical comparison. It's of
// questionable mathematical meaning, but sometimes has
// a practical purpose for sorting unique vectors,
// especially in an STL container. Also see
// compare_to().
////////////////////////////////////////////////////////////////////
66
inline bool LVecBase3i::operator <(LVecBase3i const &other) const;
2489 11 operator == 0 4 3528 23 LVecBase3i::operator == 0 1 535 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator ==
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
67
inline bool LVecBase3i::operator ==(LVecBase3i const &other) const;
2490 11 operator != 0 4 3528 23 LVecBase3i::operator != 0 1 536 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator !=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
67
inline bool LVecBase3i::operator !=(LVecBase3i const &other) const;
2491 20 get_standardized_hpr 0 4 3528 32 LVecBase3i::get_standardized_hpr 0 1 537 1030
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_standardized_hpr
// Access: Published
// Description: 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 LVecBase3i LVecBase3i::get_standardized_hpr(void) const;
2492 10 compare_to 0 4 3528 22 LVecBase3i::compare_to 0 1 538 321
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::compare_to
// Access: Published
// Description: 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;
2493 8 get_hash 0 4 3528 20 LVecBase3i::get_hash 0 1 539 257
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
////////////////////////////////////////////////////////////////////
53
inline unsigned int LVecBase3i::get_hash(void) const;
2494 8 add_hash 0 4 3528 20 LVecBase3i::add_hash 0 1 540 257
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
////////////////////////////////////////////////////////////////////
66
inline unsigned int LVecBase3i::add_hash(unsigned int hash) const;
2495 13 generate_hash 0 4 3528 25 LVecBase3i::generate_hash 0 1 541 272
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::generate_hash
// Access: Published
// Description: Adds the vector to the indicated hash generator.
////////////////////////////////////////////////////////////////////
76
inline void LVecBase3i::generate_hash(ChecksumHashGenerator &hashgen) const;
2496 10 operator - 0 68 3528 22 LVecBase3i::operator - 0 1 542 217
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::unary -
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
53
inline LVecBase3i LVecBase3i::operator -(void) const;
2497 10 operator + 0 4 3528 22 LVecBase3i::operator + 0 1 543 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::vector + vector
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
72
inline LVecBase3i LVecBase3i::operator +(LVecBase3i const &other) const;
2498 10 operator - 0 4 3528 22 LVecBase3i::operator - 0 1 544 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::vector - vector
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
72
inline LVecBase3i LVecBase3i::operator -(LVecBase3i const &other) const;
2499 10 operator * 0 4 3528 22 LVecBase3i::operator * 0 1 545 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::vector * scalar
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
59
inline LVecBase3i LVecBase3i::operator *(int scalar) const;
2500 10 operator / 0 4 3528 22 LVecBase3i::operator / 0 1 546 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::vector / scalar
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
59
inline LVecBase3i LVecBase3i::operator /(int scalar) const;
2501 11 operator += 0 4 3528 23 LVecBase3i::operator += 0 1 547 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator +=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
61
inline void LVecBase3i::operator +=(LVecBase3i const &other);
2502 11 operator -= 0 4 3528 23 LVecBase3i::operator -= 0 1 548 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator -=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
61
inline void LVecBase3i::operator -=(LVecBase3i const &other);
2503 11 operator *= 0 4 3528 23 LVecBase3i::operator *= 0 1 549 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator *=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
48
inline void LVecBase3i::operator *=(int scalar);
2504 11 operator /= 0 4 3528 23 LVecBase3i::operator /= 0 1 550 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator /=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
48
inline void LVecBase3i::operator /=(int scalar);
2505 7 __pow__ 0 4 3528 19 LVecBase3i::__pow__ 0 1 551 0
58
inline LVecBase3i LVecBase3i::__pow__(int exponent) const;
2506 8 __ipow__ 0 4 3528 20 LVecBase3i::__ipow__ 0 1 552 0
68
inline PyObject *LVecBase3i::__ipow__(PyObject *self, int exponent);
2507 4 fmax 0 4 3528 16 LVecBase3i::fmax 0 1 553 211
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::fmax
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
60
inline LVecBase3i LVecBase3i::fmax(LVecBase3i const &other);
2508 4 fmin 0 4 3528 16 LVecBase3i::fmin 0 1 554 211
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::fmin
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
60
inline LVecBase3i LVecBase3i::fmin(LVecBase3i const &other);
2509 10 cross_into 0 4 3528 22 LVecBase3i::cross_into 0 1 555 241
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::cross product (with assignment)
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
60
inline void LVecBase3i::cross_into(LVecBase3i const &other);
2510 12 almost_equal 0 4 3528 24 LVecBase3i::almost_equal 0 2 556 557 662
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::almost_equal
// Access: Published
// Description: Returns true if two vectors are memberwise equal
// within a specified tolerance.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::almost_equal
// Access: Published
// Description: 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;
2511 6 output 0 4 3528 18 LVecBase3i::output 0 1 558 216
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::output
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
51
inline void LVecBase3i::output(ostream &out) const;
2512 11 python_repr 0 4 3528 23 LVecBase3i::python_repr 0 1 559 0
96
inline void LVecBase3i::python_repr(ostream &out, basic_string< char > const &class_name) const;
2513 20 write_datagram_fixed 0 4 3528 32 LVecBase3i::write_datagram_fixed 0 1 560 642
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::write_datagram_fixed
// Access: Published
// Description: 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;
2514 19 read_datagram_fixed 0 4 3528 31 LVecBase3i::read_datagram_fixed 0 1 561 348
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::read_datagram_fixed
// Access: Published
// Description: 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);
2515 14 write_datagram 0 4 3528 26 LVecBase3i::write_datagram 0 1 562 464
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::write_datagram
// Access: Published
// Description: 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;
2516 13 read_datagram 0 4 3528 25 LVecBase3i::read_datagram 0 1 563 280
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::read_datagram
// Access: Published
// Description: Reads the vector from the Datagram using get_stdfloat().
////////////////////////////////////////////////////////////////////
64
inline void LVecBase3i::read_datagram(DatagramIterator &source);
2517 14 get_class_type 0 4 3528 26 LVecBase3i::get_class_type 0 1 564 0
51
static TypeHandle LVecBase3i::get_class_type(void);
2518 29 get_default_coordinate_system 0 1 0 29 get_default_coordinate_system 0 1 1890 0
53
CoordinateSystem get_default_coordinate_system(void);
2519 30 parse_coordinate_system_string 0 1 0 30 parse_coordinate_system_string 0 1 1891 0
81
CoordinateSystem parse_coordinate_system_string(basic_string< char > const &str);
2520 24 format_coordinate_system 0 1 0 24 format_coordinate_system 0 1 1892 0
67
basic_string< char > format_coordinate_system(CoordinateSystem cs);
2521 15 is_right_handed 0 1 0 15 is_right_handed 0 2 1893 1894 0
57
bool is_right_handed(CoordinateSystem cs = (CS_default));
2522 9 LVector3f 0 4 3530 20 LVector3f::LVector3f 0 5 565 566 567 568 569 1609
// Filename: lvector3_src.I
// Created by: drose (24Sep99)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector3::Default Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector3::Copy Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector3::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector3::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector3::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
252
inline LVector3f::LVector3f(void);
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);
2523 10 operator = 0 4 3530 21 LVector3f::operator = 0 2 570 571 462
////////////////////////////////////////////////////////////////////
// Function: LVector3::Copy Assignment Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector3::Copy Fill Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
123
inline LVector3f &LVector3f::operator =(LVecBase3f const &copy);
inline LVector3f &LVector3f::operator =(float fill_value);
2524 11 __getattr__ 0 4 3530 22 LVector3f::__getattr__ 0 1 572 0
85
inline PyObject *LVector3f::__getattr__(basic_string< char > const &attr_name) const;
2525 11 __setattr__ 0 4 3530 22 LVector3f::__setattr__ 0 1 573 0
107
inline int LVector3f::__setattr__(PyObject *self, basic_string< char > const &attr_name, PyObject *assign);
2526 4 zero 0 4 3530 15 LVector3f::zero 0 1 574 261
////////////////////////////////////////////////////////////////////
// Function: LVector3::zero Named Constructor
// Access: Published
// Description: Returns a zero-length vector.
////////////////////////////////////////////////////////////////////
53
static inline LVector3f const &LVector3f::zero(void);
2527 6 unit_x 0 4 3530 17 LVector3f::unit_x 0 1 575 258
////////////////////////////////////////////////////////////////////
// Function: LVector3::unit_x Named Constructor
// Access: Published
// Description: Returns a unit X vector.
////////////////////////////////////////////////////////////////////
55
static inline LVector3f const &LVector3f::unit_x(void);
2528 6 unit_y 0 4 3530 17 LVector3f::unit_y 0 1 576 258
////////////////////////////////////////////////////////////////////
// Function: LVector3::unit_y Named Constructor
// Access: Published
// Description: Returns a unit Y vector.
////////////////////////////////////////////////////////////////////
55
static inline LVector3f const &LVector3f::unit_y(void);
2529 6 unit_z 0 4 3530 17 LVector3f::unit_z 0 1 577 258
////////////////////////////////////////////////////////////////////
// Function: LVector3::unit_z Named Constructor
// Access: Published
// Description: Returns a unit Z vector.
////////////////////////////////////////////////////////////////////
55
static inline LVector3f const &LVector3f::unit_z(void);
2530 6 get_xy 0 4 3530 17 LVector3f::get_xy 0 1 578 316
////////////////////////////////////////////////////////////////////
// Function: LVector3::get_xy
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first two components of this vector.
////////////////////////////////////////////////////////////////////
47
inline LVector2f LVector3f::get_xy(void) const;
2531 6 get_xz 0 4 3530 17 LVector3f::get_xz 0 1 579 321
////////////////////////////////////////////////////////////////////
// Function: LVector3::get_xz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first and last components of this vector.
////////////////////////////////////////////////////////////////////
47
inline LVector2f LVector3f::get_xz(void) const;
2532 6 get_yz 0 4 3530 17 LVector3f::get_yz 0 1 580 315
////////////////////////////////////////////////////////////////////
// Function: LVector3::get_yz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// last two components of this vector.
////////////////////////////////////////////////////////////////////
47
inline LVector2f LVector3f::get_yz(void) const;
2533 10 operator - 0 68 3530 21 LVector3f::operator - 0 1 581 216
////////////////////////////////////////////////////////////////////
// Function: LVector3::unary -
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
51
inline LVector3f LVector3f::operator -(void) const;
2534 10 operator + 0 4 3530 21 LVector3f::operator + 0 2 582 583 451
////////////////////////////////////////////////////////////////////
// Function: LVector3::vector + vecbase
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector3::vector + vector
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
141
inline LVecBase3f LVector3f::operator +(LVecBase3f const &other) const;
inline LVector3f LVector3f::operator +(LVector3f const &other) const;
2535 10 operator - 0 4 3530 21 LVector3f::operator - 0 2 584 585 451
////////////////////////////////////////////////////////////////////
// Function: LVector3::vector - vecbase
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector3::vector - vector
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
141
inline LVecBase3f LVector3f::operator -(LVecBase3f const &other) const;
inline LVector3f LVector3f::operator -(LVector3f const &other) const;
2536 5 cross 0 4 3530 16 LVector3f::cross 0 1 586 214
////////////////////////////////////////////////////////////////////
// Function: LVector3::cross
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
65
inline LVector3f LVector3f::cross(LVecBase3f const &other) const;
2537 7 project 0 4 3530 18 LVector3f::project 0 1 587 389
////////////////////////////////////////////////////////////////////
// Function: LVector3::project
// Access: Published
// Description: 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;
2538 9 angle_rad 0 4 3530 20 LVector3f::angle_rad 0 1 588 385
////////////////////////////////////////////////////////////////////
// Function: LVector::angle_rad
// Access: Published
// Description: 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;
2539 9 angle_deg 0 4 3530 20 LVector3f::angle_deg 0 1 589 376
////////////////////////////////////////////////////////////////////
// Function: LVector::angle_deg
// Access: Published
// Description: 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;
2540 16 signed_angle_rad 0 4 3530 27 LVector3f::signed_angle_rad 0 1 590 548
////////////////////////////////////////////////////////////////////
// Function: LVector::signed_angle_rad
// Access: Published
// Description: 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;
2541 16 signed_angle_deg 0 4 3530 27 LVector3f::signed_angle_deg 0 1 591 549
////////////////////////////////////////////////////////////////////
// Function: LVector::signed_angle_deg
// Access: Published
// Description: 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;
2542 18 relative_angle_rad 0 4 3530 29 LVector3f::relative_angle_rad 0 1 592 266
////////////////////////////////////////////////////////////////////
// Function: LVector::relative_angle_rad
// Access: Published
// Description: This method is deprecated. Do not use.
////////////////////////////////////////////////////////////////////
73
inline float LVector3f::relative_angle_rad(LVector3f const &other) const;
2543 18 relative_angle_deg 0 4 3530 29 LVector3f::relative_angle_deg 0 1 593 266
////////////////////////////////////////////////////////////////////
// Function: LVector::relative_angle_deg
// Access: Published
// Description: This method is deprecated. Do not use.
////////////////////////////////////////////////////////////////////
73
inline float LVector3f::relative_angle_deg(LVector3f const &other) const;
2544 10 operator * 0 4 3530 21 LVector3f::operator * 0 1 594 246
// FLOATTYPE_IS_INT
////////////////////////////////////////////////////////////////////
// Function: LVector3::operator * scalar
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
59
inline LVector3f LVector3f::operator *(float scalar) const;
2545 10 operator / 0 4 3530 21 LVector3f::operator / 0 1 595 226
////////////////////////////////////////////////////////////////////
// Function: LVector3::operator / scalar
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
59
inline LVector3f LVector3f::operator /(float scalar) const;
2546 2 up 0 4 3530 13 LVector3f::up 0 2 596 597 341
// Some special named constructors for LVector3.
////////////////////////////////////////////////////////////////////
// Function: LVector3::up
// Access: Published, Static
// Description: Returns the up vector for the given coordinate
// system.
////////////////////////////////////////////////////////////////////
74
static inline LVector3f LVector3f::up(CoordinateSystem cs = (CS_default));
2547 5 right 0 4 3530 16 LVector3f::right 0 2 598 599 297
////////////////////////////////////////////////////////////////////
// Function: LVector3::right
// Access: Published, Static
// Description: Returns the right vector for the given coordinate
// system.
////////////////////////////////////////////////////////////////////
77
static inline LVector3f LVector3f::right(CoordinateSystem cs = (CS_default));
2548 7 forward 0 4 3530 18 LVector3f::forward 0 2 600 601 301
////////////////////////////////////////////////////////////////////
// Function: LVector3::forward
// Access: Published, Static
// Description: Returns the forward vector for the given coordinate
// system.
////////////////////////////////////////////////////////////////////
79
static inline LVector3f LVector3f::forward(CoordinateSystem cs = (CS_default));
2549 4 down 0 4 3530 15 LVector3f::down 0 2 602 603 295
////////////////////////////////////////////////////////////////////
// Function: LVector3::down
// Access: Published, Static
// Description: Returns the down vector for the given coordinate
// system.
////////////////////////////////////////////////////////////////////
76
static inline LVector3f LVector3f::down(CoordinateSystem cs = (CS_default));
2550 4 left 0 4 3530 15 LVector3f::left 0 2 604 605 295
////////////////////////////////////////////////////////////////////
// Function: LVector3::left
// Access: Published, Static
// Description: Returns the left vector for the given coordinate
// system.
////////////////////////////////////////////////////////////////////
76
static inline LVector3f LVector3f::left(CoordinateSystem cs = (CS_default));
2551 4 back 0 4 3530 15 LVector3f::back 0 2 606 607 295
////////////////////////////////////////////////////////////////////
// Function: LVector3::back
// Access: Published, Static
// Description: Returns the back vector for the given coordinate
// system.
////////////////////////////////////////////////////////////////////
76
static inline LVector3f LVector3f::back(CoordinateSystem cs = (CS_default));
2552 3 rfu 0 4 3530 14 LVector3f::rfu 0 2 608 609 523
// INLINE_LINMATH static FLOATNAME(LVector3) & rfu(FLOATTYPE right,
////////////////////////////////////////////////////////////////////
// Function: LVector3::rfu
// Access: Published, Static
// Description: Returns a vector that is described by its right,
// forward, and up components, in whatever way the
// coordinate system represents that vector.
////////////////////////////////////////////////////////////////////
//INLINE_LINMATH FLOATNAME(LVector3) &FLOATNAME(LVector3)::
109
static inline LVector3f LVector3f::rfu(float right, float fwd, float up, CoordinateSystem cs = (CS_default));
2553 11 python_repr 0 4 3530 22 LVector3f::python_repr 0 1 610 0
95
inline void LVector3f::python_repr(ostream &out, basic_string< char > const &class_name) const;
2554 14 get_class_type 0 4 3530 25 LVector3f::get_class_type 0 1 611 0
50
static TypeHandle LVector3f::get_class_type(void);
2555 10 ~LVector3f 0 4 3530 21 LVector3f::~LVector3f 0 0 0
28
LVector3f::~LVector3f(void);
2556 9 LVector3d 0 4 3531 20 LVector3d::LVector3d 0 5 612 613 614 615 616 1609
// Filename: lvector3_src.I
// Created by: drose (24Sep99)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector3::Default Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector3::Copy Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector3::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector3::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector3::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
257
inline LVector3d::LVector3d(void);
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);
2557 10 operator = 0 4 3531 21 LVector3d::operator = 0 2 617 618 462
////////////////////////////////////////////////////////////////////
// Function: LVector3::Copy Assignment Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector3::Copy Fill Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
124
inline LVector3d &LVector3d::operator =(LVecBase3d const &copy);
inline LVector3d &LVector3d::operator =(double fill_value);
2558 11 __getattr__ 0 4 3531 22 LVector3d::__getattr__ 0 1 619 0
85
inline PyObject *LVector3d::__getattr__(basic_string< char > const &attr_name) const;
2559 11 __setattr__ 0 4 3531 22 LVector3d::__setattr__ 0 1 620 0
107
inline int LVector3d::__setattr__(PyObject *self, basic_string< char > const &attr_name, PyObject *assign);
2560 4 zero 0 4 3531 15 LVector3d::zero 0 1 621 261
////////////////////////////////////////////////////////////////////
// Function: LVector3::zero Named Constructor
// Access: Published
// Description: Returns a zero-length vector.
////////////////////////////////////////////////////////////////////
53
static inline LVector3d const &LVector3d::zero(void);
2561 6 unit_x 0 4 3531 17 LVector3d::unit_x 0 1 622 258
////////////////////////////////////////////////////////////////////
// Function: LVector3::unit_x Named Constructor
// Access: Published
// Description: Returns a unit X vector.
////////////////////////////////////////////////////////////////////
55
static inline LVector3d const &LVector3d::unit_x(void);
2562 6 unit_y 0 4 3531 17 LVector3d::unit_y 0 1 623 258
////////////////////////////////////////////////////////////////////
// Function: LVector3::unit_y Named Constructor
// Access: Published
// Description: Returns a unit Y vector.
////////////////////////////////////////////////////////////////////
55
static inline LVector3d const &LVector3d::unit_y(void);
2563 6 unit_z 0 4 3531 17 LVector3d::unit_z 0 1 624 258
////////////////////////////////////////////////////////////////////
// Function: LVector3::unit_z Named Constructor
// Access: Published
// Description: Returns a unit Z vector.
////////////////////////////////////////////////////////////////////
55
static inline LVector3d const &LVector3d::unit_z(void);
2564 6 get_xy 0 4 3531 17 LVector3d::get_xy 0 1 625 316
////////////////////////////////////////////////////////////////////
// Function: LVector3::get_xy
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first two components of this vector.
////////////////////////////////////////////////////////////////////
47
inline LVector2d LVector3d::get_xy(void) const;
2565 6 get_xz 0 4 3531 17 LVector3d::get_xz 0 1 626 321
////////////////////////////////////////////////////////////////////
// Function: LVector3::get_xz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first and last components of this vector.
////////////////////////////////////////////////////////////////////
47
inline LVector2d LVector3d::get_xz(void) const;
2566 6 get_yz 0 4 3531 17 LVector3d::get_yz 0 1 627 315
////////////////////////////////////////////////////////////////////
// Function: LVector3::get_yz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// last two components of this vector.
////////////////////////////////////////////////////////////////////
47
inline LVector2d LVector3d::get_yz(void) const;
2567 10 operator - 0 68 3531 21 LVector3d::operator - 0 1 628 216
////////////////////////////////////////////////////////////////////
// Function: LVector3::unary -
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
51
inline LVector3d LVector3d::operator -(void) const;
2568 10 operator + 0 4 3531 21 LVector3d::operator + 0 2 629 630 451
////////////////////////////////////////////////////////////////////
// Function: LVector3::vector + vecbase
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector3::vector + vector
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
141
inline LVecBase3d LVector3d::operator +(LVecBase3d const &other) const;
inline LVector3d LVector3d::operator +(LVector3d const &other) const;
2569 10 operator - 0 4 3531 21 LVector3d::operator - 0 2 631 632 451
////////////////////////////////////////////////////////////////////
// Function: LVector3::vector - vecbase
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector3::vector - vector
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
141
inline LVecBase3d LVector3d::operator -(LVecBase3d const &other) const;
inline LVector3d LVector3d::operator -(LVector3d const &other) const;
2570 5 cross 0 4 3531 16 LVector3d::cross 0 1 633 214
////////////////////////////////////////////////////////////////////
// Function: LVector3::cross
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
65
inline LVector3d LVector3d::cross(LVecBase3d const &other) const;
2571 7 project 0 4 3531 18 LVector3d::project 0 1 634 389
////////////////////////////////////////////////////////////////////
// Function: LVector3::project
// Access: Published
// Description: 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;
2572 9 angle_rad 0 4 3531 20 LVector3d::angle_rad 0 1 635 385
////////////////////////////////////////////////////////////////////
// Function: LVector::angle_rad
// Access: Published
// Description: 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;
2573 9 angle_deg 0 4 3531 20 LVector3d::angle_deg 0 1 636 376
////////////////////////////////////////////////////////////////////
// Function: LVector::angle_deg
// Access: Published
// Description: 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;
2574 16 signed_angle_rad 0 4 3531 27 LVector3d::signed_angle_rad 0 1 637 548
////////////////////////////////////////////////////////////////////
// Function: LVector::signed_angle_rad
// Access: Published
// Description: 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;
2575 16 signed_angle_deg 0 4 3531 27 LVector3d::signed_angle_deg 0 1 638 549
////////////////////////////////////////////////////////////////////
// Function: LVector::signed_angle_deg
// Access: Published
// Description: 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;
2576 18 relative_angle_rad 0 4 3531 29 LVector3d::relative_angle_rad 0 1 639 266
////////////////////////////////////////////////////////////////////
// Function: LVector::relative_angle_rad
// Access: Published
// Description: This method is deprecated. Do not use.
////////////////////////////////////////////////////////////////////
74
inline double LVector3d::relative_angle_rad(LVector3d const &other) const;
2577 18 relative_angle_deg 0 4 3531 29 LVector3d::relative_angle_deg 0 1 640 266
////////////////////////////////////////////////////////////////////
// Function: LVector::relative_angle_deg
// Access: Published
// Description: This method is deprecated. Do not use.
////////////////////////////////////////////////////////////////////
74
inline double LVector3d::relative_angle_deg(LVector3d const &other) const;
2578 10 operator * 0 4 3531 21 LVector3d::operator * 0 1 641 246
// FLOATTYPE_IS_INT
////////////////////////////////////////////////////////////////////
// Function: LVector3::operator * scalar
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
60
inline LVector3d LVector3d::operator *(double scalar) const;
2579 10 operator / 0 4 3531 21 LVector3d::operator / 0 1 642 226
////////////////////////////////////////////////////////////////////
// Function: LVector3::operator / scalar
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
60
inline LVector3d LVector3d::operator /(double scalar) const;
2580 2 up 0 4 3531 13 LVector3d::up 0 2 643 644 341
// Some special named constructors for LVector3.
////////////////////////////////////////////////////////////////////
// Function: LVector3::up
// Access: Published, Static
// Description: Returns the up vector for the given coordinate
// system.
////////////////////////////////////////////////////////////////////
74
static inline LVector3d LVector3d::up(CoordinateSystem cs = (CS_default));
2581 5 right 0 4 3531 16 LVector3d::right 0 2 645 646 297
////////////////////////////////////////////////////////////////////
// Function: LVector3::right
// Access: Published, Static
// Description: Returns the right vector for the given coordinate
// system.
////////////////////////////////////////////////////////////////////
77
static inline LVector3d LVector3d::right(CoordinateSystem cs = (CS_default));
2582 7 forward 0 4 3531 18 LVector3d::forward 0 2 647 648 301
////////////////////////////////////////////////////////////////////
// Function: LVector3::forward
// Access: Published, Static
// Description: Returns the forward vector for the given coordinate
// system.
////////////////////////////////////////////////////////////////////
79
static inline LVector3d LVector3d::forward(CoordinateSystem cs = (CS_default));
2583 4 down 0 4 3531 15 LVector3d::down 0 2 649 650 295
////////////////////////////////////////////////////////////////////
// Function: LVector3::down
// Access: Published, Static
// Description: Returns the down vector for the given coordinate
// system.
////////////////////////////////////////////////////////////////////
76
static inline LVector3d LVector3d::down(CoordinateSystem cs = (CS_default));
2584 4 left 0 4 3531 15 LVector3d::left 0 2 651 652 295
////////////////////////////////////////////////////////////////////
// Function: LVector3::left
// Access: Published, Static
// Description: Returns the left vector for the given coordinate
// system.
////////////////////////////////////////////////////////////////////
76
static inline LVector3d LVector3d::left(CoordinateSystem cs = (CS_default));
2585 4 back 0 4 3531 15 LVector3d::back 0 2 653 654 295
////////////////////////////////////////////////////////////////////
// Function: LVector3::back
// Access: Published, Static
// Description: Returns the back vector for the given coordinate
// system.
////////////////////////////////////////////////////////////////////
76
static inline LVector3d LVector3d::back(CoordinateSystem cs = (CS_default));
2586 3 rfu 0 4 3531 14 LVector3d::rfu 0 2 655 656 523
// INLINE_LINMATH static FLOATNAME(LVector3) & rfu(FLOATTYPE right,
////////////////////////////////////////////////////////////////////
// Function: LVector3::rfu
// Access: Published, Static
// Description: Returns a vector that is described by its right,
// forward, and up components, in whatever way the
// coordinate system represents that vector.
////////////////////////////////////////////////////////////////////
//INLINE_LINMATH FLOATNAME(LVector3) &FLOATNAME(LVector3)::
112
static inline LVector3d LVector3d::rfu(double right, double fwd, double up, CoordinateSystem cs = (CS_default));
2587 11 python_repr 0 4 3531 22 LVector3d::python_repr 0 1 657 0
95
inline void LVector3d::python_repr(ostream &out, basic_string< char > const &class_name) const;
2588 14 get_class_type 0 4 3531 25 LVector3d::get_class_type 0 1 658 0
50
static TypeHandle LVector3d::get_class_type(void);
2589 10 ~LVector3d 0 4 3531 21 LVector3d::~LVector3d 0 0 0
28
LVector3d::~LVector3d(void);
2590 9 LVector3i 0 4 3532 20 LVector3i::LVector3i 0 5 659 660 661 662 663 1609
// Filename: lvector3_src.I
// Created by: drose (24Sep99)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector3::Default Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector3::Copy Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector3::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector3::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector3::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
242
inline LVector3i::LVector3i(void);
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);
2591 10 operator = 0 4 3532 21 LVector3i::operator = 0 2 664 665 462
////////////////////////////////////////////////////////////////////
// Function: LVector3::Copy Assignment Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector3::Copy Fill Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
121
inline LVector3i &LVector3i::operator =(LVecBase3i const &copy);
inline LVector3i &LVector3i::operator =(int fill_value);
2592 11 __getattr__ 0 4 3532 22 LVector3i::__getattr__ 0 1 666 0
85
inline PyObject *LVector3i::__getattr__(basic_string< char > const &attr_name) const;
2593 11 __setattr__ 0 4 3532 22 LVector3i::__setattr__ 0 1 667 0
107
inline int LVector3i::__setattr__(PyObject *self, basic_string< char > const &attr_name, PyObject *assign);
2594 4 zero 0 4 3532 15 LVector3i::zero 0 1 668 261
////////////////////////////////////////////////////////////////////
// Function: LVector3::zero Named Constructor
// Access: Published
// Description: Returns a zero-length vector.
////////////////////////////////////////////////////////////////////
53
static inline LVector3i const &LVector3i::zero(void);
2595 6 unit_x 0 4 3532 17 LVector3i::unit_x 0 1 669 258
////////////////////////////////////////////////////////////////////
// Function: LVector3::unit_x Named Constructor
// Access: Published
// Description: Returns a unit X vector.
////////////////////////////////////////////////////////////////////
55
static inline LVector3i const &LVector3i::unit_x(void);
2596 6 unit_y 0 4 3532 17 LVector3i::unit_y 0 1 670 258
////////////////////////////////////////////////////////////////////
// Function: LVector3::unit_y Named Constructor
// Access: Published
// Description: Returns a unit Y vector.
////////////////////////////////////////////////////////////////////
55
static inline LVector3i const &LVector3i::unit_y(void);
2597 6 unit_z 0 4 3532 17 LVector3i::unit_z 0 1 671 258
////////////////////////////////////////////////////////////////////
// Function: LVector3::unit_z Named Constructor
// Access: Published
// Description: Returns a unit Z vector.
////////////////////////////////////////////////////////////////////
55
static inline LVector3i const &LVector3i::unit_z(void);
2598 6 get_xy 0 4 3532 17 LVector3i::get_xy 0 1 672 316
////////////////////////////////////////////////////////////////////
// Function: LVector3::get_xy
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first two components of this vector.
////////////////////////////////////////////////////////////////////
47
inline LVector2i LVector3i::get_xy(void) const;
2599 6 get_xz 0 4 3532 17 LVector3i::get_xz 0 1 673 321
////////////////////////////////////////////////////////////////////
// Function: LVector3::get_xz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first and last components of this vector.
////////////////////////////////////////////////////////////////////
47
inline LVector2i LVector3i::get_xz(void) const;
2600 6 get_yz 0 4 3532 17 LVector3i::get_yz 0 1 674 315
////////////////////////////////////////////////////////////////////
// Function: LVector3::get_yz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// last two components of this vector.
////////////////////////////////////////////////////////////////////
47
inline LVector2i LVector3i::get_yz(void) const;
2601 10 operator - 0 68 3532 21 LVector3i::operator - 0 1 675 216
////////////////////////////////////////////////////////////////////
// Function: LVector3::unary -
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
51
inline LVector3i LVector3i::operator -(void) const;
2602 10 operator + 0 4 3532 21 LVector3i::operator + 0 2 676 677 451
////////////////////////////////////////////////////////////////////
// Function: LVector3::vector + vecbase
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector3::vector + vector
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
141
inline LVecBase3i LVector3i::operator +(LVecBase3i const &other) const;
inline LVector3i LVector3i::operator +(LVector3i const &other) const;
2603 10 operator - 0 4 3532 21 LVector3i::operator - 0 2 678 679 451
////////////////////////////////////////////////////////////////////
// Function: LVector3::vector - vecbase
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector3::vector - vector
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
141
inline LVecBase3i LVector3i::operator -(LVecBase3i const &other) const;
inline LVector3i LVector3i::operator -(LVector3i const &other) const;
2604 5 cross 0 4 3532 16 LVector3i::cross 0 1 680 214
////////////////////////////////////////////////////////////////////
// Function: LVector3::cross
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
65
inline LVector3i LVector3i::cross(LVecBase3i const &other) const;
2605 10 operator * 0 4 3532 21 LVector3i::operator * 0 1 681 226
////////////////////////////////////////////////////////////////////
// Function: LVector3::operator * scalar
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
57
inline LVector3i LVector3i::operator *(int scalar) const;
2606 10 operator / 0 4 3532 21 LVector3i::operator / 0 1 682 226
////////////////////////////////////////////////////////////////////
// Function: LVector3::operator / scalar
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
57
inline LVector3i LVector3i::operator /(int scalar) const;
2607 2 up 0 4 3532 13 LVector3i::up 0 2 683 684 341
// Some special named constructors for LVector3.
////////////////////////////////////////////////////////////////////
// Function: LVector3::up
// Access: Published, Static
// Description: Returns the up vector for the given coordinate
// system.
////////////////////////////////////////////////////////////////////
74
static inline LVector3i LVector3i::up(CoordinateSystem cs = (CS_default));
2608 5 right 0 4 3532 16 LVector3i::right 0 2 685 686 297
////////////////////////////////////////////////////////////////////
// Function: LVector3::right
// Access: Published, Static
// Description: Returns the right vector for the given coordinate
// system.
////////////////////////////////////////////////////////////////////
77
static inline LVector3i LVector3i::right(CoordinateSystem cs = (CS_default));
2609 7 forward 0 4 3532 18 LVector3i::forward 0 2 687 688 301
////////////////////////////////////////////////////////////////////
// Function: LVector3::forward
// Access: Published, Static
// Description: Returns the forward vector for the given coordinate
// system.
////////////////////////////////////////////////////////////////////
79
static inline LVector3i LVector3i::forward(CoordinateSystem cs = (CS_default));
2610 4 down 0 4 3532 15 LVector3i::down 0 2 689 690 295
////////////////////////////////////////////////////////////////////
// Function: LVector3::down
// Access: Published, Static
// Description: Returns the down vector for the given coordinate
// system.
////////////////////////////////////////////////////////////////////
76
static inline LVector3i LVector3i::down(CoordinateSystem cs = (CS_default));
2611 4 left 0 4 3532 15 LVector3i::left 0 2 691 692 295
////////////////////////////////////////////////////////////////////
// Function: LVector3::left
// Access: Published, Static
// Description: Returns the left vector for the given coordinate
// system.
////////////////////////////////////////////////////////////////////
76
static inline LVector3i LVector3i::left(CoordinateSystem cs = (CS_default));
2612 4 back 0 4 3532 15 LVector3i::back 0 2 693 694 295
////////////////////////////////////////////////////////////////////
// Function: LVector3::back
// Access: Published, Static
// Description: Returns the back vector for the given coordinate
// system.
////////////////////////////////////////////////////////////////////
76
static inline LVector3i LVector3i::back(CoordinateSystem cs = (CS_default));
2613 3 rfu 0 4 3532 14 LVector3i::rfu 0 2 695 696 523
// INLINE_LINMATH static FLOATNAME(LVector3) & rfu(FLOATTYPE right,
////////////////////////////////////////////////////////////////////
// Function: LVector3::rfu
// Access: Published, Static
// Description: Returns a vector that is described by its right,
// forward, and up components, in whatever way the
// coordinate system represents that vector.
////////////////////////////////////////////////////////////////////
//INLINE_LINMATH FLOATNAME(LVector3) &FLOATNAME(LVector3)::
103
static inline LVector3i LVector3i::rfu(int right, int fwd, int up, CoordinateSystem cs = (CS_default));
2614 11 python_repr 0 4 3532 22 LVector3i::python_repr 0 1 697 0
95
inline void LVector3i::python_repr(ostream &out, basic_string< char > const &class_name) const;
2615 14 get_class_type 0 4 3532 25 LVector3i::get_class_type 0 1 698 0
50
static TypeHandle LVector3i::get_class_type(void);
2616 10 ~LVector3i 0 4 3532 21 LVector3i::~LVector3i 0 0 0
28
LVector3i::~LVector3i(void);
2617 8 LPoint3f 0 4 3533 18 LPoint3f::LPoint3f 0 5 699 700 701 702 703 1591
// Filename: lpoint3_src.I
// Created by: drose (25Sep99)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint3::Default Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint3::Copy Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint3::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint3::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint3::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
242
inline LPoint3f::LPoint3f(void);
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);
2618 10 operator = 0 4 3533 20 LPoint3f::operator = 0 2 704 705 454
////////////////////////////////////////////////////////////////////
// Function: LPoint3::Copy Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint3::Copy Fill Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
119
inline LPoint3f &LPoint3f::operator =(LVecBase3f const &copy);
inline LPoint3f &LPoint3f::operator =(float fill_value);
2619 11 __getattr__ 0 4 3533 21 LPoint3f::__getattr__ 0 1 706 0
84
inline PyObject *LPoint3f::__getattr__(basic_string< char > const &attr_name) const;
2620 11 __setattr__ 0 4 3533 21 LPoint3f::__setattr__ 0 1 707 0
106
inline int LPoint3f::__setattr__(PyObject *self, basic_string< char > const &attr_name, PyObject *assign);
2621 4 zero 0 4 3533 14 LPoint3f::zero 0 1 708 256
////////////////////////////////////////////////////////////////////
// Function: LPoint3::zero Named Constructor
// Access: Public
// Description: Returns a zero-length point.
////////////////////////////////////////////////////////////////////
51
static inline LPoint3f const &LPoint3f::zero(void);
2622 6 unit_x 0 4 3533 16 LPoint3f::unit_x 0 1 709 253
////////////////////////////////////////////////////////////////////
// Function: LPoint3::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X point.
////////////////////////////////////////////////////////////////////
53
static inline LPoint3f const &LPoint3f::unit_x(void);
2623 6 unit_y 0 4 3533 16 LPoint3f::unit_y 0 1 710 253
////////////////////////////////////////////////////////////////////
// Function: LPoint3::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y point.
////////////////////////////////////////////////////////////////////
53
static inline LPoint3f const &LPoint3f::unit_y(void);
2624 6 unit_z 0 4 3533 16 LPoint3f::unit_z 0 1 711 253
////////////////////////////////////////////////////////////////////
// Function: LPoint3::unit_z Named Constructor
// Access: Public
// Description: Returns a unit Z point.
////////////////////////////////////////////////////////////////////
53
static inline LPoint3f const &LPoint3f::unit_z(void);
2625 6 get_xy 0 4 3533 16 LPoint3f::get_xy 0 1 712 315
////////////////////////////////////////////////////////////////////
// Function: LPoint3::get_xy
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first two components of this vector.
////////////////////////////////////////////////////////////////////
45
inline LPoint2f LPoint3f::get_xy(void) const;
2626 6 get_xz 0 4 3533 16 LPoint3f::get_xz 0 1 713 320
////////////////////////////////////////////////////////////////////
// Function: LPoint3::get_xz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first and last components of this vector.
////////////////////////////////////////////////////////////////////
45
inline LPoint2f LPoint3f::get_xz(void) const;
2627 6 get_yz 0 4 3533 16 LPoint3f::get_yz 0 1 714 314
////////////////////////////////////////////////////////////////////
// Function: LPoint3::get_yz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// last two components of this vector.
////////////////////////////////////////////////////////////////////
45
inline LPoint2f LPoint3f::get_yz(void) const;
2628 10 operator - 0 68 3533 20 LPoint3f::operator - 0 1 715 212
////////////////////////////////////////////////////////////////////
// Function: LPoint3::unary -
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
49
inline LPoint3f LPoint3f::operator -(void) const;
2629 10 operator + 0 4 3533 20 LPoint3f::operator + 0 2 716 717 441
////////////////////////////////////////////////////////////////////
// Function: LPoint3::point + vecbase
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint3::point + vector
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
138
inline LVecBase3f LPoint3f::operator +(LVecBase3f const &other) const;
inline LPoint3f LPoint3f::operator +(LVector3f const &other) const;
2630 10 operator - 0 4 3533 20 LPoint3f::operator - 0 3 718 719 720 661
////////////////////////////////////////////////////////////////////
// Function: LPoint3::point - vecbase
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint3::point - point
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint3::point - vector
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
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;
2631 5 cross 0 4 3533 15 LPoint3f::cross 0 1 721 210
////////////////////////////////////////////////////////////////////
// Function: LPoint3::cross
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
63
inline LPoint3f LPoint3f::cross(LVecBase3f const &other) const;
2632 7 project 0 4 3533 17 LPoint3f::project 0 1 722 388
////////////////////////////////////////////////////////////////////
// Function: LPoint3::project
// Access: Published
// Description: 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;
2633 10 operator * 0 4 3533 20 LPoint3f::operator * 0 1 723 242
// FLOATTYPE_IS_INT
////////////////////////////////////////////////////////////////////
// Function: LPoint3::operator * scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
57
inline LPoint3f LPoint3f::operator *(float scalar) const;
2634 10 operator / 0 4 3533 20 LPoint3f::operator / 0 1 724 222
////////////////////////////////////////////////////////////////////
// Function: LPoint3::operator / scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
57
inline LPoint3f LPoint3f::operator /(float scalar) const;
2635 6 origin 0 4 3533 16 LPoint3f::origin 0 2 725 726 489
// Some special named constructors for LPoint3.
////////////////////////////////////////////////////////////////////
// Function: LPoint3::origin
// Access: Public, Static
// Description: 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));
2636 3 rfu 0 4 3533 13 LPoint3f::rfu 0 2 727 728 383
////////////////////////////////////////////////////////////////////
// Function: LPoint3::rfu
// Access: Public, Static
// Description: 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));
2637 11 python_repr 0 4 3533 21 LPoint3f::python_repr 0 1 729 0
94
inline void LPoint3f::python_repr(ostream &out, basic_string< char > const &class_name) const;
2638 14 get_class_type 0 4 3533 24 LPoint3f::get_class_type 0 1 730 0
49
static TypeHandle LPoint3f::get_class_type(void);
2639 9 ~LPoint3f 0 4 3533 19 LPoint3f::~LPoint3f 0 0 0
26
LPoint3f::~LPoint3f(void);
2640 8 LPoint3d 0 4 3534 18 LPoint3d::LPoint3d 0 5 731 732 733 734 735 1591
// Filename: lpoint3_src.I
// Created by: drose (25Sep99)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint3::Default Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint3::Copy Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint3::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint3::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint3::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
247
inline LPoint3d::LPoint3d(void);
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);
2641 10 operator = 0 4 3534 20 LPoint3d::operator = 0 2 736 737 454
////////////////////////////////////////////////////////////////////
// Function: LPoint3::Copy Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint3::Copy Fill Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
120
inline LPoint3d &LPoint3d::operator =(LVecBase3d const &copy);
inline LPoint3d &LPoint3d::operator =(double fill_value);
2642 11 __getattr__ 0 4 3534 21 LPoint3d::__getattr__ 0 1 738 0
84
inline PyObject *LPoint3d::__getattr__(basic_string< char > const &attr_name) const;
2643 11 __setattr__ 0 4 3534 21 LPoint3d::__setattr__ 0 1 739 0
106
inline int LPoint3d::__setattr__(PyObject *self, basic_string< char > const &attr_name, PyObject *assign);
2644 4 zero 0 4 3534 14 LPoint3d::zero 0 1 740 256
////////////////////////////////////////////////////////////////////
// Function: LPoint3::zero Named Constructor
// Access: Public
// Description: Returns a zero-length point.
////////////////////////////////////////////////////////////////////
51
static inline LPoint3d const &LPoint3d::zero(void);
2645 6 unit_x 0 4 3534 16 LPoint3d::unit_x 0 1 741 253
////////////////////////////////////////////////////////////////////
// Function: LPoint3::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X point.
////////////////////////////////////////////////////////////////////
53
static inline LPoint3d const &LPoint3d::unit_x(void);
2646 6 unit_y 0 4 3534 16 LPoint3d::unit_y 0 1 742 253
////////////////////////////////////////////////////////////////////
// Function: LPoint3::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y point.
////////////////////////////////////////////////////////////////////
53
static inline LPoint3d const &LPoint3d::unit_y(void);
2647 6 unit_z 0 4 3534 16 LPoint3d::unit_z 0 1 743 253
////////////////////////////////////////////////////////////////////
// Function: LPoint3::unit_z Named Constructor
// Access: Public
// Description: Returns a unit Z point.
////////////////////////////////////////////////////////////////////
53
static inline LPoint3d const &LPoint3d::unit_z(void);
2648 6 get_xy 0 4 3534 16 LPoint3d::get_xy 0 1 744 315
////////////////////////////////////////////////////////////////////
// Function: LPoint3::get_xy
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first two components of this vector.
////////////////////////////////////////////////////////////////////
45
inline LPoint2d LPoint3d::get_xy(void) const;
2649 6 get_xz 0 4 3534 16 LPoint3d::get_xz 0 1 745 320
////////////////////////////////////////////////////////////////////
// Function: LPoint3::get_xz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first and last components of this vector.
////////////////////////////////////////////////////////////////////
45
inline LPoint2d LPoint3d::get_xz(void) const;
2650 6 get_yz 0 4 3534 16 LPoint3d::get_yz 0 1 746 314
////////////////////////////////////////////////////////////////////
// Function: LPoint3::get_yz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// last two components of this vector.
////////////////////////////////////////////////////////////////////
45
inline LPoint2d LPoint3d::get_yz(void) const;
2651 10 operator - 0 68 3534 20 LPoint3d::operator - 0 1 747 212
////////////////////////////////////////////////////////////////////
// Function: LPoint3::unary -
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
49
inline LPoint3d LPoint3d::operator -(void) const;
2652 10 operator + 0 4 3534 20 LPoint3d::operator + 0 2 748 749 441
////////////////////////////////////////////////////////////////////
// Function: LPoint3::point + vecbase
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint3::point + vector
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
138
inline LVecBase3d LPoint3d::operator +(LVecBase3d const &other) const;
inline LPoint3d LPoint3d::operator +(LVector3d const &other) const;
2653 10 operator - 0 4 3534 20 LPoint3d::operator - 0 3 750 751 752 661
////////////////////////////////////////////////////////////////////
// Function: LPoint3::point - vecbase
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint3::point - point
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint3::point - vector
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
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;
2654 5 cross 0 4 3534 15 LPoint3d::cross 0 1 753 210
////////////////////////////////////////////////////////////////////
// Function: LPoint3::cross
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
63
inline LPoint3d LPoint3d::cross(LVecBase3d const &other) const;
2655 7 project 0 4 3534 17 LPoint3d::project 0 1 754 388
////////////////////////////////////////////////////////////////////
// Function: LPoint3::project
// Access: Published
// Description: 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;
2656 10 operator * 0 4 3534 20 LPoint3d::operator * 0 1 755 242
// FLOATTYPE_IS_INT
////////////////////////////////////////////////////////////////////
// Function: LPoint3::operator * scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
58
inline LPoint3d LPoint3d::operator *(double scalar) const;
2657 10 operator / 0 4 3534 20 LPoint3d::operator / 0 1 756 222
////////////////////////////////////////////////////////////////////
// Function: LPoint3::operator / scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
58
inline LPoint3d LPoint3d::operator /(double scalar) const;
2658 6 origin 0 4 3534 16 LPoint3d::origin 0 2 757 758 489
// Some special named constructors for LPoint3.
////////////////////////////////////////////////////////////////////
// Function: LPoint3::origin
// Access: Public, Static
// Description: 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));
2659 3 rfu 0 4 3534 13 LPoint3d::rfu 0 2 759 760 383
////////////////////////////////////////////////////////////////////
// Function: LPoint3::rfu
// Access: Public, Static
// Description: 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));
2660 11 python_repr 0 4 3534 21 LPoint3d::python_repr 0 1 761 0
94
inline void LPoint3d::python_repr(ostream &out, basic_string< char > const &class_name) const;
2661 14 get_class_type 0 4 3534 24 LPoint3d::get_class_type 0 1 762 0
49
static TypeHandle LPoint3d::get_class_type(void);
2662 9 ~LPoint3d 0 4 3534 19 LPoint3d::~LPoint3d 0 0 0
26
LPoint3d::~LPoint3d(void);
2663 8 LPoint3i 0 4 3535 18 LPoint3i::LPoint3i 0 5 763 764 765 766 767 1591
// Filename: lpoint3_src.I
// Created by: drose (25Sep99)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint3::Default Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint3::Copy Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint3::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint3::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint3::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
232
inline LPoint3i::LPoint3i(void);
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);
2664 10 operator = 0 4 3535 20 LPoint3i::operator = 0 2 768 769 454
////////////////////////////////////////////////////////////////////
// Function: LPoint3::Copy Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint3::Copy Fill Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
117
inline LPoint3i &LPoint3i::operator =(LVecBase3i const &copy);
inline LPoint3i &LPoint3i::operator =(int fill_value);
2665 11 __getattr__ 0 4 3535 21 LPoint3i::__getattr__ 0 1 770 0
84
inline PyObject *LPoint3i::__getattr__(basic_string< char > const &attr_name) const;
2666 11 __setattr__ 0 4 3535 21 LPoint3i::__setattr__ 0 1 771 0
106
inline int LPoint3i::__setattr__(PyObject *self, basic_string< char > const &attr_name, PyObject *assign);
2667 4 zero 0 4 3535 14 LPoint3i::zero 0 1 772 256
////////////////////////////////////////////////////////////////////
// Function: LPoint3::zero Named Constructor
// Access: Public
// Description: Returns a zero-length point.
////////////////////////////////////////////////////////////////////
51
static inline LPoint3i const &LPoint3i::zero(void);
2668 6 unit_x 0 4 3535 16 LPoint3i::unit_x 0 1 773 253
////////////////////////////////////////////////////////////////////
// Function: LPoint3::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X point.
////////////////////////////////////////////////////////////////////
53
static inline LPoint3i const &LPoint3i::unit_x(void);
2669 6 unit_y 0 4 3535 16 LPoint3i::unit_y 0 1 774 253
////////////////////////////////////////////////////////////////////
// Function: LPoint3::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y point.
////////////////////////////////////////////////////////////////////
53
static inline LPoint3i const &LPoint3i::unit_y(void);
2670 6 unit_z 0 4 3535 16 LPoint3i::unit_z 0 1 775 253
////////////////////////////////////////////////////////////////////
// Function: LPoint3::unit_z Named Constructor
// Access: Public
// Description: Returns a unit Z point.
////////////////////////////////////////////////////////////////////
53
static inline LPoint3i const &LPoint3i::unit_z(void);
2671 6 get_xy 0 4 3535 16 LPoint3i::get_xy 0 1 776 315
////////////////////////////////////////////////////////////////////
// Function: LPoint3::get_xy
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first two components of this vector.
////////////////////////////////////////////////////////////////////
45
inline LPoint2i LPoint3i::get_xy(void) const;
2672 6 get_xz 0 4 3535 16 LPoint3i::get_xz 0 1 777 320
////////////////////////////////////////////////////////////////////
// Function: LPoint3::get_xz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first and last components of this vector.
////////////////////////////////////////////////////////////////////
45
inline LPoint2i LPoint3i::get_xz(void) const;
2673 6 get_yz 0 4 3535 16 LPoint3i::get_yz 0 1 778 314
////////////////////////////////////////////////////////////////////
// Function: LPoint3::get_yz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// last two components of this vector.
////////////////////////////////////////////////////////////////////
45
inline LPoint2i LPoint3i::get_yz(void) const;
2674 10 operator - 0 68 3535 20 LPoint3i::operator - 0 1 779 212
////////////////////////////////////////////////////////////////////
// Function: LPoint3::unary -
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
49
inline LPoint3i LPoint3i::operator -(void) const;
2675 10 operator + 0 4 3535 20 LPoint3i::operator + 0 2 780 781 441
////////////////////////////////////////////////////////////////////
// Function: LPoint3::point + vecbase
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint3::point + vector
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
138
inline LVecBase3i LPoint3i::operator +(LVecBase3i const &other) const;
inline LPoint3i LPoint3i::operator +(LVector3i const &other) const;
2676 10 operator - 0 4 3535 20 LPoint3i::operator - 0 3 782 783 784 661
////////////////////////////////////////////////////////////////////
// Function: LPoint3::point - vecbase
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint3::point - point
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint3::point - vector
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
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;
2677 5 cross 0 4 3535 15 LPoint3i::cross 0 1 785 210
////////////////////////////////////////////////////////////////////
// Function: LPoint3::cross
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
63
inline LPoint3i LPoint3i::cross(LVecBase3i const &other) const;
2678 10 operator * 0 4 3535 20 LPoint3i::operator * 0 1 786 222
////////////////////////////////////////////////////////////////////
// Function: LPoint3::operator * scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
55
inline LPoint3i LPoint3i::operator *(int scalar) const;
2679 10 operator / 0 4 3535 20 LPoint3i::operator / 0 1 787 222
////////////////////////////////////////////////////////////////////
// Function: LPoint3::operator / scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
55
inline LPoint3i LPoint3i::operator /(int scalar) const;
2680 6 origin 0 4 3535 16 LPoint3i::origin 0 2 788 789 489
// Some special named constructors for LPoint3.
////////////////////////////////////////////////////////////////////
// Function: LPoint3::origin
// Access: Public, Static
// Description: 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));
2681 3 rfu 0 4 3535 13 LPoint3i::rfu 0 2 790 791 383
////////////////////////////////////////////////////////////////////
// Function: LPoint3::rfu
// Access: Public, Static
// Description: 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));
2682 11 python_repr 0 4 3535 21 LPoint3i::python_repr 0 1 792 0
94
inline void LPoint3i::python_repr(ostream &out, basic_string< char > const &class_name) const;
2683 14 get_class_type 0 4 3535 24 LPoint3i::get_class_type 0 1 793 0
49
static TypeHandle LPoint3i::get_class_type(void);
2684 9 ~LPoint3i 0 4 3535 19 LPoint3i::~LPoint3i 0 0 0
26
LPoint3i::~LPoint3i(void);
2685 10 LVecBase4f 0 4 3536 22 LVecBase4f::LVecBase4f 0 6 794 795 796 797 798 799 1840
// Filename: lvecBase4_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Default Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Copy Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Copy Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
335
inline LVecBase4f::LVecBase4f(void);
inline LVecBase4f::LVecBase4f(LVecBase4f const &copy);
inline LVecBase4f::LVecBase4f(UnalignedLVecBase4f const &copy);
inline LVecBase4f::LVecBase4f(float fill_value);
inline LVecBase4f::LVecBase4f(float x, float y, float z, float w);
inline LVecBase4f::LVecBase4f(LVecBase3f const &copy, float w);
2686 10 operator = 0 4 3536 22 LVecBase4f::operator = 0 3 800 801 802 703
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Copy Assignment Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Copy Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Fill Assignment Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
203
inline LVecBase4f &LVecBase4f::operator =(LVecBase4f const &copy);
inline LVecBase4f &LVecBase4f::operator =(UnalignedLVecBase4f const &copy);
inline LVecBase4f &LVecBase4f::operator =(float fill_value);
2687 12 operator new 0 4 3536 24 LVecBase4f::operator new 0 1 803 0
126
inline void *LVecBase4f::operator new(unsigned int size);
inline void *LVecBase4f::operator new(unsigned int size, void *ptr);
2688 15 operator delete 0 4 3536 27 LVecBase4f::operator delete 0 0 0
108
inline void LVecBase4f::operator delete(void *ptr);
inline void LVecBase4f::operator delete(void *, void *);
2689 12 validate_ptr 0 4 3536 24 LVecBase4f::validate_ptr 0 0 0
61
static inline bool LVecBase4f::validate_ptr(void const *ptr);
2690 4 zero 0 4 3536 16 LVecBase4f::zero 0 1 804 262
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::zero Named Constructor
// Access: Published
// Description: Returns a zero-length vector.
////////////////////////////////////////////////////////////////////
55
static inline LVecBase4f const &LVecBase4f::zero(void);
2691 6 unit_x 0 4 3536 18 LVecBase4f::unit_x 0 1 805 259
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::unit_x Named Constructor
// Access: Published
// Description: Returns a unit X vector.
////////////////////////////////////////////////////////////////////
57
static inline LVecBase4f const &LVecBase4f::unit_x(void);
2692 6 unit_y 0 4 3536 18 LVecBase4f::unit_y 0 1 806 259
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::unit_y Named Constructor
// Access: Published
// Description: Returns a unit Y vector.
////////////////////////////////////////////////////////////////////
57
static inline LVecBase4f const &LVecBase4f::unit_y(void);
2693 6 unit_z 0 4 3536 18 LVecBase4f::unit_z 0 1 807 259
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::unit_z Named Constructor
// Access: Published
// Description: Returns a unit Z vector.
////////////////////////////////////////////////////////////////////
57
static inline LVecBase4f const &LVecBase4f::unit_z(void);
2694 6 unit_w 0 4 3536 18 LVecBase4f::unit_w 0 1 808 259
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::unit_w Named Constructor
// Access: Published
// Description: Returns a unit W vector.
////////////////////////////////////////////////////////////////////
57
static inline LVecBase4f const &LVecBase4f::unit_w(void);
2695 11 ~LVecBase4f 0 4 3536 23 LVecBase4f::~LVecBase4f 0 0 220
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Destructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
37
inline LVecBase4f::~LVecBase4f(void);
2696 10 __reduce__ 0 4 3536 22 LVecBase4f::__reduce__ 0 1 809 0
62
inline PyObject *LVecBase4f::__reduce__(PyObject *self) const;
2697 11 __getattr__ 0 4 3536 23 LVecBase4f::__getattr__ 0 1 810 0
86
inline PyObject *LVecBase4f::__getattr__(basic_string< char > const &attr_name) const;
2698 11 __setattr__ 0 4 3536 23 LVecBase4f::__setattr__ 0 1 811 0
108
inline int LVecBase4f::__setattr__(PyObject *self, basic_string< char > const &attr_name, PyObject *assign);
2699 11 operator [] 0 4 3536 23 LVecBase4f::operator [] 0 2 812 813 456
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Indexing Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Indexing Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
96
inline float LVecBase4f::operator [](int i) const;
inline float &LVecBase4f::operator [](int i);
2700 11 __setitem__ 0 4 3536 23 LVecBase4f::__setitem__ 0 1 814 0
52
inline void LVecBase4f::__setitem__(int i, float v);
2701 4 size 0 4 3536 16 LVecBase4f::size 0 1 815 274
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::size
// Access: Published, Static
// Description: Returns 4: the number of components of a LVecBase4.
////////////////////////////////////////////////////////////////////
41
static inline int LVecBase4f::size(void);
2702 6 is_nan 0 4 3536 18 LVecBase4f::is_nan 0 1 816 311
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::is_nan
// Access: Published
// Description: Returns true if any component of the vector is
// not-a-number, false otherwise.
////////////////////////////////////////////////////////////////////
43
inline bool LVecBase4f::is_nan(void) const;
2703 8 get_cell 0 4 3536 20 LVecBase4f::get_cell 0 1 817 218
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_cell
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
47
inline float LVecBase4f::get_cell(int i) const;
2704 5 get_x 0 4 3536 17 LVecBase4f::get_x 0 1 818 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_x
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
43
inline float LVecBase4f::get_x(void) const;
2705 5 get_y 0 4 3536 17 LVecBase4f::get_y 0 1 819 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_y
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
43
inline float LVecBase4f::get_y(void) const;
2706 5 get_z 0 4 3536 17 LVecBase4f::get_z 0 1 820 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_z
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
43
inline float LVecBase4f::get_z(void) const;
2707 5 get_w 0 4 3536 17 LVecBase4f::get_w 0 1 821 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_w
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
43
inline float LVecBase4f::get_w(void) const;
2708 8 set_cell 0 4 3536 20 LVecBase4f::set_cell 0 1 822 218
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set_cell
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
53
inline void LVecBase4f::set_cell(int i, float value);
2709 5 set_x 0 4 3536 17 LVecBase4f::set_x 0 1 823 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set_x
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
43
inline void LVecBase4f::set_x(float value);
2710 5 set_y 0 4 3536 17 LVecBase4f::set_y 0 1 824 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set_y
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
43
inline void LVecBase4f::set_y(float value);
2711 5 set_z 0 4 3536 17 LVecBase4f::set_z 0 1 825 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set_z
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
43
inline void LVecBase4f::set_z(float value);
2712 5 set_w 0 4 3536 17 LVecBase4f::set_w 0 1 826 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set_w
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
43
inline void LVecBase4f::set_w(float value);
2713 11 add_to_cell 0 4 3536 23 LVecBase4f::add_to_cell 0 1 827 377
// 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:
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_to_cell
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
56
inline void LVecBase4f::add_to_cell(int i, float value);
2714 5 add_x 0 4 3536 17 LVecBase4f::add_x 0 1 828 371
// 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:
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_x
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
43
inline void LVecBase4f::add_x(float value);
2715 5 add_y 0 4 3536 17 LVecBase4f::add_y 0 1 829 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_y
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
43
inline void LVecBase4f::add_y(float value);
2716 5 add_z 0 4 3536 17 LVecBase4f::add_z 0 1 830 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_z
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
43
inline void LVecBase4f::add_z(float value);
2717 5 add_w 0 4 3536 17 LVecBase4f::add_w 0 1 831 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_w
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
43
inline void LVecBase4f::add_w(float value);
2718 8 get_data 0 4 3536 20 LVecBase4f::get_data 0 1 832 401
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_data
// Access: Published
// Description: 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;
2719 18 get_num_components 0 4 3536 30 LVecBase4f::get_num_components 0 1 833 280
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_num_components
// Access: Published
// Description: Returns the number of elements in the vector, four.
////////////////////////////////////////////////////////////////////
54
inline int LVecBase4f::get_num_components(void) const;
2720 4 fill 0 4 3536 16 LVecBase4f::fill 0 1 834 364
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::fill
// Access: Published
// Description: 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);
2721 3 set 0 4 3536 15 LVecBase4f::set 0 1 835 213
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
64
inline void LVecBase4f::set(float x, float y, float z, float w);
2722 3 dot 0 4 3536 15 LVecBase4f::dot 0 1 836 213
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::dot
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
60
inline float LVecBase4f::dot(LVecBase4f const &other) const;
2723 14 length_squared 0 4 3536 26 LVecBase4f::length_squared 0 1 837 300
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::length_squared
// Access: Published
// Description: Returns the square of the vector's length, cheap and
// easy.
////////////////////////////////////////////////////////////////////
52
inline float LVecBase4f::length_squared(void) const;
2724 6 length 0 4 3536 18 LVecBase4f::length 0 1 838 295
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::length
// Access: Published
// Description: Returns the length of the vector, by the Pythagorean
// theorem.
////////////////////////////////////////////////////////////////////
44
inline float LVecBase4f::length(void) const;
2725 9 normalize 0 4 3536 21 LVecBase4f::normalize 0 1 839 367
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::normalize
// Access: Published
// Description: 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);
2726 7 project 0 4 3536 19 LVecBase4f::project 0 1 840 390
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::project
// Access: Published
// Description: 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;
2727 10 operator < 0 4 3536 22 LVecBase4f::operator < 0 1 841 518
// FLOATTYPE_IS_INT
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator <
// Access: Published
// Description: This performs a lexicographical comparison. It's of
// questionable mathematical meaning, but sometimes has
// a practical purpose for sorting unique vectors,
// especially in an STL container. Also see
// compare_to().
////////////////////////////////////////////////////////////////////
66
inline bool LVecBase4f::operator <(LVecBase4f const &other) const;
2728 11 operator == 0 4 3536 23 LVecBase4f::operator == 0 1 842 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator ==
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
67
inline bool LVecBase4f::operator ==(LVecBase4f const &other) const;
2729 11 operator != 0 4 3536 23 LVecBase4f::operator != 0 1 843 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator !=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
67
inline bool LVecBase4f::operator !=(LVecBase4f const &other) const;
2730 10 compare_to 0 4 3536 22 LVecBase4f::compare_to 0 2 844 845 827
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::compare_to
// Access: Published
// Description: This flavor of compare_to uses a default threshold
// value based on the numeric type.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::compare_to
// Access: Published
// Description: 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;
2731 8 get_hash 0 4 3536 20 LVecBase4f::get_hash 0 2 846 847 516
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
////////////////////////////////////////////////////////////////////
118
inline unsigned int LVecBase4f::get_hash(void) const;
inline unsigned int LVecBase4f::get_hash(float threshold) const;
2732 8 add_hash 0 4 3536 20 LVecBase4f::add_hash 0 2 848 849 516
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
////////////////////////////////////////////////////////////////////
150
inline unsigned int LVecBase4f::add_hash(unsigned int hash) const;
inline unsigned int LVecBase4f::add_hash(unsigned int hash, float threshold) const;
2733 13 generate_hash 0 4 3536 25 LVecBase4f::generate_hash 0 2 850 851 546
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::generate_hash
// Access: Published
// Description: Adds the vector to the indicated hash generator.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::generate_hash
// Access: Published
// Description: 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;
2734 10 operator - 0 68 3536 22 LVecBase4f::operator - 0 1 852 237
// FLOATTYPE_IS_INT
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::unary -
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
53
inline LVecBase4f LVecBase4f::operator -(void) const;
2735 10 operator + 0 4 3536 22 LVecBase4f::operator + 0 1 853 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::vector + vector
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
72
inline LVecBase4f LVecBase4f::operator +(LVecBase4f const &other) const;
2736 10 operator - 0 4 3536 22 LVecBase4f::operator - 0 1 854 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::vector - vector
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
72
inline LVecBase4f LVecBase4f::operator -(LVecBase4f const &other) const;
2737 10 operator * 0 4 3536 22 LVecBase4f::operator * 0 1 855 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::vector * scalar
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
61
inline LVecBase4f LVecBase4f::operator *(float scalar) const;
2738 10 operator / 0 4 3536 22 LVecBase4f::operator / 0 1 856 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::vector / scalar
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
61
inline LVecBase4f LVecBase4f::operator /(float scalar) const;
2739 11 operator += 0 4 3536 23 LVecBase4f::operator += 0 1 857 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator +=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
61
inline void LVecBase4f::operator +=(LVecBase4f const &other);
2740 11 operator -= 0 4 3536 23 LVecBase4f::operator -= 0 1 858 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator -=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
61
inline void LVecBase4f::operator -=(LVecBase4f const &other);
2741 11 operator *= 0 4 3536 23 LVecBase4f::operator *= 0 1 859 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator *=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
50
inline void LVecBase4f::operator *=(float scalar);
2742 11 operator /= 0 4 3536 23 LVecBase4f::operator /= 0 1 860 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator /=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
50
inline void LVecBase4f::operator /=(float scalar);
2743 7 __pow__ 0 4 3536 19 LVecBase4f::__pow__ 0 1 861 0
60
inline LVecBase4f LVecBase4f::__pow__(float exponent) const;
2744 8 __ipow__ 0 4 3536 20 LVecBase4f::__ipow__ 0 1 862 0
70
inline PyObject *LVecBase4f::__ipow__(PyObject *self, float exponent);
2745 4 fmax 0 4 3536 16 LVecBase4f::fmax 0 1 863 214
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::fmax
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
60
inline LVecBase4f LVecBase4f::fmax(LVecBase4f const &other);
2746 4 fmin 0 4 3536 16 LVecBase4f::fmin 0 1 864 214
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::fmin
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
60
inline LVecBase4f LVecBase4f::fmin(LVecBase4f const &other);
2747 12 almost_equal 0 4 3536 24 LVecBase4f::almost_equal 0 2 865 866 662
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::almost_equal
// Access: Published
// Description: Returns true if two vectors are memberwise equal
// within a specified tolerance.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::almost_equal
// Access: Published
// Description: 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;
2748 6 output 0 4 3536 18 LVecBase4f::output 0 1 867 216
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::output
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
51
inline void LVecBase4f::output(ostream &out) const;
2749 11 python_repr 0 4 3536 23 LVecBase4f::python_repr 0 1 868 0
96
inline void LVecBase4f::python_repr(ostream &out, basic_string< char > const &class_name) const;
2750 20 write_datagram_fixed 0 4 3536 32 LVecBase4f::write_datagram_fixed 0 1 869 642
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::write_datagram_fixed
// Access: Published
// Description: 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;
2751 19 read_datagram_fixed 0 4 3536 31 LVecBase4f::read_datagram_fixed 0 1 870 348
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::read_datagram_fixed
// Access: Published
// Description: 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);
2752 14 write_datagram 0 4 3536 26 LVecBase4f::write_datagram 0 1 871 464
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::write_datagram
// Access: Published
// Description: 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;
2753 13 read_datagram 0 4 3536 25 LVecBase4f::read_datagram 0 1 872 280
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::read_datagram
// Access: Published
// Description: Reads the vector from the Datagram using get_stdfloat().
////////////////////////////////////////////////////////////////////
64
inline void LVecBase4f::read_datagram(DatagramIterator &source);
2754 14 get_class_type 0 4 3536 26 LVecBase4f::get_class_type 0 1 873 0
51
static TypeHandle LVecBase4f::get_class_type(void);
2755 19 UnalignedLVecBase4f 0 4 3537 40 UnalignedLVecBase4f::UnalignedLVecBase4f 0 4 874 875 876 877 932
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Default Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Copy Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Copy Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
294
inline UnalignedLVecBase4f::UnalignedLVecBase4f(void);
inline UnalignedLVecBase4f::UnalignedLVecBase4f(LVecBase4f const &copy);
inline UnalignedLVecBase4f::UnalignedLVecBase4f(UnalignedLVecBase4f const &copy);
inline UnalignedLVecBase4f::UnalignedLVecBase4f(float x, float y, float z, float w);
2756 10 operator = 0 4 3537 31 UnalignedLVecBase4f::operator = 0 2 878 879 482
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Copy Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Copy Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
178
inline UnalignedLVecBase4f &UnalignedLVecBase4f::operator =(LVecBase4f const &copy);
inline UnalignedLVecBase4f &UnalignedLVecBase4f::operator =(UnalignedLVecBase4f const &copy);
2757 3 set 0 4 3537 24 UnalignedLVecBase4f::set 0 1 880 222
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::set
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
73
inline void UnalignedLVecBase4f::set(float x, float y, float z, float w);
2758 11 operator [] 0 4 3537 32 UnalignedLVecBase4f::operator [] 0 2 881 882 468
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Indexing Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Indexing Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
114
inline float UnalignedLVecBase4f::operator [](int i) const;
inline float &UnalignedLVecBase4f::operator [](int i);
2759 11 __setitem__ 0 4 3537 32 UnalignedLVecBase4f::__setitem__ 0 1 883 0
61
inline void UnalignedLVecBase4f::__setitem__(int i, float v);
2760 4 size 0 4 3537 25 UnalignedLVecBase4f::size 0 1 884 280
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::size
// Access: Public, Static
// Description: Returns 4: the number of components of a LVecBase4.
////////////////////////////////////////////////////////////////////
50
static inline int UnalignedLVecBase4f::size(void);
2761 8 get_data 0 4 3537 29 UnalignedLVecBase4f::get_data 0 1 885 408
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::get_data
// Access: Public
// Description: 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;
2762 18 get_num_components 0 4 3537 39 UnalignedLVecBase4f::get_num_components 0 1 886 283
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::get_num_components
// Access: Public
// Description: Returns the number of elements in the vector, 4.
////////////////////////////////////////////////////////////////////
63
inline int UnalignedLVecBase4f::get_num_components(void) const;
2763 14 get_class_type 0 4 3537 35 UnalignedLVecBase4f::get_class_type 0 1 887 0
60
static TypeHandle UnalignedLVecBase4f::get_class_type(void);
2764 20 ~UnalignedLVecBase4f 0 4 3537 41 UnalignedLVecBase4f::~UnalignedLVecBase4f 0 0 0
48
UnalignedLVecBase4f::~UnalignedLVecBase4f(void);
2765 10 LVecBase4d 0 4 3538 22 LVecBase4d::LVecBase4d 0 6 888 889 890 891 892 893 1840
// Filename: lvecBase4_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Default Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Copy Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Copy Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
341
inline LVecBase4d::LVecBase4d(void);
inline LVecBase4d::LVecBase4d(LVecBase4d const &copy);
inline LVecBase4d::LVecBase4d(UnalignedLVecBase4d const &copy);
inline LVecBase4d::LVecBase4d(double fill_value);
inline LVecBase4d::LVecBase4d(double x, double y, double z, double w);
inline LVecBase4d::LVecBase4d(LVecBase3d const &copy, double w);
2766 10 operator = 0 4 3538 22 LVecBase4d::operator = 0 3 894 895 896 703
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Copy Assignment Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Copy Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Fill Assignment Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
204
inline LVecBase4d &LVecBase4d::operator =(LVecBase4d const &copy);
inline LVecBase4d &LVecBase4d::operator =(UnalignedLVecBase4d const &copy);
inline LVecBase4d &LVecBase4d::operator =(double fill_value);
2767 12 operator new 0 4 3538 24 LVecBase4d::operator new 0 1 897 0
126
inline void *LVecBase4d::operator new(unsigned int size);
inline void *LVecBase4d::operator new(unsigned int size, void *ptr);
2768 15 operator delete 0 4 3538 27 LVecBase4d::operator delete 0 0 0
108
inline void LVecBase4d::operator delete(void *ptr);
inline void LVecBase4d::operator delete(void *, void *);
2769 12 validate_ptr 0 4 3538 24 LVecBase4d::validate_ptr 0 0 0
61
static inline bool LVecBase4d::validate_ptr(void const *ptr);
2770 4 zero 0 4 3538 16 LVecBase4d::zero 0 1 898 262
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::zero Named Constructor
// Access: Published
// Description: Returns a zero-length vector.
////////////////////////////////////////////////////////////////////
55
static inline LVecBase4d const &LVecBase4d::zero(void);
2771 6 unit_x 0 4 3538 18 LVecBase4d::unit_x 0 1 899 259
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::unit_x Named Constructor
// Access: Published
// Description: Returns a unit X vector.
////////////////////////////////////////////////////////////////////
57
static inline LVecBase4d const &LVecBase4d::unit_x(void);
2772 6 unit_y 0 4 3538 18 LVecBase4d::unit_y 0 1 900 259
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::unit_y Named Constructor
// Access: Published
// Description: Returns a unit Y vector.
////////////////////////////////////////////////////////////////////
57
static inline LVecBase4d const &LVecBase4d::unit_y(void);
2773 6 unit_z 0 4 3538 18 LVecBase4d::unit_z 0 1 901 259
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::unit_z Named Constructor
// Access: Published
// Description: Returns a unit Z vector.
////////////////////////////////////////////////////////////////////
57
static inline LVecBase4d const &LVecBase4d::unit_z(void);
2774 6 unit_w 0 4 3538 18 LVecBase4d::unit_w 0 1 902 259
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::unit_w Named Constructor
// Access: Published
// Description: Returns a unit W vector.
////////////////////////////////////////////////////////////////////
57
static inline LVecBase4d const &LVecBase4d::unit_w(void);
2775 11 ~LVecBase4d 0 4 3538 23 LVecBase4d::~LVecBase4d 0 0 220
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Destructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
37
inline LVecBase4d::~LVecBase4d(void);
2776 10 __reduce__ 0 4 3538 22 LVecBase4d::__reduce__ 0 1 903 0
62
inline PyObject *LVecBase4d::__reduce__(PyObject *self) const;
2777 11 __getattr__ 0 4 3538 23 LVecBase4d::__getattr__ 0 1 904 0
86
inline PyObject *LVecBase4d::__getattr__(basic_string< char > const &attr_name) const;
2778 11 __setattr__ 0 4 3538 23 LVecBase4d::__setattr__ 0 1 905 0
108
inline int LVecBase4d::__setattr__(PyObject *self, basic_string< char > const &attr_name, PyObject *assign);
2779 11 operator [] 0 4 3538 23 LVecBase4d::operator [] 0 2 906 907 456
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Indexing Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Indexing Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
98
inline double LVecBase4d::operator [](int i) const;
inline double &LVecBase4d::operator [](int i);
2780 11 __setitem__ 0 4 3538 23 LVecBase4d::__setitem__ 0 1 908 0
53
inline void LVecBase4d::__setitem__(int i, double v);
2781 4 size 0 4 3538 16 LVecBase4d::size 0 1 909 274
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::size
// Access: Published, Static
// Description: Returns 4: the number of components of a LVecBase4.
////////////////////////////////////////////////////////////////////
41
static inline int LVecBase4d::size(void);
2782 6 is_nan 0 4 3538 18 LVecBase4d::is_nan 0 1 910 311
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::is_nan
// Access: Published
// Description: Returns true if any component of the vector is
// not-a-number, false otherwise.
////////////////////////////////////////////////////////////////////
43
inline bool LVecBase4d::is_nan(void) const;
2783 8 get_cell 0 4 3538 20 LVecBase4d::get_cell 0 1 911 218
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_cell
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
48
inline double LVecBase4d::get_cell(int i) const;
2784 5 get_x 0 4 3538 17 LVecBase4d::get_x 0 1 912 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_x
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
44
inline double LVecBase4d::get_x(void) const;
2785 5 get_y 0 4 3538 17 LVecBase4d::get_y 0 1 913 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_y
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
44
inline double LVecBase4d::get_y(void) const;
2786 5 get_z 0 4 3538 17 LVecBase4d::get_z 0 1 914 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_z
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
44
inline double LVecBase4d::get_z(void) const;
2787 5 get_w 0 4 3538 17 LVecBase4d::get_w 0 1 915 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_w
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
44
inline double LVecBase4d::get_w(void) const;
2788 8 set_cell 0 4 3538 20 LVecBase4d::set_cell 0 1 916 218
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set_cell
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
54
inline void LVecBase4d::set_cell(int i, double value);
2789 5 set_x 0 4 3538 17 LVecBase4d::set_x 0 1 917 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set_x
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
44
inline void LVecBase4d::set_x(double value);
2790 5 set_y 0 4 3538 17 LVecBase4d::set_y 0 1 918 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set_y
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
44
inline void LVecBase4d::set_y(double value);
2791 5 set_z 0 4 3538 17 LVecBase4d::set_z 0 1 919 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set_z
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
44
inline void LVecBase4d::set_z(double value);
2792 5 set_w 0 4 3538 17 LVecBase4d::set_w 0 1 920 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set_w
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
44
inline void LVecBase4d::set_w(double value);
2793 11 add_to_cell 0 4 3538 23 LVecBase4d::add_to_cell 0 1 921 377
// 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:
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_to_cell
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
57
inline void LVecBase4d::add_to_cell(int i, double value);
2794 5 add_x 0 4 3538 17 LVecBase4d::add_x 0 1 922 371
// 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:
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_x
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
44
inline void LVecBase4d::add_x(double value);
2795 5 add_y 0 4 3538 17 LVecBase4d::add_y 0 1 923 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_y
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
44
inline void LVecBase4d::add_y(double value);
2796 5 add_z 0 4 3538 17 LVecBase4d::add_z 0 1 924 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_z
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
44
inline void LVecBase4d::add_z(double value);
2797 5 add_w 0 4 3538 17 LVecBase4d::add_w 0 1 925 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_w
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
44
inline void LVecBase4d::add_w(double value);
2798 8 get_data 0 4 3538 20 LVecBase4d::get_data 0 1 926 401
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_data
// Access: Published
// Description: 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;
2799 18 get_num_components 0 4 3538 30 LVecBase4d::get_num_components 0 1 927 280
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_num_components
// Access: Published
// Description: Returns the number of elements in the vector, four.
////////////////////////////////////////////////////////////////////
54
inline int LVecBase4d::get_num_components(void) const;
2800 4 fill 0 4 3538 16 LVecBase4d::fill 0 1 928 364
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::fill
// Access: Published
// Description: 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);
2801 3 set 0 4 3538 15 LVecBase4d::set 0 1 929 213
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
68
inline void LVecBase4d::set(double x, double y, double z, double w);
2802 3 dot 0 4 3538 15 LVecBase4d::dot 0 1 930 213
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::dot
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
61
inline double LVecBase4d::dot(LVecBase4d const &other) const;
2803 14 length_squared 0 4 3538 26 LVecBase4d::length_squared 0 1 931 300
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::length_squared
// Access: Published
// Description: Returns the square of the vector's length, cheap and
// easy.
////////////////////////////////////////////////////////////////////
53
inline double LVecBase4d::length_squared(void) const;
2804 6 length 0 4 3538 18 LVecBase4d::length 0 1 932 295
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::length
// Access: Published
// Description: Returns the length of the vector, by the Pythagorean
// theorem.
////////////////////////////////////////////////////////////////////
45
inline double LVecBase4d::length(void) const;
2805 9 normalize 0 4 3538 21 LVecBase4d::normalize 0 1 933 367
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::normalize
// Access: Published
// Description: 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);
2806 7 project 0 4 3538 19 LVecBase4d::project 0 1 934 390
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::project
// Access: Published
// Description: 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;
2807 10 operator < 0 4 3538 22 LVecBase4d::operator < 0 1 935 518
// FLOATTYPE_IS_INT
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator <
// Access: Published
// Description: This performs a lexicographical comparison. It's of
// questionable mathematical meaning, but sometimes has
// a practical purpose for sorting unique vectors,
// especially in an STL container. Also see
// compare_to().
////////////////////////////////////////////////////////////////////
66
inline bool LVecBase4d::operator <(LVecBase4d const &other) const;
2808 11 operator == 0 4 3538 23 LVecBase4d::operator == 0 1 936 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator ==
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
67
inline bool LVecBase4d::operator ==(LVecBase4d const &other) const;
2809 11 operator != 0 4 3538 23 LVecBase4d::operator != 0 1 937 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator !=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
67
inline bool LVecBase4d::operator !=(LVecBase4d const &other) const;
2810 10 compare_to 0 4 3538 22 LVecBase4d::compare_to 0 2 938 939 827
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::compare_to
// Access: Published
// Description: This flavor of compare_to uses a default threshold
// value based on the numeric type.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::compare_to
// Access: Published
// Description: 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;
2811 8 get_hash 0 4 3538 20 LVecBase4d::get_hash 0 2 940 941 516
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
////////////////////////////////////////////////////////////////////
119
inline unsigned int LVecBase4d::get_hash(void) const;
inline unsigned int LVecBase4d::get_hash(double threshold) const;
2812 8 add_hash 0 4 3538 20 LVecBase4d::add_hash 0 2 942 943 516
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
////////////////////////////////////////////////////////////////////
151
inline unsigned int LVecBase4d::add_hash(unsigned int hash) const;
inline unsigned int LVecBase4d::add_hash(unsigned int hash, double threshold) const;
2813 13 generate_hash 0 4 3538 25 LVecBase4d::generate_hash 0 2 944 945 546
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::generate_hash
// Access: Published
// Description: Adds the vector to the indicated hash generator.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::generate_hash
// Access: Published
// Description: 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;
2814 10 operator - 0 68 3538 22 LVecBase4d::operator - 0 1 946 237
// FLOATTYPE_IS_INT
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::unary -
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
53
inline LVecBase4d LVecBase4d::operator -(void) const;
2815 10 operator + 0 4 3538 22 LVecBase4d::operator + 0 1 947 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::vector + vector
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
72
inline LVecBase4d LVecBase4d::operator +(LVecBase4d const &other) const;
2816 10 operator - 0 4 3538 22 LVecBase4d::operator - 0 1 948 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::vector - vector
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
72
inline LVecBase4d LVecBase4d::operator -(LVecBase4d const &other) const;
2817 10 operator * 0 4 3538 22 LVecBase4d::operator * 0 1 949 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::vector * scalar
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
62
inline LVecBase4d LVecBase4d::operator *(double scalar) const;
2818 10 operator / 0 4 3538 22 LVecBase4d::operator / 0 1 950 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::vector / scalar
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
62
inline LVecBase4d LVecBase4d::operator /(double scalar) const;
2819 11 operator += 0 4 3538 23 LVecBase4d::operator += 0 1 951 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator +=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
61
inline void LVecBase4d::operator +=(LVecBase4d const &other);
2820 11 operator -= 0 4 3538 23 LVecBase4d::operator -= 0 1 952 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator -=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
61
inline void LVecBase4d::operator -=(LVecBase4d const &other);
2821 11 operator *= 0 4 3538 23 LVecBase4d::operator *= 0 1 953 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator *=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
51
inline void LVecBase4d::operator *=(double scalar);
2822 11 operator /= 0 4 3538 23 LVecBase4d::operator /= 0 1 954 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator /=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
51
inline void LVecBase4d::operator /=(double scalar);
2823 7 __pow__ 0 4 3538 19 LVecBase4d::__pow__ 0 1 955 0
61
inline LVecBase4d LVecBase4d::__pow__(double exponent) const;
2824 8 __ipow__ 0 4 3538 20 LVecBase4d::__ipow__ 0 1 956 0
71
inline PyObject *LVecBase4d::__ipow__(PyObject *self, double exponent);
2825 4 fmax 0 4 3538 16 LVecBase4d::fmax 0 1 957 214
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::fmax
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
60
inline LVecBase4d LVecBase4d::fmax(LVecBase4d const &other);
2826 4 fmin 0 4 3538 16 LVecBase4d::fmin 0 1 958 214
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::fmin
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
60
inline LVecBase4d LVecBase4d::fmin(LVecBase4d const &other);
2827 12 almost_equal 0 4 3538 24 LVecBase4d::almost_equal 0 2 959 960 662
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::almost_equal
// Access: Published
// Description: Returns true if two vectors are memberwise equal
// within a specified tolerance.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::almost_equal
// Access: Published
// Description: 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;
2828 6 output 0 4 3538 18 LVecBase4d::output 0 1 961 216
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::output
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
51
inline void LVecBase4d::output(ostream &out) const;
2829 11 python_repr 0 4 3538 23 LVecBase4d::python_repr 0 1 962 0
96
inline void LVecBase4d::python_repr(ostream &out, basic_string< char > const &class_name) const;
2830 20 write_datagram_fixed 0 4 3538 32 LVecBase4d::write_datagram_fixed 0 1 963 642
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::write_datagram_fixed
// Access: Published
// Description: 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;
2831 19 read_datagram_fixed 0 4 3538 31 LVecBase4d::read_datagram_fixed 0 1 964 348
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::read_datagram_fixed
// Access: Published
// Description: 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);
2832 14 write_datagram 0 4 3538 26 LVecBase4d::write_datagram 0 1 965 464
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::write_datagram
// Access: Published
// Description: 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;
2833 13 read_datagram 0 4 3538 25 LVecBase4d::read_datagram 0 1 966 280
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::read_datagram
// Access: Published
// Description: Reads the vector from the Datagram using get_stdfloat().
////////////////////////////////////////////////////////////////////
64
inline void LVecBase4d::read_datagram(DatagramIterator &source);
2834 14 get_class_type 0 4 3538 26 LVecBase4d::get_class_type 0 1 967 0
51
static TypeHandle LVecBase4d::get_class_type(void);
2835 19 UnalignedLVecBase4d 0 4 3539 40 UnalignedLVecBase4d::UnalignedLVecBase4d 0 4 968 969 970 971 932
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Default Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Copy Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Copy Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
298
inline UnalignedLVecBase4d::UnalignedLVecBase4d(void);
inline UnalignedLVecBase4d::UnalignedLVecBase4d(LVecBase4d const &copy);
inline UnalignedLVecBase4d::UnalignedLVecBase4d(UnalignedLVecBase4d const &copy);
inline UnalignedLVecBase4d::UnalignedLVecBase4d(double x, double y, double z, double w);
2836 10 operator = 0 4 3539 31 UnalignedLVecBase4d::operator = 0 2 972 973 482
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Copy Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Copy Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
178
inline UnalignedLVecBase4d &UnalignedLVecBase4d::operator =(LVecBase4d const &copy);
inline UnalignedLVecBase4d &UnalignedLVecBase4d::operator =(UnalignedLVecBase4d const &copy);
2837 3 set 0 4 3539 24 UnalignedLVecBase4d::set 0 1 974 222
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::set
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
77
inline void UnalignedLVecBase4d::set(double x, double y, double z, double w);
2838 11 operator [] 0 4 3539 32 UnalignedLVecBase4d::operator [] 0 2 975 976 468
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Indexing Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Indexing Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
116
inline double UnalignedLVecBase4d::operator [](int i) const;
inline double &UnalignedLVecBase4d::operator [](int i);
2839 11 __setitem__ 0 4 3539 32 UnalignedLVecBase4d::__setitem__ 0 1 977 0
62
inline void UnalignedLVecBase4d::__setitem__(int i, double v);
2840 4 size 0 4 3539 25 UnalignedLVecBase4d::size 0 1 978 280
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::size
// Access: Public, Static
// Description: Returns 4: the number of components of a LVecBase4.
////////////////////////////////////////////////////////////////////
50
static inline int UnalignedLVecBase4d::size(void);
2841 8 get_data 0 4 3539 29 UnalignedLVecBase4d::get_data 0 1 979 408
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::get_data
// Access: Public
// Description: 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;
2842 18 get_num_components 0 4 3539 39 UnalignedLVecBase4d::get_num_components 0 1 980 283
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::get_num_components
// Access: Public
// Description: Returns the number of elements in the vector, 4.
////////////////////////////////////////////////////////////////////
63
inline int UnalignedLVecBase4d::get_num_components(void) const;
2843 14 get_class_type 0 4 3539 35 UnalignedLVecBase4d::get_class_type 0 1 981 0
60
static TypeHandle UnalignedLVecBase4d::get_class_type(void);
2844 20 ~UnalignedLVecBase4d 0 4 3539 41 UnalignedLVecBase4d::~UnalignedLVecBase4d 0 0 0
48
UnalignedLVecBase4d::~UnalignedLVecBase4d(void);
2845 10 LVecBase4i 0 4 3540 22 LVecBase4i::LVecBase4i 0 6 982 983 984 985 986 987 1840
// Filename: lvecBase4_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Default Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Copy Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Copy Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
323
inline LVecBase4i::LVecBase4i(void);
inline LVecBase4i::LVecBase4i(LVecBase4i const &copy);
inline LVecBase4i::LVecBase4i(UnalignedLVecBase4i const &copy);
inline LVecBase4i::LVecBase4i(int fill_value);
inline LVecBase4i::LVecBase4i(int x, int y, int z, int w);
inline LVecBase4i::LVecBase4i(LVecBase3i const &copy, int w);
2846 10 operator = 0 4 3540 22 LVecBase4i::operator = 0 3 988 989 990 703
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Copy Assignment Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Copy Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Fill Assignment Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
201
inline LVecBase4i &LVecBase4i::operator =(LVecBase4i const &copy);
inline LVecBase4i &LVecBase4i::operator =(UnalignedLVecBase4i const &copy);
inline LVecBase4i &LVecBase4i::operator =(int fill_value);
2847 12 operator new 0 4 3540 24 LVecBase4i::operator new 0 1 991 0
126
inline void *LVecBase4i::operator new(unsigned int size);
inline void *LVecBase4i::operator new(unsigned int size, void *ptr);
2848 15 operator delete 0 4 3540 27 LVecBase4i::operator delete 0 0 0
108
inline void LVecBase4i::operator delete(void *ptr);
inline void LVecBase4i::operator delete(void *, void *);
2849 12 validate_ptr 0 4 3540 24 LVecBase4i::validate_ptr 0 0 0
61
static inline bool LVecBase4i::validate_ptr(void const *ptr);
2850 4 zero 0 4 3540 16 LVecBase4i::zero 0 1 992 262
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::zero Named Constructor
// Access: Published
// Description: Returns a zero-length vector.
////////////////////////////////////////////////////////////////////
55
static inline LVecBase4i const &LVecBase4i::zero(void);
2851 6 unit_x 0 4 3540 18 LVecBase4i::unit_x 0 1 993 259
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::unit_x Named Constructor
// Access: Published
// Description: Returns a unit X vector.
////////////////////////////////////////////////////////////////////
57
static inline LVecBase4i const &LVecBase4i::unit_x(void);
2852 6 unit_y 0 4 3540 18 LVecBase4i::unit_y 0 1 994 259
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::unit_y Named Constructor
// Access: Published
// Description: Returns a unit Y vector.
////////////////////////////////////////////////////////////////////
57
static inline LVecBase4i const &LVecBase4i::unit_y(void);
2853 6 unit_z 0 4 3540 18 LVecBase4i::unit_z 0 1 995 259
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::unit_z Named Constructor
// Access: Published
// Description: Returns a unit Z vector.
////////////////////////////////////////////////////////////////////
57
static inline LVecBase4i const &LVecBase4i::unit_z(void);
2854 6 unit_w 0 4 3540 18 LVecBase4i::unit_w 0 1 996 259
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::unit_w Named Constructor
// Access: Published
// Description: Returns a unit W vector.
////////////////////////////////////////////////////////////////////
57
static inline LVecBase4i const &LVecBase4i::unit_w(void);
2855 11 ~LVecBase4i 0 4 3540 23 LVecBase4i::~LVecBase4i 0 0 220
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Destructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
37
inline LVecBase4i::~LVecBase4i(void);
2856 10 __reduce__ 0 4 3540 22 LVecBase4i::__reduce__ 0 1 997 0
62
inline PyObject *LVecBase4i::__reduce__(PyObject *self) const;
2857 11 __getattr__ 0 4 3540 23 LVecBase4i::__getattr__ 0 1 998 0
86
inline PyObject *LVecBase4i::__getattr__(basic_string< char > const &attr_name) const;
2858 11 __setattr__ 0 4 3540 23 LVecBase4i::__setattr__ 0 1 999 0
108
inline int LVecBase4i::__setattr__(PyObject *self, basic_string< char > const &attr_name, PyObject *assign);
2859 11 operator [] 0 4 3540 23 LVecBase4i::operator [] 0 2 1000 1001 456
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Indexing Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Indexing Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
92
inline int LVecBase4i::operator [](int i) const;
inline int &LVecBase4i::operator [](int i);
2860 11 __setitem__ 0 4 3540 23 LVecBase4i::__setitem__ 0 1 1002 0
50
inline void LVecBase4i::__setitem__(int i, int v);
2861 4 size 0 4 3540 16 LVecBase4i::size 0 1 1003 274
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::size
// Access: Published, Static
// Description: Returns 4: the number of components of a LVecBase4.
////////////////////////////////////////////////////////////////////
41
static inline int LVecBase4i::size(void);
2862 6 is_nan 0 4 3540 18 LVecBase4i::is_nan 0 1 1004 311
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::is_nan
// Access: Published
// Description: Returns true if any component of the vector is
// not-a-number, false otherwise.
////////////////////////////////////////////////////////////////////
43
inline bool LVecBase4i::is_nan(void) const;
2863 8 get_cell 0 4 3540 20 LVecBase4i::get_cell 0 1 1005 218
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_cell
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
45
inline int LVecBase4i::get_cell(int i) const;
2864 5 get_x 0 4 3540 17 LVecBase4i::get_x 0 1 1006 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_x
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
41
inline int LVecBase4i::get_x(void) const;
2865 5 get_y 0 4 3540 17 LVecBase4i::get_y 0 1 1007 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_y
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
41
inline int LVecBase4i::get_y(void) const;
2866 5 get_z 0 4 3540 17 LVecBase4i::get_z 0 1 1008 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_z
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
41
inline int LVecBase4i::get_z(void) const;
2867 5 get_w 0 4 3540 17 LVecBase4i::get_w 0 1 1009 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_w
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
41
inline int LVecBase4i::get_w(void) const;
2868 8 set_cell 0 4 3540 20 LVecBase4i::set_cell 0 1 1010 218
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set_cell
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
51
inline void LVecBase4i::set_cell(int i, int value);
2869 5 set_x 0 4 3540 17 LVecBase4i::set_x 0 1 1011 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set_x
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
41
inline void LVecBase4i::set_x(int value);
2870 5 set_y 0 4 3540 17 LVecBase4i::set_y 0 1 1012 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set_y
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
41
inline void LVecBase4i::set_y(int value);
2871 5 set_z 0 4 3540 17 LVecBase4i::set_z 0 1 1013 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set_z
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
41
inline void LVecBase4i::set_z(int value);
2872 5 set_w 0 4 3540 17 LVecBase4i::set_w 0 1 1014 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set_w
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
41
inline void LVecBase4i::set_w(int value);
2873 11 add_to_cell 0 4 3540 23 LVecBase4i::add_to_cell 0 1 1015 377
// 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:
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_to_cell
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
54
inline void LVecBase4i::add_to_cell(int i, int value);
2874 5 add_x 0 4 3540 17 LVecBase4i::add_x 0 1 1016 371
// 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:
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_x
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
41
inline void LVecBase4i::add_x(int value);
2875 5 add_y 0 4 3540 17 LVecBase4i::add_y 0 1 1017 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_y
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
41
inline void LVecBase4i::add_y(int value);
2876 5 add_z 0 4 3540 17 LVecBase4i::add_z 0 1 1018 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_z
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
41
inline void LVecBase4i::add_z(int value);
2877 5 add_w 0 4 3540 17 LVecBase4i::add_w 0 1 1019 215
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_w
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
41
inline void LVecBase4i::add_w(int value);
2878 8 get_data 0 4 3540 20 LVecBase4i::get_data 0 1 1020 401
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_data
// Access: Published
// Description: 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;
2879 18 get_num_components 0 4 3540 30 LVecBase4i::get_num_components 0 1 1021 280
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_num_components
// Access: Published
// Description: Returns the number of elements in the vector, four.
////////////////////////////////////////////////////////////////////
54
inline int LVecBase4i::get_num_components(void) const;
2880 4 fill 0 4 3540 16 LVecBase4i::fill 0 1 1022 364
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::fill
// Access: Published
// Description: 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);
2881 3 set 0 4 3540 15 LVecBase4i::set 0 1 1023 213
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
56
inline void LVecBase4i::set(int x, int y, int z, int w);
2882 3 dot 0 4 3540 15 LVecBase4i::dot 0 1 1024 213
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::dot
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
58
inline int LVecBase4i::dot(LVecBase4i const &other) const;
2883 14 length_squared 0 4 3540 26 LVecBase4i::length_squared 0 1 1025 300
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::length_squared
// Access: Published
// Description: Returns the square of the vector's length, cheap and
// easy.
////////////////////////////////////////////////////////////////////
50
inline int LVecBase4i::length_squared(void) const;
2884 10 operator < 0 4 3540 22 LVecBase4i::operator < 0 1 1026 498
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator <
// Access: Published
// Description: This performs a lexicographical comparison. It's of
// questionable mathematical meaning, but sometimes has
// a practical purpose for sorting unique vectors,
// especially in an STL container. Also see
// compare_to().
////////////////////////////////////////////////////////////////////
66
inline bool LVecBase4i::operator <(LVecBase4i const &other) const;
2885 11 operator == 0 4 3540 23 LVecBase4i::operator == 0 1 1027 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator ==
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
67
inline bool LVecBase4i::operator ==(LVecBase4i const &other) const;
2886 11 operator != 0 4 3540 23 LVecBase4i::operator != 0 1 1028 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator !=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
67
inline bool LVecBase4i::operator !=(LVecBase4i const &other) const;
2887 10 compare_to 0 4 3540 22 LVecBase4i::compare_to 0 1 1029 321
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::compare_to
// Access: Published
// Description: 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;
2888 8 get_hash 0 4 3540 20 LVecBase4i::get_hash 0 1 1030 257
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
////////////////////////////////////////////////////////////////////
53
inline unsigned int LVecBase4i::get_hash(void) const;
2889 8 add_hash 0 4 3540 20 LVecBase4i::add_hash 0 1 1031 257
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
////////////////////////////////////////////////////////////////////
66
inline unsigned int LVecBase4i::add_hash(unsigned int hash) const;
2890 13 generate_hash 0 4 3540 25 LVecBase4i::generate_hash 0 1 1032 272
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::generate_hash
// Access: Published
// Description: Adds the vector to the indicated hash generator.
////////////////////////////////////////////////////////////////////
76
inline void LVecBase4i::generate_hash(ChecksumHashGenerator &hashgen) const;
2891 10 operator - 0 68 3540 22 LVecBase4i::operator - 0 1 1033 217
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::unary -
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
53
inline LVecBase4i LVecBase4i::operator -(void) const;
2892 10 operator + 0 4 3540 22 LVecBase4i::operator + 0 1 1034 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::vector + vector
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
72
inline LVecBase4i LVecBase4i::operator +(LVecBase4i const &other) const;
2893 10 operator - 0 4 3540 22 LVecBase4i::operator - 0 1 1035 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::vector - vector
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
72
inline LVecBase4i LVecBase4i::operator -(LVecBase4i const &other) const;
2894 10 operator * 0 4 3540 22 LVecBase4i::operator * 0 1 1036 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::vector * scalar
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
59
inline LVecBase4i LVecBase4i::operator *(int scalar) const;
2895 10 operator / 0 4 3540 22 LVecBase4i::operator / 0 1 1037 225
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::vector / scalar
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
59
inline LVecBase4i LVecBase4i::operator /(int scalar) const;
2896 11 operator += 0 4 3540 23 LVecBase4i::operator += 0 1 1038 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator +=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
61
inline void LVecBase4i::operator +=(LVecBase4i const &other);
2897 11 operator -= 0 4 3540 23 LVecBase4i::operator -= 0 1 1039 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator -=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
61
inline void LVecBase4i::operator -=(LVecBase4i const &other);
2898 11 operator *= 0 4 3540 23 LVecBase4i::operator *= 0 1 1040 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator *=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
48
inline void LVecBase4i::operator *=(int scalar);
2899 11 operator /= 0 4 3540 23 LVecBase4i::operator /= 0 1 1041 221
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator /=
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
48
inline void LVecBase4i::operator /=(int scalar);
2900 7 __pow__ 0 4 3540 19 LVecBase4i::__pow__ 0 1 1042 0
58
inline LVecBase4i LVecBase4i::__pow__(int exponent) const;
2901 8 __ipow__ 0 4 3540 20 LVecBase4i::__ipow__ 0 1 1043 0
68
inline PyObject *LVecBase4i::__ipow__(PyObject *self, int exponent);
2902 4 fmax 0 4 3540 16 LVecBase4i::fmax 0 1 1044 214
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::fmax
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
60
inline LVecBase4i LVecBase4i::fmax(LVecBase4i const &other);
2903 4 fmin 0 4 3540 16 LVecBase4i::fmin 0 1 1045 214
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::fmin
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
60
inline LVecBase4i LVecBase4i::fmin(LVecBase4i const &other);
2904 12 almost_equal 0 4 3540 24 LVecBase4i::almost_equal 0 2 1046 1047 662
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::almost_equal
// Access: Published
// Description: Returns true if two vectors are memberwise equal
// within a specified tolerance.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::almost_equal
// Access: Published
// Description: 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;
2905 6 output 0 4 3540 18 LVecBase4i::output 0 1 1048 216
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::output
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
51
inline void LVecBase4i::output(ostream &out) const;
2906 11 python_repr 0 4 3540 23 LVecBase4i::python_repr 0 1 1049 0
96
inline void LVecBase4i::python_repr(ostream &out, basic_string< char > const &class_name) const;
2907 20 write_datagram_fixed 0 4 3540 32 LVecBase4i::write_datagram_fixed 0 1 1050 642
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::write_datagram_fixed
// Access: Published
// Description: 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;
2908 19 read_datagram_fixed 0 4 3540 31 LVecBase4i::read_datagram_fixed 0 1 1051 348
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::read_datagram_fixed
// Access: Published
// Description: 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);
2909 14 write_datagram 0 4 3540 26 LVecBase4i::write_datagram 0 1 1052 464
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::write_datagram
// Access: Published
// Description: 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;
2910 13 read_datagram 0 4 3540 25 LVecBase4i::read_datagram 0 1 1053 280
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::read_datagram
// Access: Published
// Description: Reads the vector from the Datagram using get_stdfloat().
////////////////////////////////////////////////////////////////////
64
inline void LVecBase4i::read_datagram(DatagramIterator &source);
2911 14 get_class_type 0 4 3540 26 LVecBase4i::get_class_type 0 1 1054 0
51
static TypeHandle LVecBase4i::get_class_type(void);
2912 19 UnalignedLVecBase4i 0 4 3541 40 UnalignedLVecBase4i::UnalignedLVecBase4i 0 4 1055 1056 1057 1058 932
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Default Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Copy Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Copy Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
286
inline UnalignedLVecBase4i::UnalignedLVecBase4i(void);
inline UnalignedLVecBase4i::UnalignedLVecBase4i(LVecBase4i const &copy);
inline UnalignedLVecBase4i::UnalignedLVecBase4i(UnalignedLVecBase4i const &copy);
inline UnalignedLVecBase4i::UnalignedLVecBase4i(int x, int y, int z, int w);
2913 10 operator = 0 4 3541 31 UnalignedLVecBase4i::operator = 0 2 1059 1060 482
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Copy Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Copy Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
178
inline UnalignedLVecBase4i &UnalignedLVecBase4i::operator =(LVecBase4i const &copy);
inline UnalignedLVecBase4i &UnalignedLVecBase4i::operator =(UnalignedLVecBase4i const &copy);
2914 3 set 0 4 3541 24 UnalignedLVecBase4i::set 0 1 1061 222
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::set
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
65
inline void UnalignedLVecBase4i::set(int x, int y, int z, int w);
2915 11 operator [] 0 4 3541 32 UnalignedLVecBase4i::operator [] 0 2 1062 1063 468
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Indexing Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Indexing Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
110
inline int UnalignedLVecBase4i::operator [](int i) const;
inline int &UnalignedLVecBase4i::operator [](int i);
2916 11 __setitem__ 0 4 3541 32 UnalignedLVecBase4i::__setitem__ 0 1 1064 0
59
inline void UnalignedLVecBase4i::__setitem__(int i, int v);
2917 4 size 0 4 3541 25 UnalignedLVecBase4i::size 0 1 1065 280
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::size
// Access: Public, Static
// Description: Returns 4: the number of components of a LVecBase4.
////////////////////////////////////////////////////////////////////
50
static inline int UnalignedLVecBase4i::size(void);
2918 8 get_data 0 4 3541 29 UnalignedLVecBase4i::get_data 0 1 1066 408
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::get_data
// Access: Public
// Description: 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;
2919 18 get_num_components 0 4 3541 39 UnalignedLVecBase4i::get_num_components 0 1 1067 283
////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::get_num_components
// Access: Public
// Description: Returns the number of elements in the vector, 4.
////////////////////////////////////////////////////////////////////
63
inline int UnalignedLVecBase4i::get_num_components(void) const;
2920 14 get_class_type 0 4 3541 35 UnalignedLVecBase4i::get_class_type 0 1 1068 0
60
static TypeHandle UnalignedLVecBase4i::get_class_type(void);
2921 20 ~UnalignedLVecBase4i 0 4 3541 41 UnalignedLVecBase4i::~UnalignedLVecBase4i 0 0 0
48
UnalignedLVecBase4i::~UnalignedLVecBase4i(void);
2922 9 LVector4f 0 4 3542 20 LVector4f::LVector4f 0 5 1069 1070 1071 1072 1073 1597
// Filename: lvector4_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector4::Default Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector4::Copy Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector4::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector4::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector4::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
261
inline LVector4f::LVector4f(void);
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);
2923 10 operator = 0 4 3542 21 LVector4f::operator = 0 2 1074 1075 456
////////////////////////////////////////////////////////////////////
// Function: LVector4::Copy Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector4::Copy Fill Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
123
inline LVector4f &LVector4f::operator =(LVecBase4f const &copy);
inline LVector4f &LVector4f::operator =(float fill_value);
2924 11 __getattr__ 0 4 3542 22 LVector4f::__getattr__ 0 1 1076 0
85
inline PyObject *LVector4f::__getattr__(basic_string< char > const &attr_name) const;
2925 11 __setattr__ 0 4 3542 22 LVector4f::__setattr__ 0 1 1077 0
107
inline int LVector4f::__setattr__(PyObject *self, basic_string< char > const &attr_name, PyObject *assign);
2926 4 zero 0 4 3542 15 LVector4f::zero 0 1 1078 258
////////////////////////////////////////////////////////////////////
// Function: LVector4::zero Named Constructor
// Access: Public
// Description: Returns a zero-length vector.
////////////////////////////////////////////////////////////////////
53
static inline LVector4f const &LVector4f::zero(void);
2927 6 unit_x 0 4 3542 17 LVector4f::unit_x 0 1 1079 255
////////////////////////////////////////////////////////////////////
// Function: LVector4::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X vector.
////////////////////////////////////////////////////////////////////
55
static inline LVector4f const &LVector4f::unit_x(void);
2928 6 unit_y 0 4 3542 17 LVector4f::unit_y 0 1 1080 255
////////////////////////////////////////////////////////////////////
// Function: LVector4::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y vector.
////////////////////////////////////////////////////////////////////
55
static inline LVector4f const &LVector4f::unit_y(void);
2929 6 unit_z 0 4 3542 17 LVector4f::unit_z 0 1 1081 255
////////////////////////////////////////////////////////////////////
// Function: LVector4::unit_z Named Constructor
// Access: Public
// Description: Returns a unit Z vector.
////////////////////////////////////////////////////////////////////
55
static inline LVector4f const &LVector4f::unit_z(void);
2930 6 unit_w 0 4 3542 17 LVector4f::unit_w 0 1 1082 255
////////////////////////////////////////////////////////////////////
// Function: LVector4::unit_w Named Constructor
// Access: Public
// Description: Returns a unit W vector.
////////////////////////////////////////////////////////////////////
55
static inline LVector4f const &LVector4f::unit_w(void);
2931 10 operator - 0 68 3542 21 LVector4f::operator - 0 1 1083 213
////////////////////////////////////////////////////////////////////
// Function: LVector4::unary -
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
51
inline LVector4f LVector4f::operator -(void) const;
2932 10 operator + 0 4 3542 21 LVector4f::operator + 0 2 1084 1085 445
////////////////////////////////////////////////////////////////////
// Function: LVector4::vector + vecbase
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector4::vector + vector
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
141
inline LVecBase4f LVector4f::operator +(LVecBase4f const &other) const;
inline LVector4f LVector4f::operator +(LVector4f const &other) const;
2933 10 operator - 0 4 3542 21 LVector4f::operator - 0 2 1086 1087 445
////////////////////////////////////////////////////////////////////
// Function: LVector4::vector - vecbase
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector4::vector - vector
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
141
inline LVecBase4f LVector4f::operator -(LVecBase4f const &other) const;
inline LVector4f LVector4f::operator -(LVector4f const &other) const;
2934 10 operator * 0 4 3542 21 LVector4f::operator * 0 1 1088 223
////////////////////////////////////////////////////////////////////
// Function: LVector4::operator * scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
59
inline LVector4f LVector4f::operator *(float scalar) const;
2935 10 operator / 0 4 3542 21 LVector4f::operator / 0 1 1089 223
////////////////////////////////////////////////////////////////////
// Function: LVector4::operator / scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
59
inline LVector4f LVector4f::operator /(float scalar) const;
2936 7 project 0 4 3542 18 LVector4f::project 0 1 1090 389
////////////////////////////////////////////////////////////////////
// Function: LVector4::project
// Access: Published
// Description: 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;
2937 11 python_repr 0 4 3542 22 LVector4f::python_repr 0 1 1091 0
95
inline void LVector4f::python_repr(ostream &out, basic_string< char > const &class_name) const;
2938 14 get_class_type 0 4 3542 25 LVector4f::get_class_type 0 1 1092 0
50
static TypeHandle LVector4f::get_class_type(void);
2939 10 ~LVector4f 0 4 3542 21 LVector4f::~LVector4f 0 0 0
28
LVector4f::~LVector4f(void);
2940 9 LVector4d 0 4 3543 20 LVector4d::LVector4d 0 5 1093 1094 1095 1096 1097 1597
// Filename: lvector4_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector4::Default Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector4::Copy Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector4::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector4::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector4::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
267
inline LVector4d::LVector4d(void);
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);
2941 10 operator = 0 4 3543 21 LVector4d::operator = 0 2 1098 1099 456
////////////////////////////////////////////////////////////////////
// Function: LVector4::Copy Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector4::Copy Fill Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
124
inline LVector4d &LVector4d::operator =(LVecBase4d const &copy);
inline LVector4d &LVector4d::operator =(double fill_value);
2942 11 __getattr__ 0 4 3543 22 LVector4d::__getattr__ 0 1 1100 0
85
inline PyObject *LVector4d::__getattr__(basic_string< char > const &attr_name) const;
2943 11 __setattr__ 0 4 3543 22 LVector4d::__setattr__ 0 1 1101 0
107
inline int LVector4d::__setattr__(PyObject *self, basic_string< char > const &attr_name, PyObject *assign);
2944 4 zero 0 4 3543 15 LVector4d::zero 0 1 1102 258
////////////////////////////////////////////////////////////////////
// Function: LVector4::zero Named Constructor
// Access: Public
// Description: Returns a zero-length vector.
////////////////////////////////////////////////////////////////////
53
static inline LVector4d const &LVector4d::zero(void);
2945 6 unit_x 0 4 3543 17 LVector4d::unit_x 0 1 1103 255
////////////////////////////////////////////////////////////////////
// Function: LVector4::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X vector.
////////////////////////////////////////////////////////////////////
55
static inline LVector4d const &LVector4d::unit_x(void);
2946 6 unit_y 0 4 3543 17 LVector4d::unit_y 0 1 1104 255
////////////////////////////////////////////////////////////////////
// Function: LVector4::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y vector.
////////////////////////////////////////////////////////////////////
55
static inline LVector4d const &LVector4d::unit_y(void);
2947 6 unit_z 0 4 3543 17 LVector4d::unit_z 0 1 1105 255
////////////////////////////////////////////////////////////////////
// Function: LVector4::unit_z Named Constructor
// Access: Public
// Description: Returns a unit Z vector.
////////////////////////////////////////////////////////////////////
55
static inline LVector4d const &LVector4d::unit_z(void);
2948 6 unit_w 0 4 3543 17 LVector4d::unit_w 0 1 1106 255
////////////////////////////////////////////////////////////////////
// Function: LVector4::unit_w Named Constructor
// Access: Public
// Description: Returns a unit W vector.
////////////////////////////////////////////////////////////////////
55
static inline LVector4d const &LVector4d::unit_w(void);
2949 10 operator - 0 68 3543 21 LVector4d::operator - 0 1 1107 213
////////////////////////////////////////////////////////////////////
// Function: LVector4::unary -
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
51
inline LVector4d LVector4d::operator -(void) const;
2950 10 operator + 0 4 3543 21 LVector4d::operator + 0 2 1108 1109 445
////////////////////////////////////////////////////////////////////
// Function: LVector4::vector + vecbase
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector4::vector + vector
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
141
inline LVecBase4d LVector4d::operator +(LVecBase4d const &other) const;
inline LVector4d LVector4d::operator +(LVector4d const &other) const;
2951 10 operator - 0 4 3543 21 LVector4d::operator - 0 2 1110 1111 445
////////////////////////////////////////////////////////////////////
// Function: LVector4::vector - vecbase
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector4::vector - vector
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
141
inline LVecBase4d LVector4d::operator -(LVecBase4d const &other) const;
inline LVector4d LVector4d::operator -(LVector4d const &other) const;
2952 10 operator * 0 4 3543 21 LVector4d::operator * 0 1 1112 223
////////////////////////////////////////////////////////////////////
// Function: LVector4::operator * scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
60
inline LVector4d LVector4d::operator *(double scalar) const;
2953 10 operator / 0 4 3543 21 LVector4d::operator / 0 1 1113 223
////////////////////////////////////////////////////////////////////
// Function: LVector4::operator / scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
60
inline LVector4d LVector4d::operator /(double scalar) const;
2954 7 project 0 4 3543 18 LVector4d::project 0 1 1114 389
////////////////////////////////////////////////////////////////////
// Function: LVector4::project
// Access: Published
// Description: 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;
2955 11 python_repr 0 4 3543 22 LVector4d::python_repr 0 1 1115 0
95
inline void LVector4d::python_repr(ostream &out, basic_string< char > const &class_name) const;
2956 14 get_class_type 0 4 3543 25 LVector4d::get_class_type 0 1 1116 0
50
static TypeHandle LVector4d::get_class_type(void);
2957 10 ~LVector4d 0 4 3543 21 LVector4d::~LVector4d 0 0 0
28
LVector4d::~LVector4d(void);
2958 9 LVector4i 0 4 3544 20 LVector4i::LVector4i 0 5 1117 1118 1119 1120 1121 1597
// Filename: lvector4_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector4::Default Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector4::Copy Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector4::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector4::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector4::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
249
inline LVector4i::LVector4i(void);
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);
2959 10 operator = 0 4 3544 21 LVector4i::operator = 0 2 1122 1123 456
////////////////////////////////////////////////////////////////////
// Function: LVector4::Copy Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector4::Copy Fill Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
121
inline LVector4i &LVector4i::operator =(LVecBase4i const &copy);
inline LVector4i &LVector4i::operator =(int fill_value);
2960 11 __getattr__ 0 4 3544 22 LVector4i::__getattr__ 0 1 1124 0
85
inline PyObject *LVector4i::__getattr__(basic_string< char > const &attr_name) const;
2961 11 __setattr__ 0 4 3544 22 LVector4i::__setattr__ 0 1 1125 0
107
inline int LVector4i::__setattr__(PyObject *self, basic_string< char > const &attr_name, PyObject *assign);
2962 4 zero 0 4 3544 15 LVector4i::zero 0 1 1126 258
////////////////////////////////////////////////////////////////////
// Function: LVector4::zero Named Constructor
// Access: Public
// Description: Returns a zero-length vector.
////////////////////////////////////////////////////////////////////
53
static inline LVector4i const &LVector4i::zero(void);
2963 6 unit_x 0 4 3544 17 LVector4i::unit_x 0 1 1127 255
////////////////////////////////////////////////////////////////////
// Function: LVector4::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X vector.
////////////////////////////////////////////////////////////////////
55
static inline LVector4i const &LVector4i::unit_x(void);
2964 6 unit_y 0 4 3544 17 LVector4i::unit_y 0 1 1128 255
////////////////////////////////////////////////////////////////////
// Function: LVector4::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y vector.
////////////////////////////////////////////////////////////////////
55
static inline LVector4i const &LVector4i::unit_y(void);
2965 6 unit_z 0 4 3544 17 LVector4i::unit_z 0 1 1129 255
////////////////////////////////////////////////////////////////////
// Function: LVector4::unit_z Named Constructor
// Access: Public
// Description: Returns a unit Z vector.
////////////////////////////////////////////////////////////////////
55
static inline LVector4i const &LVector4i::unit_z(void);
2966 6 unit_w 0 4 3544 17 LVector4i::unit_w 0 1 1130 255
////////////////////////////////////////////////////////////////////
// Function: LVector4::unit_w Named Constructor
// Access: Public
// Description: Returns a unit W vector.
////////////////////////////////////////////////////////////////////
55
static inline LVector4i const &LVector4i::unit_w(void);
2967 10 operator - 0 68 3544 21 LVector4i::operator - 0 1 1131 213
////////////////////////////////////////////////////////////////////
// Function: LVector4::unary -
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
51
inline LVector4i LVector4i::operator -(void) const;
2968 10 operator + 0 4 3544 21 LVector4i::operator + 0 2 1132 1133 445
////////////////////////////////////////////////////////////////////
// Function: LVector4::vector + vecbase
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector4::vector + vector
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
141
inline LVecBase4i LVector4i::operator +(LVecBase4i const &other) const;
inline LVector4i LVector4i::operator +(LVector4i const &other) const;
2969 10 operator - 0 4 3544 21 LVector4i::operator - 0 2 1134 1135 445
////////////////////////////////////////////////////////////////////
// Function: LVector4::vector - vecbase
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector4::vector - vector
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
141
inline LVecBase4i LVector4i::operator -(LVecBase4i const &other) const;
inline LVector4i LVector4i::operator -(LVector4i const &other) const;
2970 10 operator * 0 4 3544 21 LVector4i::operator * 0 1 1136 223
////////////////////////////////////////////////////////////////////
// Function: LVector4::operator * scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
57
inline LVector4i LVector4i::operator *(int scalar) const;
2971 10 operator / 0 4 3544 21 LVector4i::operator / 0 1 1137 223
////////////////////////////////////////////////////////////////////
// Function: LVector4::operator / scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
57
inline LVector4i LVector4i::operator /(int scalar) const;
2972 11 python_repr 0 4 3544 22 LVector4i::python_repr 0 1 1138 0
95
inline void LVector4i::python_repr(ostream &out, basic_string< char > const &class_name) const;
2973 14 get_class_type 0 4 3544 25 LVector4i::get_class_type 0 1 1139 0
50
static TypeHandle LVector4i::get_class_type(void);
2974 10 ~LVector4i 0 4 3544 21 LVector4i::~LVector4i 0 0 0
28
LVector4i::~LVector4i(void);
2975 8 LPoint4f 0 4 3545 18 LPoint4f::LPoint4f 0 5 1140 1141 1142 1143 1144 1591
// Filename: lpoint4_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint4::Default Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint4::Copy Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint4::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint4::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint4::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
251
inline LPoint4f::LPoint4f(void);
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);
2976 10 operator = 0 4 3545 20 LPoint4f::operator = 0 2 1145 1146 454
////////////////////////////////////////////////////////////////////
// Function: LPoint4::Copy Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint4::Copy Fill Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
119
inline LPoint4f &LPoint4f::operator =(LVecBase4f const &copy);
inline LPoint4f &LPoint4f::operator =(float fill_value);
2977 11 __getattr__ 0 4 3545 21 LPoint4f::__getattr__ 0 1 1147 0
84
inline PyObject *LPoint4f::__getattr__(basic_string< char > const &attr_name) const;
2978 11 __setattr__ 0 4 3545 21 LPoint4f::__setattr__ 0 1 1148 0
106
inline int LPoint4f::__setattr__(PyObject *self, basic_string< char > const &attr_name, PyObject *assign);
2979 4 zero 0 4 3545 14 LPoint4f::zero 0 1 1149 256
////////////////////////////////////////////////////////////////////
// Function: LPoint4::zero Named Constructor
// Access: Public
// Description: Returns a zero-length point.
////////////////////////////////////////////////////////////////////
51
static inline LPoint4f const &LPoint4f::zero(void);
2980 6 unit_x 0 4 3545 16 LPoint4f::unit_x 0 1 1150 253
////////////////////////////////////////////////////////////////////
// Function: LPoint4::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X point.
////////////////////////////////////////////////////////////////////
53
static inline LPoint4f const &LPoint4f::unit_x(void);
2981 6 unit_y 0 4 3545 16 LPoint4f::unit_y 0 1 1151 253
////////////////////////////////////////////////////////////////////
// Function: LPoint4::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y point.
////////////////////////////////////////////////////////////////////
53
static inline LPoint4f const &LPoint4f::unit_y(void);
2982 6 unit_z 0 4 3545 16 LPoint4f::unit_z 0 1 1152 253
////////////////////////////////////////////////////////////////////
// Function: LPoint4::unit_z Named Constructor
// Access: Public
// Description: Returns a unit Z point.
////////////////////////////////////////////////////////////////////
53
static inline LPoint4f const &LPoint4f::unit_z(void);
2983 6 unit_w 0 4 3545 16 LPoint4f::unit_w 0 1 1153 253
////////////////////////////////////////////////////////////////////
// Function: LPoint4::unit_w Named Constructor
// Access: Public
// Description: Returns a unit W point.
////////////////////////////////////////////////////////////////////
53
static inline LPoint4f const &LPoint4f::unit_w(void);
2984 10 operator - 0 68 3545 20 LPoint4f::operator - 0 1 1154 212
////////////////////////////////////////////////////////////////////
// Function: LPoint4::unary -
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
49
inline LPoint4f LPoint4f::operator -(void) const;
2985 10 operator + 0 4 3545 20 LPoint4f::operator + 0 2 1155 1156 441
////////////////////////////////////////////////////////////////////
// Function: LPoint4::point + vecbase
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint4::point + vector
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
138
inline LVecBase4f LPoint4f::operator +(LVecBase4f const &other) const;
inline LPoint4f LPoint4f::operator +(LVector4f const &other) const;
2986 10 operator - 0 4 3545 20 LPoint4f::operator - 0 3 1157 1158 1159 661
////////////////////////////////////////////////////////////////////
// Function: LPoint4::point - vecbase
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint4::point - point
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint4::point - vector
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
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;
2987 10 operator * 0 4 3545 20 LPoint4f::operator * 0 1 1160 222
////////////////////////////////////////////////////////////////////
// Function: LPoint4::operator * scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
57
inline LPoint4f LPoint4f::operator *(float scalar) const;
2988 10 operator / 0 4 3545 20 LPoint4f::operator / 0 1 1161 222
////////////////////////////////////////////////////////////////////
// Function: LPoint4::operator / scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
57
inline LPoint4f LPoint4f::operator /(float scalar) const;
2989 7 project 0 4 3545 17 LPoint4f::project 0 1 1162 388
////////////////////////////////////////////////////////////////////
// Function: LPoint4::project
// Access: Published
// Description: 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;
2990 11 python_repr 0 4 3545 21 LPoint4f::python_repr 0 1 1163 0
94
inline void LPoint4f::python_repr(ostream &out, basic_string< char > const &class_name) const;
2991 14 get_class_type 0 4 3545 24 LPoint4f::get_class_type 0 1 1164 0
49
static TypeHandle LPoint4f::get_class_type(void);
2992 9 ~LPoint4f 0 4 3545 19 LPoint4f::~LPoint4f 0 0 0
26
LPoint4f::~LPoint4f(void);
2993 8 LPoint4d 0 4 3546 18 LPoint4d::LPoint4d 0 5 1165 1166 1167 1168 1169 1591
// Filename: lpoint4_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint4::Default Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint4::Copy Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint4::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint4::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint4::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
257
inline LPoint4d::LPoint4d(void);
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);
2994 10 operator = 0 4 3546 20 LPoint4d::operator = 0 2 1170 1171 454
////////////////////////////////////////////////////////////////////
// Function: LPoint4::Copy Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint4::Copy Fill Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
120
inline LPoint4d &LPoint4d::operator =(LVecBase4d const &copy);
inline LPoint4d &LPoint4d::operator =(double fill_value);
2995 11 __getattr__ 0 4 3546 21 LPoint4d::__getattr__ 0 1 1172 0
84
inline PyObject *LPoint4d::__getattr__(basic_string< char > const &attr_name) const;
2996 11 __setattr__ 0 4 3546 21 LPoint4d::__setattr__ 0 1 1173 0
106
inline int LPoint4d::__setattr__(PyObject *self, basic_string< char > const &attr_name, PyObject *assign);
2997 4 zero 0 4 3546 14 LPoint4d::zero 0 1 1174 256
////////////////////////////////////////////////////////////////////
// Function: LPoint4::zero Named Constructor
// Access: Public
// Description: Returns a zero-length point.
////////////////////////////////////////////////////////////////////
51
static inline LPoint4d const &LPoint4d::zero(void);
2998 6 unit_x 0 4 3546 16 LPoint4d::unit_x 0 1 1175 253
////////////////////////////////////////////////////////////////////
// Function: LPoint4::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X point.
////////////////////////////////////////////////////////////////////
53
static inline LPoint4d const &LPoint4d::unit_x(void);
2999 6 unit_y 0 4 3546 16 LPoint4d::unit_y 0 1 1176 253
////////////////////////////////////////////////////////////////////
// Function: LPoint4::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y point.
////////////////////////////////////////////////////////////////////
53
static inline LPoint4d const &LPoint4d::unit_y(void);
3000 6 unit_z 0 4 3546 16 LPoint4d::unit_z 0 1 1177 253
////////////////////////////////////////////////////////////////////
// Function: LPoint4::unit_z Named Constructor
// Access: Public
// Description: Returns a unit Z point.
////////////////////////////////////////////////////////////////////
53
static inline LPoint4d const &LPoint4d::unit_z(void);
3001 6 unit_w 0 4 3546 16 LPoint4d::unit_w 0 1 1178 253
////////////////////////////////////////////////////////////////////
// Function: LPoint4::unit_w Named Constructor
// Access: Public
// Description: Returns a unit W point.
////////////////////////////////////////////////////////////////////
53
static inline LPoint4d const &LPoint4d::unit_w(void);
3002 10 operator - 0 68 3546 20 LPoint4d::operator - 0 1 1179 212
////////////////////////////////////////////////////////////////////
// Function: LPoint4::unary -
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
49
inline LPoint4d LPoint4d::operator -(void) const;
3003 10 operator + 0 4 3546 20 LPoint4d::operator + 0 2 1180 1181 441
////////////////////////////////////////////////////////////////////
// Function: LPoint4::point + vecbase
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint4::point + vector
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
138
inline LVecBase4d LPoint4d::operator +(LVecBase4d const &other) const;
inline LPoint4d LPoint4d::operator +(LVector4d const &other) const;
3004 10 operator - 0 4 3546 20 LPoint4d::operator - 0 3 1182 1183 1184 661
////////////////////////////////////////////////////////////////////
// Function: LPoint4::point - vecbase
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint4::point - point
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint4::point - vector
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
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;
3005 10 operator * 0 4 3546 20 LPoint4d::operator * 0 1 1185 222
////////////////////////////////////////////////////////////////////
// Function: LPoint4::operator * scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
58
inline LPoint4d LPoint4d::operator *(double scalar) const;
3006 10 operator / 0 4 3546 20 LPoint4d::operator / 0 1 1186 222
////////////////////////////////////////////////////////////////////
// Function: LPoint4::operator / scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
58
inline LPoint4d LPoint4d::operator /(double scalar) const;
3007 7 project 0 4 3546 17 LPoint4d::project 0 1 1187 388
////////////////////////////////////////////////////////////////////
// Function: LPoint4::project
// Access: Published
// Description: 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;
3008 11 python_repr 0 4 3546 21 LPoint4d::python_repr 0 1 1188 0
94
inline void LPoint4d::python_repr(ostream &out, basic_string< char > const &class_name) const;
3009 14 get_class_type 0 4 3546 24 LPoint4d::get_class_type 0 1 1189 0
49
static TypeHandle LPoint4d::get_class_type(void);
3010 9 ~LPoint4d 0 4 3546 19 LPoint4d::~LPoint4d 0 0 0
26
LPoint4d::~LPoint4d(void);
3011 8 LPoint4i 0 4 3547 18 LPoint4i::LPoint4i 0 5 1190 1191 1192 1193 1194 1591
// Filename: lpoint4_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint4::Default Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint4::Copy Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint4::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint4::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint4::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
239
inline LPoint4i::LPoint4i(void);
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);
3012 10 operator = 0 4 3547 20 LPoint4i::operator = 0 2 1195 1196 454
////////////////////////////////////////////////////////////////////
// Function: LPoint4::Copy Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint4::Copy Fill Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
117
inline LPoint4i &LPoint4i::operator =(LVecBase4i const &copy);
inline LPoint4i &LPoint4i::operator =(int fill_value);
3013 11 __getattr__ 0 4 3547 21 LPoint4i::__getattr__ 0 1 1197 0
84
inline PyObject *LPoint4i::__getattr__(basic_string< char > const &attr_name) const;
3014 11 __setattr__ 0 4 3547 21 LPoint4i::__setattr__ 0 1 1198 0
106
inline int LPoint4i::__setattr__(PyObject *self, basic_string< char > const &attr_name, PyObject *assign);
3015 4 zero 0 4 3547 14 LPoint4i::zero 0 1 1199 256
////////////////////////////////////////////////////////////////////
// Function: LPoint4::zero Named Constructor
// Access: Public
// Description: Returns a zero-length point.
////////////////////////////////////////////////////////////////////
51
static inline LPoint4i const &LPoint4i::zero(void);
3016 6 unit_x 0 4 3547 16 LPoint4i::unit_x 0 1 1200 253
////////////////////////////////////////////////////////////////////
// Function: LPoint4::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X point.
////////////////////////////////////////////////////////////////////
53
static inline LPoint4i const &LPoint4i::unit_x(void);
3017 6 unit_y 0 4 3547 16 LPoint4i::unit_y 0 1 1201 253
////////////////////////////////////////////////////////////////////
// Function: LPoint4::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y point.
////////////////////////////////////////////////////////////////////
53
static inline LPoint4i const &LPoint4i::unit_y(void);
3018 6 unit_z 0 4 3547 16 LPoint4i::unit_z 0 1 1202 253
////////////////////////////////////////////////////////////////////
// Function: LPoint4::unit_z Named Constructor
// Access: Public
// Description: Returns a unit Z point.
////////////////////////////////////////////////////////////////////
53
static inline LPoint4i const &LPoint4i::unit_z(void);
3019 6 unit_w 0 4 3547 16 LPoint4i::unit_w 0 1 1203 253
////////////////////////////////////////////////////////////////////
// Function: LPoint4::unit_w Named Constructor
// Access: Public
// Description: Returns a unit W point.
////////////////////////////////////////////////////////////////////
53
static inline LPoint4i const &LPoint4i::unit_w(void);
3020 10 operator - 0 68 3547 20 LPoint4i::operator - 0 1 1204 212
////////////////////////////////////////////////////////////////////
// Function: LPoint4::unary -
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
49
inline LPoint4i LPoint4i::operator -(void) const;
3021 10 operator + 0 4 3547 20 LPoint4i::operator + 0 2 1205 1206 441
////////////////////////////////////////////////////////////////////
// Function: LPoint4::point + vecbase
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint4::point + vector
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
138
inline LVecBase4i LPoint4i::operator +(LVecBase4i const &other) const;
inline LPoint4i LPoint4i::operator +(LVector4i const &other) const;
3022 10 operator - 0 4 3547 20 LPoint4i::operator - 0 3 1207 1208 1209 661
////////////////////////////////////////////////////////////////////
// Function: LPoint4::point - vecbase
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint4::point - point
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint4::point - vector
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
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;
3023 10 operator * 0 4 3547 20 LPoint4i::operator * 0 1 1210 222
////////////////////////////////////////////////////////////////////
// Function: LPoint4::operator * scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
55
inline LPoint4i LPoint4i::operator *(int scalar) const;
3024 10 operator / 0 4 3547 20 LPoint4i::operator / 0 1 1211 222
////////////////////////////////////////////////////////////////////
// Function: LPoint4::operator / scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
55
inline LPoint4i LPoint4i::operator /(int scalar) const;
3025 11 python_repr 0 4 3547 21 LPoint4i::python_repr 0 1 1212 0
94
inline void LPoint4i::python_repr(ostream &out, basic_string< char > const &class_name) const;
3026 14 get_class_type 0 4 3547 24 LPoint4i::get_class_type 0 1 1213 0
49
static TypeHandle LPoint4i::get_class_type(void);
3027 9 ~LPoint4i 0 4 3547 19 LPoint4i::~LPoint4i 0 0 0
26
LPoint4i::~LPoint4i(void);
3028 11 operator [] 0 4 3549 27 LMatrix3f::Row::operator [] 0 2 1323 1324 454
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Row::operator []
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Row::operator []
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
104
inline float LMatrix3f::Row::operator [](int i) const;
inline float &LMatrix3f::Row::operator [](int i);
3029 11 __setitem__ 0 4 3549 27 LMatrix3f::Row::__setitem__ 0 1 1325 0
56
inline void LMatrix3f::Row::__setitem__(int i, float v);
3030 4 size 0 4 3549 20 LMatrix3f::Row::size 0 1 1326 274
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Row::size
// Access: Published, Static
// Description: Returns 3: the number of columns of a LMatrix3.
////////////////////////////////////////////////////////////////////
45
static inline int LMatrix3f::Row::size(void);
3031 4 ~Row 0 4 3549 20 LMatrix3f::Row::~Row 0 0 0
27
LMatrix3f::Row::~Row(void);
3032 11 operator [] 0 4 3550 28 LMatrix3f::CRow::operator [] 0 1 1327 227
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::CRow::operator []
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
55
inline float LMatrix3f::CRow::operator [](int i) const;
3033 4 size 0 4 3550 21 LMatrix3f::CRow::size 0 1 1328 275
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::CRow::size
// Access: Published, Static
// Description: Returns 3: the number of columns of a LMatrix3.
////////////////////////////////////////////////////////////////////
46
static inline int LMatrix3f::CRow::size(void);
3034 5 ~CRow 0 4 3550 22 LMatrix3f::CRow::~CRow 0 0 0
29
LMatrix3f::CRow::~CRow(void);
3035 9 LMatrix3f 0 4 3548 20 LMatrix3f::LMatrix3f 0 3 1214 1215 1216 677
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Default Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Copy Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
215
inline LMatrix3f::LMatrix3f(void);
inline LMatrix3f::LMatrix3f(LMatrix3f const &other);
inline LMatrix3f::LMatrix3f(float e00, float e01, float e02, float e10, float e11, float e12, float e20, float e21, float e22);
3036 10 operator = 0 4 3548 21 LMatrix3f::operator = 0 2 1217 1218 468
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Copy Assignment Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Fill Assignment Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
123
inline LMatrix3f &LMatrix3f::operator =(LMatrix3f const &other);
inline LMatrix3f &LMatrix3f::operator =(float fill_value);
3037 12 operator new 0 4 3548 23 LMatrix3f::operator new 0 1 1219 0
124
inline void *LMatrix3f::operator new(unsigned int size);
inline void *LMatrix3f::operator new(unsigned int size, void *ptr);
3038 15 operator delete 0 4 3548 26 LMatrix3f::operator delete 0 0 0
106
inline void LMatrix3f::operator delete(void *ptr);
inline void LMatrix3f::operator delete(void *, void *);
3039 12 validate_ptr 0 4 3548 23 LMatrix3f::validate_ptr 0 0 0
60
static inline bool LMatrix3f::validate_ptr(void const *ptr);
3040 10 __reduce__ 0 4 3548 21 LMatrix3f::__reduce__ 0 1 1220 0
61
inline PyObject *LMatrix3f::__reduce__(PyObject *self) const;
3041 4 fill 0 4 3548 15 LMatrix3f::fill 0 1 1221 391
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::fill
// Access: Published
// Description: 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);
3042 3 set 0 4 3548 14 LMatrix3f::set 0 1 1222 212
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::set
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
126
inline void LMatrix3f::set(float e00, float e01, float e02, float e10, float e11, float e12, float e20, float e21, float e22);
3043 7 set_row 0 4 3548 18 LMatrix3f::set_row 0 2 1223 1224 636
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::set_row
// Access: Published
// Description: Replaces the indicated row of the matrix from a
// three-component vector.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::set_row
// Access: Published
// Description: 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);
3044 7 set_col 0 4 3548 18 LMatrix3f::set_col 0 2 1225 1226 645
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::set_column
// Access: Published
// Description: Replaces the indicated column of the matrix from a
// three-component vector.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::set_column
// Access: Published
// Description: 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);
3045 7 get_row 0 4 3548 18 LMatrix3f::get_row 0 2 1227 1228 638
// these versions inline better
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_row
// Access: Published
// Description: Returns the indicated row of the matrix as a
// three-component vector.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_row
// Access: Published
// Description: 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;
3046 7 get_col 0 4 3548 18 LMatrix3f::get_col 0 1 1229 305
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_col
// Access: Published
// Description: Returns the indicated column of the matrix as a
// three-component vector.
////////////////////////////////////////////////////////////////////
52
inline LVecBase3f LMatrix3f::get_col(int col) const;
3047 8 get_row2 0 4 3548 19 LMatrix3f::get_row2 0 1 1230 327
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_row2
// Access: Published
// Description: 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;
3048 8 get_col2 0 4 3548 19 LMatrix3f::get_col2 0 1 1231 327
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_col2
// Access: Published
// Description: 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;
3049 11 operator () 0 4 3548 22 LMatrix3f::operator () 0 2 1232 1233 454
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Indexing operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Indexing operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
116
inline float &LMatrix3f::operator ()(int row, int col);
inline float LMatrix3f::operator ()(int row, int col) const;
3050 11 operator [] 0 4 3548 22 LMatrix3f::operator [] 0 2 1234 1235 454
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Indexing Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Indexing Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
112
inline LMatrix3f::CRow LMatrix3f::operator [](int i) const;
inline LMatrix3f::Row LMatrix3f::operator [](int i);
3051 4 size 0 4 3548 15 LMatrix3f::size 0 1 1236 266
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::size
// Access: Published, Static
// Description: Returns 3: the number of rows of a LMatrix3.
////////////////////////////////////////////////////////////////////
40
static inline int LMatrix3f::size(void);
3052 6 is_nan 0 4 3548 17 LMatrix3f::is_nan 0 1 1237 310
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::is_nan
// Access: Published
// Description: Returns true if any component of the matrix is
// not-a-number, false otherwise.
////////////////////////////////////////////////////////////////////
42
inline bool LMatrix3f::is_nan(void) const;
3053 8 get_cell 0 4 3548 19 LMatrix3f::get_cell 0 1 1238 261
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_cell
// Access: Published
// Description: Returns a particular element of the matrix.
////////////////////////////////////////////////////////////////////
57
inline float LMatrix3f::get_cell(int row, int col) const;
3054 8 set_cell 0 4 3548 19 LMatrix3f::set_cell 0 1 1239 261
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::set_cell
// Access: Published
// Description: Changes a particular element of the matrix.
////////////////////////////////////////////////////////////////////
63
inline void LMatrix3f::set_cell(int row, int col, float value);
3055 8 get_data 0 4 3548 19 LMatrix3f::get_data 0 1 1240 401
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_data
// Access: Published
// Description: 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;
3056 18 get_num_components 0 4 3548 29 LMatrix3f::get_num_components 0 1 1241 279
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_num_components
// Access: Published
// Description: Returns the number of elements in the matrix, nine.
////////////////////////////////////////////////////////////////////
53
inline int LMatrix3f::get_num_components(void) const;
3057 10 operator < 0 4 3548 21 LMatrix3f::operator < 0 1 1242 504
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Ordering Operator
// Access: Published
// Description: This performs a lexicographical comparison. It's of
// questionable mathematical meaning, but sometimes has
// a practical purpose for sorting unique vectors,
// especially in an STL container. Also see
// compare_to().
////////////////////////////////////////////////////////////////////
64
inline bool LMatrix3f::operator <(LMatrix3f const &other) const;
3058 11 operator == 0 4 3548 22 LMatrix3f::operator == 0 1 1243 226
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Equality Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
65
inline bool LMatrix3f::operator ==(LMatrix3f const &other) const;
3059 11 operator != 0 4 3548 22 LMatrix3f::operator != 0 1 1244 228
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Inequality Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
65
inline bool LMatrix3f::operator !=(LMatrix3f const &other) const;
3060 10 compare_to 0 4 3548 21 LMatrix3f::compare_to 0 2 1245 1246 826
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::compare_to
// Access: Published
// Description: This flavor of compare_to uses a default threshold
// value based on the numeric type.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::compare_to
// Access: Published
// Description: 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;
3061 8 get_hash 0 4 3548 19 LMatrix3f::get_hash 0 2 1247 1248 514
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
////////////////////////////////////////////////////////////////////
116
inline unsigned int LMatrix3f::get_hash(void) const;
inline unsigned int LMatrix3f::get_hash(float threshold) const;
3062 8 add_hash 0 4 3548 19 LMatrix3f::add_hash 0 2 1249 1250 514
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
////////////////////////////////////////////////////////////////////
148
inline unsigned int LMatrix3f::add_hash(unsigned int hash) const;
inline unsigned int LMatrix3f::add_hash(unsigned int hash, float threshold) const;
3063 5 xform 0 4 3548 16 LMatrix3f::xform 0 1 1251 256
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform
// Access: Published
// Description: 3-component vector or point times matrix.
////////////////////////////////////////////////////////////////////
62
inline LVecBase3f LMatrix3f::xform(LVecBase3f const &v) const;
3064 11 xform_point 0 4 3548 22 LMatrix3f::xform_point 0 1 1252 403
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_point
// Access: Published
// Description: 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;
3065 9 xform_vec 0 4 3548 20 LMatrix3f::xform_vec 0 2 1253 1254 849
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_vec
// Access: Published
// Description: The matrix transforms a 2-component vector (without
// translation component) and returns the result. This
// assumes the matrix is an affine transform.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_vec
// Access: Published
// Description: 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;
3066 17 xform_vec_general 0 4 3548 28 LMatrix3f::xform_vec_general 0 1 1255 389
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_vec_general
// Access: Published
// Description: 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;
3067 14 xform_in_place 0 4 3548 25 LMatrix3f::xform_in_place 0 1 1256 265
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_in_place
// Access: Published
// Description: 3-component vector or point times matrix.
////////////////////////////////////////////////////////////////////
59
inline void LMatrix3f::xform_in_place(LVecBase3f &v) const;
3068 20 xform_point_in_place 0 4 3548 31 LMatrix3f::xform_point_in_place 0 1 1257 389
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_point_in_place
// Access: Published
// Description: 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;
3069 18 xform_vec_in_place 0 4 3548 29 LMatrix3f::xform_vec_in_place 0 2 1258 1259 804
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_vec_in_place
// Access: Published
// Description: The matrix transforms a 2-component vector (without
// translation component). This assumes the matrix is
// an affine transform.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_vec_in_place
// Access: Published
// Description: 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;
3070 26 xform_vec_general_in_place 0 4 3548 37 LMatrix3f::xform_vec_general_in_place 0 1 1260 358
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_vec_general_in_place
// Access: Published
// Description: 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;
3071 8 multiply 0 4 3548 19 LMatrix3f::multiply 0 1 1261 52
// this = other1 * other2
// this = other1 * other2
82
inline void LMatrix3f::multiply(LMatrix3f const &other1, LMatrix3f const &other2);
3072 10 operator * 0 4 3548 21 LMatrix3f::operator * 0 2 1262 1263 450
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::matrix * matrix
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::matrix * scalar
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
129
inline LMatrix3f LMatrix3f::operator *(LMatrix3f const &other) const;
inline LMatrix3f LMatrix3f::operator *(float scalar) const;
3073 10 operator / 0 4 3548 21 LMatrix3f::operator / 0 1 1264 224
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::matrix / scalar
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
59
inline LMatrix3f LMatrix3f::operator /(float scalar) const;
3074 11 operator += 0 4 3548 22 LMatrix3f::operator += 0 1 1265 278
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::matrix += matrix
// Access: Published
// Description: Performs a memberwise addition between two matrices.
////////////////////////////////////////////////////////////////////
65
inline LMatrix3f &LMatrix3f::operator +=(LMatrix3f const &other);
3075 11 operator -= 0 4 3548 22 LMatrix3f::operator -= 0 1 1266 281
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::matrix -= matrix
// Access: Published
// Description: Performs a memberwise subtraction between two matrices.
////////////////////////////////////////////////////////////////////
65
inline LMatrix3f &LMatrix3f::operator -=(LMatrix3f const &other);
3076 11 operator *= 0 4 3548 22 LMatrix3f::operator *= 0 2 1267 1268 481
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::matrix *= matrix
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::matrix *= scalar
// Access: Published
// Description: Performs a memberwise scale.
////////////////////////////////////////////////////////////////////
121
inline LMatrix3f &LMatrix3f::operator *=(LMatrix3f const &other);
inline LMatrix3f &LMatrix3f::operator *=(float scalar);
3077 11 operator /= 0 4 3548 22 LMatrix3f::operator /= 0 1 1269 254
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::matrix /= scalar
// Access: Published
// Description: Performs a memberwise scale.
////////////////////////////////////////////////////////////////////
55
inline LMatrix3f &LMatrix3f::operator /=(float scalar);
3078 11 determinant 0 4 3548 22 LMatrix3f::determinant 0 1 1270 259
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::determinant
// Access: Published
// Description: Returns the determinant of the matrix.
////////////////////////////////////////////////////////////////////
48
inline float LMatrix3f::determinant(void) const;
3079 14 transpose_from 0 4 3548 25 LMatrix3f::transpose_from 0 1 1271 223
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::transpose_from
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
62
inline void LMatrix3f::transpose_from(LMatrix3f const &other);
3080 18 transpose_in_place 0 4 3548 29 LMatrix3f::transpose_in_place 0 1 1272 227
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::transpose_in_place
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
48
inline void LMatrix3f::transpose_in_place(void);
3081 11 invert_from 0 4 3548 22 LMatrix3f::invert_from 0 1 1273 808
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::invert_from
// Access: Published
// Description: 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);
3082 15 invert_in_place 0 4 3548 26 LMatrix3f::invert_in_place 0 1 1274 364
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::invert_in_place
// Access: Published
// Description: 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);
3083 21 invert_transpose_from 0 4 3548 32 LMatrix3f::invert_transpose_from 0 2 1275 1276 698
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::invert_transpose_from
// Access: Published
// Description: Simultaneously computes the inverse of the indicated
// matrix, and then the transpose of that inverse.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::invert_transpose_from
// Access: Published
// Description: 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);
3084 9 ident_mat 0 4 3548 20 LMatrix3f::ident_mat 0 1 1277 391
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::ident_mat
// Access: Published, Static
// Description: 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);
3085 17 set_translate_mat 0 4 3548 28 LMatrix3f::set_translate_mat 0 1 1278 306
////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_translate_mat
// Access: Published
// Description: Fills mat with a matrix that applies the indicated
// translation.
////////////////////////////////////////////////////////////////////
66
inline void LMatrix3f::set_translate_mat(LVecBase2f const &trans);
3086 14 set_rotate_mat 0 4 3548 25 LMatrix3f::set_rotate_mat 0 3 1279 1280 1281 816
// The following named constructors return 3x3 matrices suitable for
// scale/rotate transforms in 3-d coordinate space.
////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_rotate_mat
// Access: Published
// Description: Fills mat with a matrix that rotates by the given
// angle in degrees counterclockwise.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_rotate_mat
// Access: Published
// Description: 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));
3087 13 set_scale_mat 0 4 3548 24 LMatrix3f::set_scale_mat 0 2 1282 1283 644
////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_scale_mat
// Access: Published
// Description: Fills mat with a matrix that applies the indicated
// scale in each of the two axes.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_scale_mat
// Access: Published
// Description: 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);
3088 13 translate_mat 0 4 3548 24 LMatrix3f::translate_mat 0 2 1284 1285 608
////////////////////////////////////////////////////////////////////
// Function: LMatrix::translate_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// translation.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix::translate_mat
// Access: Published, Static
// Description: 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);
3089 10 rotate_mat 0 4 3548 21 LMatrix3f::rotate_mat 0 3 1286 1287 1288 671
////////////////////////////////////////////////////////////////////
// Function: LMatrix::rotate_mat
// Access: Published, Static
// Description: Returns a matrix that rotates by the given angle in
// degrees counterclockwise.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix::rotate_mat
// Access: Published, Static
// Description: 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));
3090 9 scale_mat 0 4 3548 20 LMatrix3f::scale_mat 0 4 1289 1290 1291 1292 1278
////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// scale in each of the two axes.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// scale in each of the two axes.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// scale in each of the three axes.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_mat
// Access: Published, Static
// Description: 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);
3091 23 set_rotate_mat_normaxis 0 4 3548 34 LMatrix3f::set_rotate_mat_normaxis 0 2 1293 1294 412
////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_rotate_mat_normaxis
// Access: Published
// Description: 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));
3092 19 rotate_mat_normaxis 0 4 3548 30 LMatrix3f::rotate_mat_normaxis 0 2 1295 1296 408
////////////////////////////////////////////////////////////////////
// Function: LMatrix::rotate_mat_normaxis
// Access: Published, Static
// Description: 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));
3093 13 set_shear_mat 0 4 3548 24 LMatrix3f::set_shear_mat 0 2 1297 1298 324
////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_shear_mat
// Access: Published
// Description: 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));
3094 9 shear_mat 0 4 3548 20 LMatrix3f::shear_mat 0 4 1299 1300 1301 1302 644
////////////////////////////////////////////////////////////////////
// Function: LMatrix::shear_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// shear in each of the three planes.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix::shear_mat
// Access: Published, Static
// Description: 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));
3095 19 set_scale_shear_mat 0 4 3548 30 LMatrix3f::set_scale_shear_mat 0 2 1303 1304 312
////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_scale_shear_mat
// Access: Published
// Description: 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));
3096 15 scale_shear_mat 0 4 3548 26 LMatrix3f::scale_shear_mat 0 4 1305 1306 1307 1308 620
////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_shear_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// scale and shear.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_shear_mat
// Access: Published, Static
// Description: 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));
3097 11 convert_mat 0 4 3548 22 LMatrix3f::convert_mat 0 1 1309 350
////////////////////////////////////////////////////////////////////
// Function: LMatrix::convert_mat
// Access: Published, Static
// Description: 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);
3098 12 almost_equal 0 4 3548 23 LMatrix3f::almost_equal 0 2 1310 1311 813
// We don't have a scale_mat() that takes a single uniform scale
// parameter, because it would be ambiguous whether we mean a 2-d or
// a 3-d scale.
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::almost_equal
// Access: Published
// Description: Returns true if two matrices are memberwise equal
// within a default tolerance based on the numeric type.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::almost_equal
// Access: Published
// Description: 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;
3099 6 output 0 4 3548 17 LMatrix3f::output 0 1 1312 215
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::output
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
43
void LMatrix3f::output(ostream &out) const;
3100 5 write 0 4 3548 16 LMatrix3f::write 0 2 1313 1314 214
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::write
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
66
void LMatrix3f::write(ostream &out, int indent_level = (0)) const;
3101 11 python_repr 0 4 3548 22 LMatrix3f::python_repr 0 1 1315 0
95
inline void LMatrix3f::python_repr(ostream &out, basic_string< char > const &class_name) const;
3102 13 generate_hash 0 4 3548 24 LMatrix3f::generate_hash 0 2 1316 1317 544
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::generate_hash
// Access: Published
// Description: Adds the vector to the indicated hash generator.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::generate_hash
// Access: Published
// Description: 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;
3103 20 write_datagram_fixed 0 4 3548 31 LMatrix3f::write_datagram_fixed 0 1 1318 641
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::write_datagram_fixed
// Access: Published
// Description: 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;
3104 19 read_datagram_fixed 0 4 3548 30 LMatrix3f::read_datagram_fixed 0 1 1319 347
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::read_datagram_fixed
// Access: Published
// Description: Reads the matrix from the Datagram using get_float32()
// or get_float64(). See write_datagram_fixed().
////////////////////////////////////////////////////////////////////
60
void LMatrix3f::read_datagram_fixed(DatagramIterator &scan);
3105 14 write_datagram 0 4 3548 25 LMatrix3f::write_datagram 0 1 1320 463
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::write_datagram
// Access: Published
// Description: 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;
3106 13 read_datagram 0 4 3548 24 LMatrix3f::read_datagram 0 1 1321 279
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::read_datagram
// Access: Published
// Description: Reads the matrix from the Datagram using get_stdfloat().
////////////////////////////////////////////////////////////////////
56
void LMatrix3f::read_datagram(DatagramIterator &source);
3107 14 get_class_type 0 4 3548 25 LMatrix3f::get_class_type 0 1 1322 0
50
static TypeHandle LMatrix3f::get_class_type(void);
3108 10 ~LMatrix3f 0 4 3548 21 LMatrix3f::~LMatrix3f 0 0 0
28
LMatrix3f::~LMatrix3f(void);
3109 9 transpose 0 1 0 9 transpose 0 4 1895 1896 1897 1898 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);
3110 6 invert 0 1 0 6 invert 0 6 1899 1900 1901 1902 1903 1904 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);
3111 11 operator [] 0 4 3552 27 LMatrix4f::Row::operator [] 0 2 1448 1449 454
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Row::operator []
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Row::operator []
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
104
inline float LMatrix4f::Row::operator [](int i) const;
inline float &LMatrix4f::Row::operator [](int i);
3112 11 __setitem__ 0 4 3552 27 LMatrix4f::Row::__setitem__ 0 1 1450 0
56
inline void LMatrix4f::Row::__setitem__(int i, float v);
3113 4 size 0 4 3552 20 LMatrix4f::Row::size 0 1 1451 271
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Row::size
// Access: Public, Static
// Description: Returns 4: the number of columns of a LMatrix4.
////////////////////////////////////////////////////////////////////
45
static inline int LMatrix4f::Row::size(void);
3114 4 ~Row 0 4 3552 20 LMatrix4f::Row::~Row 0 0 0
27
LMatrix4f::Row::~Row(void);
3115 11 operator [] 0 4 3553 28 LMatrix4f::CRow::operator [] 0 1 1452 227
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::CRow::operator []
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
55
inline float LMatrix4f::CRow::operator [](int i) const;
3116 4 size 0 4 3553 21 LMatrix4f::CRow::size 0 1 1453 272
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::CRow::size
// Access: Public, Static
// Description: Returns 4: the number of columns of a LMatrix4.
////////////////////////////////////////////////////////////////////
46
static inline int LMatrix4f::CRow::size(void);
3117 5 ~CRow 0 4 3553 22 LMatrix4f::CRow::~CRow 0 0 0
29
LMatrix4f::CRow::~CRow(void);
3118 9 LMatrix4f 0 4 3551 20 LMatrix4f::LMatrix4f 0 6 1329 1330 1331 1332 1333 1334 1566
// Construct a 4x4 matrix given a 3x3 rotation matrix and an optional
// translation component.
// Construct a 4x4 matrix given a 3x3 rotation matrix and an optional
// translation component.
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Default Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Copy Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Copy Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Constructor, upper 3x3
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Constructor, upper 3x3 plus translation
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
487
inline LMatrix4f::LMatrix4f(void);
inline LMatrix4f::LMatrix4f(LMatrix4f const &other);
inline LMatrix4f::LMatrix4f(UnalignedLMatrix4f const &other);
inline LMatrix4f::LMatrix4f(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);
inline LMatrix4f::LMatrix4f(LMatrix3f const &upper3);
inline LMatrix4f::LMatrix4f(LMatrix3f const &upper3, LVecBase3f const &trans);
3119 10 operator = 0 4 3551 21 LMatrix4f::operator = 0 3 1335 1336 1337 697
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Copy Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Copy Assignment Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Fill Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
197
inline LMatrix4f &LMatrix4f::operator =(LMatrix4f const &other);
inline LMatrix4f &LMatrix4f::operator =(UnalignedLMatrix4f const &other);
inline LMatrix4f &LMatrix4f::operator =(float fill_value);
3120 12 operator new 0 4 3551 23 LMatrix4f::operator new 0 1 1338 0
124
inline void *LMatrix4f::operator new(unsigned int size);
inline void *LMatrix4f::operator new(unsigned int size, void *ptr);
3121 15 operator delete 0 4 3551 26 LMatrix4f::operator delete 0 0 0
106
inline void LMatrix4f::operator delete(void *ptr);
inline void LMatrix4f::operator delete(void *, void *);
3122 12 validate_ptr 0 4 3551 23 LMatrix4f::validate_ptr 0 0 0
60
static inline bool LMatrix4f::validate_ptr(void const *ptr);
3123 10 __reduce__ 0 4 3551 21 LMatrix4f::__reduce__ 0 1 1339 0
61
inline PyObject *LMatrix4f::__reduce__(PyObject *self) const;
3124 4 fill 0 4 3551 15 LMatrix4f::fill 0 1 1340 388
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::fill
// Access: Public
// Description: 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);
3125 3 set 0 4 3551 14 LMatrix4f::set 0 1 1341 209
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::set
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
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);
3126 11 set_upper_3 0 4 3551 22 LMatrix4f::set_upper_3 0 1 1342 294
// Get and set the upper 3x3 rotation matrix.
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::set_upper_3
// Access: Public
// Description: Sets the upper 3x3 submatrix.
////////////////////////////////////////////////////////////////////
60
inline void LMatrix4f::set_upper_3(LMatrix3f const &upper3);
3127 11 get_upper_3 0 4 3551 22 LMatrix4f::get_upper_3 0 1 1343 299
// Get and set the upper 3x3 rotation matrix.
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_upper_3
// Access: Public
// Description: Retrieves the upper 3x3 submatrix.
////////////////////////////////////////////////////////////////////
52
inline LMatrix3f LMatrix4f::get_upper_3(void) const;
3128 7 set_row 0 4 3551 18 LMatrix4f::set_row 0 2 1344 1345 610
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::set_row
// Access: Public
// Description: Replaces the indicated row of the matrix.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::set_row
// Access: Public
// Description: 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);
3129 7 set_col 0 4 3551 18 LMatrix4f::set_col 0 2 1346 1347 613
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::set_col
// Access: Public
// Description: Replaces the indicated column of the matrix.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::set_col
// Access: Public
// Description: 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);
3130 7 get_row 0 4 3551 18 LMatrix4f::get_row 0 2 1348 1349 626
// these versions inline better
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_row
// Access: Public
// Description: Retrieves the indicated row of the matrix as a
// 4-component vector.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_row
// Access: Public
// Description: 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;
3131 7 get_col 0 4 3551 18 LMatrix4f::get_col 0 1 1350 300
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_col
// Access: Public
// Description: Retrieves the indicated column of the matrix as a
// 4-component vector.
////////////////////////////////////////////////////////////////////
52
inline LVecBase4f LMatrix4f::get_col(int col) const;
3132 8 get_row3 0 4 3551 19 LMatrix4f::get_row3 0 2 1351 1352 674
// these versions inline better
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_row3
// Access: Public
// Description: Retrieves the row column of the matrix as a
// 3-component vector, ignoring the last column.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_row3
// Access: Public
// Description: 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;
3133 8 get_col3 0 4 3551 19 LMatrix4f::get_col3 0 1 1353 324
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_col3
// Access: Public
// Description: 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;
3134 11 operator () 0 4 3551 22 LMatrix4f::operator () 0 2 1354 1355 448
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Indexing operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Indexing operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
116
inline float &LMatrix4f::operator ()(int row, int col);
inline float LMatrix4f::operator ()(int row, int col) const;
3135 11 operator [] 0 4 3551 22 LMatrix4f::operator [] 0 2 1356 1357 448
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Indexing Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Indexing Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
112
inline LMatrix4f::CRow LMatrix4f::operator [](int i) const;
inline LMatrix4f::Row LMatrix4f::operator [](int i);
3136 4 size 0 4 3551 15 LMatrix4f::size 0 1 1358 263
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::size
// Access: Public, Static
// Description: Returns 4: the number of rows of a LMatrix4.
////////////////////////////////////////////////////////////////////
40
static inline int LMatrix4f::size(void);
3137 6 is_nan 0 4 3551 17 LMatrix4f::is_nan 0 1 1359 307
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::is_nan
// Access: Public
// Description: Returns true if any component of the matrix is
// not-a-number, false otherwise.
////////////////////////////////////////////////////////////////////
42
inline bool LMatrix4f::is_nan(void) const;
3138 8 get_cell 0 4 3551 19 LMatrix4f::get_cell 0 1 1360 258
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_cell
// Access: Public
// Description: Returns a particular element of the matrix.
////////////////////////////////////////////////////////////////////
57
inline float LMatrix4f::get_cell(int row, int col) const;
3139 8 set_cell 0 4 3551 19 LMatrix4f::set_cell 0 1 1361 258
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::set_cell
// Access: Public
// Description: Changes a particular element of the matrix.
////////////////////////////////////////////////////////////////////
63
inline void LMatrix4f::set_cell(int row, int col, float value);
3140 8 get_data 0 4 3551 19 LMatrix4f::get_data 0 1 1362 398
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_data
// Access: Public
// Description: 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;
3141 18 get_num_components 0 4 3551 29 LMatrix4f::get_num_components 0 1 1363 274
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_num_components
// Access: Public
// Description: Returns the number of elements in the matrix, 16.
////////////////////////////////////////////////////////////////////
53
inline int LMatrix4f::get_num_components(void) const;
3142 5 begin 0 4 3551 16 LMatrix4f::begin 0 2 1364 1365 634
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::begin
// Access: Public
// Description: Returns an iterator that may be used to traverse the
// elements of the matrix, STL-style.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::begin
// Access: Public
// Description: Returns an iterator that may be used to traverse the
// elements of the matrix, STL-style.
////////////////////////////////////////////////////////////////////
93
inline float const *LMatrix4f::begin(void);
inline float const *LMatrix4f::begin(void) const;
3143 3 end 0 4 3551 14 LMatrix4f::end 0 2 1366 1367 630
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::end
// Access: Public
// Description: Returns an iterator that may be used to traverse the
// elements of the matrix, STL-style.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::end
// Access: Public
// Description: Returns an iterator that may be used to traverse the
// elements of the matrix, STL-style.
////////////////////////////////////////////////////////////////////
89
inline float const *LMatrix4f::end(void);
inline float const *LMatrix4f::end(void) const;
3144 10 operator < 0 4 3551 21 LMatrix4f::operator < 0 1 1368 501
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Ordering Operator
// Access: Public
// Description: This performs a lexicographical comparison. It's of
// questionable mathematical meaning, but sometimes has
// a practical purpose for sorting unique vectors,
// especially in an STL container. Also see
// compare_to().
////////////////////////////////////////////////////////////////////
64
inline bool LMatrix4f::operator <(LMatrix4f const &other) const;
3145 11 operator == 0 4 3551 22 LMatrix4f::operator == 0 1 1369 223
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Equality Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
65
inline bool LMatrix4f::operator ==(LMatrix4f const &other) const;
3146 11 operator != 0 4 3551 22 LMatrix4f::operator != 0 1 1370 225
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Inequality Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
65
inline bool LMatrix4f::operator !=(LMatrix4f const &other) const;
3147 10 compare_to 0 4 3551 21 LMatrix4f::compare_to 0 2 1371 1372 820
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::compare_to
// Access: Public
// Description: This flavor of compare_to uses a default threshold
// value based on the numeric type.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::compare_to
// Access: Public
// Description: 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;
3148 8 get_hash 0 4 3551 19 LMatrix4f::get_hash 0 2 1373 1374 508
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_hash
// Access: Public
// Description: Returns a suitable hash for phash_map.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_hash
// Access: Public
// Description: Returns a suitable hash for phash_map.
////////////////////////////////////////////////////////////////////
116
inline unsigned int LMatrix4f::get_hash(void) const;
inline unsigned int LMatrix4f::get_hash(float threshold) const;
3149 8 add_hash 0 4 3551 19 LMatrix4f::add_hash 0 2 1375 1376 508
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::add_hash
// Access: Public
// Description: Adds the vector into the running hash.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::add_hash
// Access: Public
// Description: Adds the vector into the running hash.
////////////////////////////////////////////////////////////////////
148
inline unsigned int LMatrix4f::add_hash(unsigned int hash) const;
inline unsigned int LMatrix4f::add_hash(unsigned int hash, float threshold) const;
3150 5 xform 0 4 3551 16 LMatrix4f::xform 0 1 1377 306
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform
// Access: Public
// Description: 4-component vector or point times matrix. This is a
// fully general operation.
////////////////////////////////////////////////////////////////////
62
inline LVecBase4f LMatrix4f::xform(LVecBase4f const &v) const;
3151 11 xform_point 0 4 3551 22 LMatrix4f::xform_point 0 1 1378 400
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_point
// Access: Public
// Description: 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;
3152 19 xform_point_general 0 4 3551 30 LMatrix4f::xform_point_general 0 1 1379 389
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_point_general
// Access: Public
// Description: 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;
3153 9 xform_vec 0 4 3551 20 LMatrix4f::xform_vec 0 1 1380 402
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_vec
// Access: Public
// Description: 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;
3154 17 xform_vec_general 0 4 3551 28 LMatrix4f::xform_vec_general 0 1 1381 386
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_vec_general
// Access: Public
// Description: 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;
3155 14 xform_in_place 0 4 3551 25 LMatrix4f::xform_in_place 0 1 1382 315
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_in_place
// Access: Public
// Description: 4-component vector or point times matrix. This is a
// fully general operation.
////////////////////////////////////////////////////////////////////
59
inline void LMatrix4f::xform_in_place(LVecBase4f &v) const;
3156 20 xform_point_in_place 0 4 3551 31 LMatrix4f::xform_point_in_place 0 1 1383 386
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_point_in_place
// Access: Public
// Description: 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;
3157 28 xform_point_general_in_place 0 4 3551 39 LMatrix4f::xform_point_general_in_place 0 1 1384 358
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_point_general_in_place
// Access: Public
// Description: 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;
3158 18 xform_vec_in_place 0 4 3551 29 LMatrix4f::xform_vec_in_place 0 1 1385 388
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_vec_in_place
// Access: Public
// Description: 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;
3159 26 xform_vec_general_in_place 0 4 3551 37 LMatrix4f::xform_vec_general_in_place 0 1 1386 355
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_vec_general_in_place
// Access: Public
// Description: 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;
3160 8 multiply 0 4 3551 19 LMatrix4f::multiply 0 1 1387 52
// this = other1 * other2
// this = other1 * other2
82
inline void LMatrix4f::multiply(LMatrix4f const &other1, LMatrix4f const &other2);
3161 10 operator * 0 4 3551 21 LMatrix4f::operator * 0 2 1388 1389 444
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::matrix * matrix
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::matrix * scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
129
inline LMatrix4f LMatrix4f::operator *(LMatrix4f const &other) const;
inline LMatrix4f LMatrix4f::operator *(float scalar) const;
3162 10 operator / 0 4 3551 21 LMatrix4f::operator / 0 1 1390 221
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::matrix / scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
59
inline LMatrix4f LMatrix4f::operator /(float scalar) const;
3163 11 operator += 0 4 3551 22 LMatrix4f::operator += 0 1 1391 275
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::matrix += matrix
// Access: Public
// Description: Performs a memberwise addition between two matrices.
////////////////////////////////////////////////////////////////////
65
inline LMatrix4f &LMatrix4f::operator +=(LMatrix4f const &other);
3164 11 operator -= 0 4 3551 22 LMatrix4f::operator -= 0 1 1392 275
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::matrix -= matrix
// Access: Public
// Description: Performs a memberwise addition between two matrices.
////////////////////////////////////////////////////////////////////
65
inline LMatrix4f &LMatrix4f::operator -=(LMatrix4f const &other);
3165 11 operator *= 0 4 3551 22 LMatrix4f::operator *= 0 2 1393 1394 446
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::matrix *= matrix
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::matrix *= scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
121
inline LMatrix4f &LMatrix4f::operator *=(LMatrix4f const &other);
inline LMatrix4f &LMatrix4f::operator *=(float scalar);
3166 11 operator /= 0 4 3551 22 LMatrix4f::operator /= 0 1 1395 222
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::matrix /= scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
55
inline LMatrix4f &LMatrix4f::operator /=(float scalar);
3167 14 transpose_from 0 4 3551 25 LMatrix4f::transpose_from 0 1 1396 220
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::transpose_from
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
62
inline void LMatrix4f::transpose_from(LMatrix4f const &other);
3168 18 transpose_in_place 0 4 3551 29 LMatrix4f::transpose_in_place 0 1 1397 224
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::transpose_in_place
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
48
inline void LMatrix4f::transpose_in_place(void);
3169 11 invert_from 0 4 3551 22 LMatrix4f::invert_from 0 1 1398 803
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::invert_from
// Access: Public
// Description: 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);
3170 18 invert_affine_from 0 4 3551 29 LMatrix4f::invert_affine_from 0 1 1399 931
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::invert_affine_from
// Access: Public
// Description: Performs an invert of the indicated matrix, storing
// the result in this matrix. The calculation is only
// correct of the other matrix represents an affine
// transform.
//
// 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.
////////////////////////////////////////////////////////////////////
// bugbug: we could optimize this for rotation/scale/translation matrices
// (transpose upper 3x3 and take negative of translation component)
66
inline bool LMatrix4f::invert_affine_from(LMatrix4f const &other);
3171 15 invert_in_place 0 4 3551 26 LMatrix4f::invert_in_place 0 1 1400 361
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::invert_in_place
// Access: Public
// Description: 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);
3172 10 accumulate 0 4 3551 21 LMatrix4f::accumulate 0 1 1401 252
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::accumulate
// Access: Public
// Description: Computes (*this) += other * weight.
////////////////////////////////////////////////////////////////////
72
inline void LMatrix4f::accumulate(LMatrix4f const &other, float weight);
3173 9 ident_mat 0 4 3551 20 LMatrix4f::ident_mat 0 1 1402 388
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::ident_mat
// Access: Public, Static
// Description: 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);
3174 8 ones_mat 0 4 3551 19 LMatrix4f::ones_mat 0 1 1403 258
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::ones_mat
// Access: Public, Static
// Description: Returns an matrix filled with ones.
////////////////////////////////////////////////////////////////////
57
static inline LMatrix4f const &LMatrix4f::ones_mat(void);
3175 9 zeros_mat 0 4 3551 20 LMatrix4f::zeros_mat 0 1 1404 260
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::zeros_mat
// Access: Public, Static
// Description: Returns an matrix filled with zeros.
////////////////////////////////////////////////////////////////////
58
static inline LMatrix4f const &LMatrix4f::zeros_mat(void);
3176 17 set_translate_mat 0 4 3551 28 LMatrix4f::set_translate_mat 0 1 1405 303
////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_translate_mat
// Access: Public
// Description: Fills mat with a matrix that applies the indicated
// translation.
////////////////////////////////////////////////////////////////////
66
inline void LMatrix4f::set_translate_mat(LVecBase3f const &trans);
3177 14 set_rotate_mat 0 4 3551 25 LMatrix4f::set_rotate_mat 0 2 1406 1407 362
////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_rotate_mat
// Access: Public
// Description: 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));
3178 23 set_rotate_mat_normaxis 0 4 3551 34 LMatrix4f::set_rotate_mat_normaxis 0 2 1408 1409 412
////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_rotate_mat_normaxis
// Access: Public
// Description: 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));
3179 13 set_scale_mat 0 4 3551 24 LMatrix4f::set_scale_mat 0 1 1410 319
////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_scale_mat
// Access: Public
// Description: 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);
3180 13 set_shear_mat 0 4 3551 24 LMatrix4f::set_shear_mat 0 2 1411 1412 321
////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_shear_mat
// Access: Public
// Description: 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));
3181 19 set_scale_shear_mat 0 4 3551 30 LMatrix4f::set_scale_shear_mat 0 2 1413 1414 317
////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_scale_shear_mat
// Access: Public, Static
// Description: 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));
3182 13 translate_mat 0 4 3551 24 LMatrix4f::translate_mat 0 2 1415 1416 602
////////////////////////////////////////////////////////////////////
// Function: LMatrix::translate_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// translation.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix::translate_mat
// Access: Public, Static
// Description: 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);
3183 10 rotate_mat 0 4 3551 21 LMatrix4f::rotate_mat 0 2 1417 1418 345
////////////////////////////////////////////////////////////////////
// Function: LMatrix::rotate_mat
// Access: Public, Static
// Description: 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));
3184 19 rotate_mat_normaxis 0 4 3551 30 LMatrix4f::rotate_mat_normaxis 0 2 1419 1420 408
////////////////////////////////////////////////////////////////////
// Function: LMatrix::rotate_mat_normaxis
// Access: Public, Static
// Description: 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));
3185 9 scale_mat 0 4 3551 20 LMatrix4f::scale_mat 0 3 1421 1422 1423 934
////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// scale in each of the three axes.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// scale in each of the three axes.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_mat
// Access: Public, Static
// Description: 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);
3186 9 shear_mat 0 4 3551 20 LMatrix4f::shear_mat 0 4 1424 1425 1426 1427 638
////////////////////////////////////////////////////////////////////
// Function: LMatrix::shear_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// shear in each of the three planes.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix::shear_mat
// Access: Public, Static
// Description: 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));
3187 15 scale_shear_mat 0 4 3551 26 LMatrix4f::scale_shear_mat 0 4 1428 1429 1430 1431 614
////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_shear_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// scale and shear.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_shear_mat
// Access: Public, Static
// Description: 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));
3188 13 y_to_z_up_mat 0 4 3551 24 LMatrix4f::y_to_z_up_mat 0 1 1432 339
////////////////////////////////////////////////////////////////////
// Function: LMatrix::y_to_z_up_mat
// Access: Public, Static
// Description: 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);
3189 13 z_to_y_up_mat 0 4 3551 24 LMatrix4f::z_to_y_up_mat 0 1 1433 339
////////////////////////////////////////////////////////////////////
// Function: LMatrix::z_to_y_up_mat
// Access: Public, Static
// Description: 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);
3190 11 convert_mat 0 4 3551 22 LMatrix4f::convert_mat 0 1 1434 347
////////////////////////////////////////////////////////////////////
// Function: LMatrix::convert_mat
// Access: Public, Static
// Description: 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);
3191 12 almost_equal 0 4 3551 23 LMatrix4f::almost_equal 0 2 1435 1436 656
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::almost_equal
// Access: Public
// Description: Returns true if two matrices are memberwise equal
// within a default tolerance based on the numeric type.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::almost_equal
// Access: Public
// Description: Returns true if two matrices are memberwise equal
// within a specified tolerance.
////////////////////////////////////////////////////////////////////
143
bool LMatrix4f::almost_equal(LMatrix4f const &other, float threshold) const;
inline bool LMatrix4f::almost_equal(LMatrix4f const &other) const;
3192 6 output 0 4 3551 17 LMatrix4f::output 0 1 1437 212
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::output
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
43
void LMatrix4f::output(ostream &out) const;
3193 5 write 0 4 3551 16 LMatrix4f::write 0 2 1438 1439 211
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::write
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
66
void LMatrix4f::write(ostream &out, int indent_level = (0)) const;
3194 11 python_repr 0 4 3551 22 LMatrix4f::python_repr 0 1 1440 0
95
inline void LMatrix4f::python_repr(ostream &out, basic_string< char > const &class_name) const;
3195 13 generate_hash 0 4 3551 24 LMatrix4f::generate_hash 0 2 1441 1442 538
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::generate_hash
// Access: Public
// Description: Adds the vector to the indicated hash generator.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::generate_hash
// Access: Public
// Description: 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;
3196 20 write_datagram_fixed 0 4 3551 31 LMatrix4f::write_datagram_fixed 0 1 1443 641
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::write_datagram_fixed
// Access: Published
// Description: 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;
3197 19 read_datagram_fixed 0 4 3551 30 LMatrix4f::read_datagram_fixed 0 1 1444 347
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::read_datagram_fixed
// Access: Published
// Description: Reads the matrix from the Datagram using get_float32()
// or get_float64(). See write_datagram_fixed().
////////////////////////////////////////////////////////////////////
60
void LMatrix4f::read_datagram_fixed(DatagramIterator &scan);
3198 14 write_datagram 0 4 3551 25 LMatrix4f::write_datagram 0 1 1445 463
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::write_datagram
// Access: Published
// Description: 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;
3199 13 read_datagram 0 4 3551 24 LMatrix4f::read_datagram 0 1 1446 279
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::read_datagram
// Access: Published
// Description: Reads the matrix from the Datagram using get_stdfloat().
////////////////////////////////////////////////////////////////////
56
void LMatrix4f::read_datagram(DatagramIterator &source);
3200 14 get_class_type 0 4 3551 25 LMatrix4f::get_class_type 0 1 1447 0
50
static TypeHandle LMatrix4f::get_class_type(void);
3201 10 ~LMatrix4f 0 4 3551 21 LMatrix4f::~LMatrix4f 0 0 0
28
LMatrix4f::~LMatrix4f(void);
3202 18 UnalignedLMatrix4f 0 4 3554 38 UnalignedLMatrix4f::UnalignedLMatrix4f 0 4 1454 1455 1456 1457 928
////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::Default Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::Copy Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::Copy Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
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);
3203 10 operator = 0 4 3554 30 UnalignedLMatrix4f::operator = 0 2 1458 1459 480
////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::Copy Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::Copy Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
172
inline UnalignedLMatrix4f &UnalignedLMatrix4f::operator =(LMatrix4f const &copy);
inline UnalignedLMatrix4f &UnalignedLMatrix4f::operator =(UnalignedLMatrix4f const &copy);
3204 3 set 0 4 3554 23 UnalignedLMatrix4f::set 0 1 1460 221
////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::set
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
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);
3205 11 operator () 0 4 3554 31 UnalignedLMatrix4f::operator () 0 2 1461 1462 472
////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::Indexing operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::Indexing operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
134
inline float &UnalignedLMatrix4f::operator ()(int row, int col);
inline float UnalignedLMatrix4f::operator ()(int row, int col) const;
3206 8 get_data 0 4 3554 28 UnalignedLMatrix4f::get_data 0 1 1463 410
////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::get_data
// Access: Published
// Description: 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;
3207 18 get_num_components 0 4 3554 38 UnalignedLMatrix4f::get_num_components 0 1 1464 291
////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::get_num_components
// Access: Published
// Description: Returns the number of elements in the matrix, sixteen.
////////////////////////////////////////////////////////////////////
62
inline int UnalignedLMatrix4f::get_num_components(void) const;
3208 14 get_class_type 0 4 3554 34 UnalignedLMatrix4f::get_class_type 0 1 1465 0
59
static TypeHandle UnalignedLMatrix4f::get_class_type(void);
3209 19 ~UnalignedLMatrix4f 0 4 3554 39 UnalignedLMatrix4f::~UnalignedLMatrix4f 0 0 0
46
UnalignedLMatrix4f::~UnalignedLMatrix4f(void);
3210 11 operator [] 0 4 3556 27 LMatrix3d::Row::operator [] 0 2 1575 1576 454
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Row::operator []
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Row::operator []
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
106
inline double LMatrix3d::Row::operator [](int i) const;
inline double &LMatrix3d::Row::operator [](int i);
3211 11 __setitem__ 0 4 3556 27 LMatrix3d::Row::__setitem__ 0 1 1577 0
57
inline void LMatrix3d::Row::__setitem__(int i, double v);
3212 4 size 0 4 3556 20 LMatrix3d::Row::size 0 1 1578 274
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Row::size
// Access: Published, Static
// Description: Returns 3: the number of columns of a LMatrix3.
////////////////////////////////////////////////////////////////////
45
static inline int LMatrix3d::Row::size(void);
3213 4 ~Row 0 4 3556 20 LMatrix3d::Row::~Row 0 0 0
27
LMatrix3d::Row::~Row(void);
3214 11 operator [] 0 4 3557 28 LMatrix3d::CRow::operator [] 0 1 1579 227
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::CRow::operator []
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
56
inline double LMatrix3d::CRow::operator [](int i) const;
3215 4 size 0 4 3557 21 LMatrix3d::CRow::size 0 1 1580 275
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::CRow::size
// Access: Published, Static
// Description: Returns 3: the number of columns of a LMatrix3.
////////////////////////////////////////////////////////////////////
46
static inline int LMatrix3d::CRow::size(void);
3216 5 ~CRow 0 4 3557 22 LMatrix3d::CRow::~CRow 0 0 0
29
LMatrix3d::CRow::~CRow(void);
3217 9 LMatrix3d 0 4 3555 20 LMatrix3d::LMatrix3d 0 3 1466 1467 1468 677
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Default Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Copy Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
224
inline LMatrix3d::LMatrix3d(void);
inline LMatrix3d::LMatrix3d(LMatrix3d const &other);
inline LMatrix3d::LMatrix3d(double e00, double e01, double e02, double e10, double e11, double e12, double e20, double e21, double e22);
3218 10 operator = 0 4 3555 21 LMatrix3d::operator = 0 2 1469 1470 468
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Copy Assignment Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Fill Assignment Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
124
inline LMatrix3d &LMatrix3d::operator =(LMatrix3d const &other);
inline LMatrix3d &LMatrix3d::operator =(double fill_value);
3219 12 operator new 0 4 3555 23 LMatrix3d::operator new 0 1 1471 0
124
inline void *LMatrix3d::operator new(unsigned int size);
inline void *LMatrix3d::operator new(unsigned int size, void *ptr);
3220 15 operator delete 0 4 3555 26 LMatrix3d::operator delete 0 0 0
106
inline void LMatrix3d::operator delete(void *ptr);
inline void LMatrix3d::operator delete(void *, void *);
3221 12 validate_ptr 0 4 3555 23 LMatrix3d::validate_ptr 0 0 0
60
static inline bool LMatrix3d::validate_ptr(void const *ptr);
3222 10 __reduce__ 0 4 3555 21 LMatrix3d::__reduce__ 0 1 1472 0
61
inline PyObject *LMatrix3d::__reduce__(PyObject *self) const;
3223 4 fill 0 4 3555 15 LMatrix3d::fill 0 1 1473 391
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::fill
// Access: Published
// Description: 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);
3224 3 set 0 4 3555 14 LMatrix3d::set 0 1 1474 212
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::set
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
135
inline void LMatrix3d::set(double e00, double e01, double e02, double e10, double e11, double e12, double e20, double e21, double e22);
3225 7 set_row 0 4 3555 18 LMatrix3d::set_row 0 2 1475 1476 636
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::set_row
// Access: Published
// Description: Replaces the indicated row of the matrix from a
// three-component vector.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::set_row
// Access: Published
// Description: 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);
3226 7 set_col 0 4 3555 18 LMatrix3d::set_col 0 2 1477 1478 645
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::set_column
// Access: Published
// Description: Replaces the indicated column of the matrix from a
// three-component vector.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::set_column
// Access: Published
// Description: 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);
3227 7 get_row 0 4 3555 18 LMatrix3d::get_row 0 2 1479 1480 638
// these versions inline better
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_row
// Access: Published
// Description: Returns the indicated row of the matrix as a
// three-component vector.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_row
// Access: Published
// Description: 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;
3228 7 get_col 0 4 3555 18 LMatrix3d::get_col 0 1 1481 305
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_col
// Access: Published
// Description: Returns the indicated column of the matrix as a
// three-component vector.
////////////////////////////////////////////////////////////////////
52
inline LVecBase3d LMatrix3d::get_col(int col) const;
3229 8 get_row2 0 4 3555 19 LMatrix3d::get_row2 0 1 1482 327
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_row2
// Access: Published
// Description: 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;
3230 8 get_col2 0 4 3555 19 LMatrix3d::get_col2 0 1 1483 327
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_col2
// Access: Published
// Description: 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;
3231 11 operator () 0 4 3555 22 LMatrix3d::operator () 0 2 1484 1485 454
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Indexing operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Indexing operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
118
inline double &LMatrix3d::operator ()(int row, int col);
inline double LMatrix3d::operator ()(int row, int col) const;
3232 11 operator [] 0 4 3555 22 LMatrix3d::operator [] 0 2 1486 1487 454
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Indexing Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Indexing Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
112
inline LMatrix3d::CRow LMatrix3d::operator [](int i) const;
inline LMatrix3d::Row LMatrix3d::operator [](int i);
3233 4 size 0 4 3555 15 LMatrix3d::size 0 1 1488 266
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::size
// Access: Published, Static
// Description: Returns 3: the number of rows of a LMatrix3.
////////////////////////////////////////////////////////////////////
40
static inline int LMatrix3d::size(void);
3234 6 is_nan 0 4 3555 17 LMatrix3d::is_nan 0 1 1489 310
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::is_nan
// Access: Published
// Description: Returns true if any component of the matrix is
// not-a-number, false otherwise.
////////////////////////////////////////////////////////////////////
42
inline bool LMatrix3d::is_nan(void) const;
3235 8 get_cell 0 4 3555 19 LMatrix3d::get_cell 0 1 1490 261
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_cell
// Access: Published
// Description: Returns a particular element of the matrix.
////////////////////////////////////////////////////////////////////
58
inline double LMatrix3d::get_cell(int row, int col) const;
3236 8 set_cell 0 4 3555 19 LMatrix3d::set_cell 0 1 1491 261
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::set_cell
// Access: Published
// Description: Changes a particular element of the matrix.
////////////////////////////////////////////////////////////////////
64
inline void LMatrix3d::set_cell(int row, int col, double value);
3237 8 get_data 0 4 3555 19 LMatrix3d::get_data 0 1 1492 401
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_data
// Access: Published
// Description: 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;
3238 18 get_num_components 0 4 3555 29 LMatrix3d::get_num_components 0 1 1493 279
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_num_components
// Access: Published
// Description: Returns the number of elements in the matrix, nine.
////////////////////////////////////////////////////////////////////
53
inline int LMatrix3d::get_num_components(void) const;
3239 10 operator < 0 4 3555 21 LMatrix3d::operator < 0 1 1494 504
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Ordering Operator
// Access: Published
// Description: This performs a lexicographical comparison. It's of
// questionable mathematical meaning, but sometimes has
// a practical purpose for sorting unique vectors,
// especially in an STL container. Also see
// compare_to().
////////////////////////////////////////////////////////////////////
64
inline bool LMatrix3d::operator <(LMatrix3d const &other) const;
3240 11 operator == 0 4 3555 22 LMatrix3d::operator == 0 1 1495 226
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Equality Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
65
inline bool LMatrix3d::operator ==(LMatrix3d const &other) const;
3241 11 operator != 0 4 3555 22 LMatrix3d::operator != 0 1 1496 228
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Inequality Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
65
inline bool LMatrix3d::operator !=(LMatrix3d const &other) const;
3242 10 compare_to 0 4 3555 21 LMatrix3d::compare_to 0 2 1497 1498 826
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::compare_to
// Access: Published
// Description: This flavor of compare_to uses a default threshold
// value based on the numeric type.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::compare_to
// Access: Published
// Description: 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;
3243 8 get_hash 0 4 3555 19 LMatrix3d::get_hash 0 2 1499 1500 514
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
////////////////////////////////////////////////////////////////////
117
inline unsigned int LMatrix3d::get_hash(void) const;
inline unsigned int LMatrix3d::get_hash(double threshold) const;
3244 8 add_hash 0 4 3555 19 LMatrix3d::add_hash 0 2 1501 1502 514
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
////////////////////////////////////////////////////////////////////
149
inline unsigned int LMatrix3d::add_hash(unsigned int hash) const;
inline unsigned int LMatrix3d::add_hash(unsigned int hash, double threshold) const;
3245 5 xform 0 4 3555 16 LMatrix3d::xform 0 1 1503 256
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform
// Access: Published
// Description: 3-component vector or point times matrix.
////////////////////////////////////////////////////////////////////
62
inline LVecBase3d LMatrix3d::xform(LVecBase3d const &v) const;
3246 11 xform_point 0 4 3555 22 LMatrix3d::xform_point 0 1 1504 403
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_point
// Access: Published
// Description: 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;
3247 9 xform_vec 0 4 3555 20 LMatrix3d::xform_vec 0 2 1505 1506 849
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_vec
// Access: Published
// Description: The matrix transforms a 2-component vector (without
// translation component) and returns the result. This
// assumes the matrix is an affine transform.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_vec
// Access: Published
// Description: 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;
3248 17 xform_vec_general 0 4 3555 28 LMatrix3d::xform_vec_general 0 1 1507 389
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_vec_general
// Access: Published
// Description: 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;
3249 14 xform_in_place 0 4 3555 25 LMatrix3d::xform_in_place 0 1 1508 265
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_in_place
// Access: Published
// Description: 3-component vector or point times matrix.
////////////////////////////////////////////////////////////////////
59
inline void LMatrix3d::xform_in_place(LVecBase3d &v) const;
3250 20 xform_point_in_place 0 4 3555 31 LMatrix3d::xform_point_in_place 0 1 1509 389
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_point_in_place
// Access: Published
// Description: 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;
3251 18 xform_vec_in_place 0 4 3555 29 LMatrix3d::xform_vec_in_place 0 2 1510 1511 804
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_vec_in_place
// Access: Published
// Description: The matrix transforms a 2-component vector (without
// translation component). This assumes the matrix is
// an affine transform.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_vec_in_place
// Access: Published
// Description: 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;
3252 26 xform_vec_general_in_place 0 4 3555 37 LMatrix3d::xform_vec_general_in_place 0 1 1512 358
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_vec_general_in_place
// Access: Published
// Description: 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;
3253 8 multiply 0 4 3555 19 LMatrix3d::multiply 0 1 1513 52
// this = other1 * other2
// this = other1 * other2
82
inline void LMatrix3d::multiply(LMatrix3d const &other1, LMatrix3d const &other2);
3254 10 operator * 0 4 3555 21 LMatrix3d::operator * 0 2 1514 1515 450
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::matrix * matrix
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::matrix * scalar
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
130
inline LMatrix3d LMatrix3d::operator *(LMatrix3d const &other) const;
inline LMatrix3d LMatrix3d::operator *(double scalar) const;
3255 10 operator / 0 4 3555 21 LMatrix3d::operator / 0 1 1516 224
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::matrix / scalar
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
60
inline LMatrix3d LMatrix3d::operator /(double scalar) const;
3256 11 operator += 0 4 3555 22 LMatrix3d::operator += 0 1 1517 278
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::matrix += matrix
// Access: Published
// Description: Performs a memberwise addition between two matrices.
////////////////////////////////////////////////////////////////////
65
inline LMatrix3d &LMatrix3d::operator +=(LMatrix3d const &other);
3257 11 operator -= 0 4 3555 22 LMatrix3d::operator -= 0 1 1518 281
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::matrix -= matrix
// Access: Published
// Description: Performs a memberwise subtraction between two matrices.
////////////////////////////////////////////////////////////////////
65
inline LMatrix3d &LMatrix3d::operator -=(LMatrix3d const &other);
3258 11 operator *= 0 4 3555 22 LMatrix3d::operator *= 0 2 1519 1520 481
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::matrix *= matrix
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::matrix *= scalar
// Access: Published
// Description: Performs a memberwise scale.
////////////////////////////////////////////////////////////////////
122
inline LMatrix3d &LMatrix3d::operator *=(LMatrix3d const &other);
inline LMatrix3d &LMatrix3d::operator *=(double scalar);
3259 11 operator /= 0 4 3555 22 LMatrix3d::operator /= 0 1 1521 254
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::matrix /= scalar
// Access: Published
// Description: Performs a memberwise scale.
////////////////////////////////////////////////////////////////////
56
inline LMatrix3d &LMatrix3d::operator /=(double scalar);
3260 11 determinant 0 4 3555 22 LMatrix3d::determinant 0 1 1522 259
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::determinant
// Access: Published
// Description: Returns the determinant of the matrix.
////////////////////////////////////////////////////////////////////
49
inline double LMatrix3d::determinant(void) const;
3261 14 transpose_from 0 4 3555 25 LMatrix3d::transpose_from 0 1 1523 223
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::transpose_from
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
62
inline void LMatrix3d::transpose_from(LMatrix3d const &other);
3262 18 transpose_in_place 0 4 3555 29 LMatrix3d::transpose_in_place 0 1 1524 227
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::transpose_in_place
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
48
inline void LMatrix3d::transpose_in_place(void);
3263 11 invert_from 0 4 3555 22 LMatrix3d::invert_from 0 1 1525 808
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::invert_from
// Access: Published
// Description: 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);
3264 15 invert_in_place 0 4 3555 26 LMatrix3d::invert_in_place 0 1 1526 364
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::invert_in_place
// Access: Published
// Description: 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);
3265 21 invert_transpose_from 0 4 3555 32 LMatrix3d::invert_transpose_from 0 2 1527 1528 698
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::invert_transpose_from
// Access: Published
// Description: Simultaneously computes the inverse of the indicated
// matrix, and then the transpose of that inverse.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::invert_transpose_from
// Access: Published
// Description: 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);
3266 9 ident_mat 0 4 3555 20 LMatrix3d::ident_mat 0 1 1529 391
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::ident_mat
// Access: Published, Static
// Description: 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);
3267 17 set_translate_mat 0 4 3555 28 LMatrix3d::set_translate_mat 0 1 1530 306
////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_translate_mat
// Access: Published
// Description: Fills mat with a matrix that applies the indicated
// translation.
////////////////////////////////////////////////////////////////////
66
inline void LMatrix3d::set_translate_mat(LVecBase2d const &trans);
3268 14 set_rotate_mat 0 4 3555 25 LMatrix3d::set_rotate_mat 0 3 1531 1532 1533 816
// The following named constructors return 3x3 matrices suitable for
// scale/rotate transforms in 3-d coordinate space.
////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_rotate_mat
// Access: Published
// Description: Fills mat with a matrix that rotates by the given
// angle in degrees counterclockwise.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_rotate_mat
// Access: Published
// Description: 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));
3269 13 set_scale_mat 0 4 3555 24 LMatrix3d::set_scale_mat 0 2 1534 1535 644
////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_scale_mat
// Access: Published
// Description: Fills mat with a matrix that applies the indicated
// scale in each of the two axes.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_scale_mat
// Access: Published
// Description: 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);
3270 13 translate_mat 0 4 3555 24 LMatrix3d::translate_mat 0 2 1536 1537 608
////////////////////////////////////////////////////////////////////
// Function: LMatrix::translate_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// translation.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix::translate_mat
// Access: Published, Static
// Description: 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);
3271 10 rotate_mat 0 4 3555 21 LMatrix3d::rotate_mat 0 3 1538 1539 1540 671
////////////////////////////////////////////////////////////////////
// Function: LMatrix::rotate_mat
// Access: Published, Static
// Description: Returns a matrix that rotates by the given angle in
// degrees counterclockwise.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix::rotate_mat
// Access: Published, Static
// Description: 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));
3272 9 scale_mat 0 4 3555 20 LMatrix3d::scale_mat 0 4 1541 1542 1543 1544 1278
////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// scale in each of the two axes.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// scale in each of the two axes.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// scale in each of the three axes.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_mat
// Access: Published, Static
// Description: 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);
3273 23 set_rotate_mat_normaxis 0 4 3555 34 LMatrix3d::set_rotate_mat_normaxis 0 2 1545 1546 412
////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_rotate_mat_normaxis
// Access: Published
// Description: 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));
3274 19 rotate_mat_normaxis 0 4 3555 30 LMatrix3d::rotate_mat_normaxis 0 2 1547 1548 408
////////////////////////////////////////////////////////////////////
// Function: LMatrix::rotate_mat_normaxis
// Access: Published, Static
// Description: 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));
3275 13 set_shear_mat 0 4 3555 24 LMatrix3d::set_shear_mat 0 2 1549 1550 324
////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_shear_mat
// Access: Published
// Description: 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));
3276 9 shear_mat 0 4 3555 20 LMatrix3d::shear_mat 0 4 1551 1552 1553 1554 644
////////////////////////////////////////////////////////////////////
// Function: LMatrix::shear_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// shear in each of the three planes.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix::shear_mat
// Access: Published, Static
// Description: 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));
3277 19 set_scale_shear_mat 0 4 3555 30 LMatrix3d::set_scale_shear_mat 0 2 1555 1556 312
////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_scale_shear_mat
// Access: Published
// Description: 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));
3278 15 scale_shear_mat 0 4 3555 26 LMatrix3d::scale_shear_mat 0 4 1557 1558 1559 1560 620
////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_shear_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// scale and shear.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_shear_mat
// Access: Published, Static
// Description: 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));
3279 11 convert_mat 0 4 3555 22 LMatrix3d::convert_mat 0 1 1561 350
////////////////////////////////////////////////////////////////////
// Function: LMatrix::convert_mat
// Access: Published, Static
// Description: 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);
3280 12 almost_equal 0 4 3555 23 LMatrix3d::almost_equal 0 2 1562 1563 813
// We don't have a scale_mat() that takes a single uniform scale
// parameter, because it would be ambiguous whether we mean a 2-d or
// a 3-d scale.
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::almost_equal
// Access: Published
// Description: Returns true if two matrices are memberwise equal
// within a default tolerance based on the numeric type.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::almost_equal
// Access: Published
// Description: 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;
3281 6 output 0 4 3555 17 LMatrix3d::output 0 1 1564 215
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::output
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
43
void LMatrix3d::output(ostream &out) const;
3282 5 write 0 4 3555 16 LMatrix3d::write 0 2 1565 1566 214
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::write
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
66
void LMatrix3d::write(ostream &out, int indent_level = (0)) const;
3283 11 python_repr 0 4 3555 22 LMatrix3d::python_repr 0 1 1567 0
95
inline void LMatrix3d::python_repr(ostream &out, basic_string< char > const &class_name) const;
3284 13 generate_hash 0 4 3555 24 LMatrix3d::generate_hash 0 2 1568 1569 544
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::generate_hash
// Access: Published
// Description: Adds the vector to the indicated hash generator.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::generate_hash
// Access: Published
// Description: 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;
3285 20 write_datagram_fixed 0 4 3555 31 LMatrix3d::write_datagram_fixed 0 1 1570 641
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::write_datagram_fixed
// Access: Published
// Description: 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;
3286 19 read_datagram_fixed 0 4 3555 30 LMatrix3d::read_datagram_fixed 0 1 1571 347
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::read_datagram_fixed
// Access: Published
// Description: Reads the matrix from the Datagram using get_float32()
// or get_float64(). See write_datagram_fixed().
////////////////////////////////////////////////////////////////////
60
void LMatrix3d::read_datagram_fixed(DatagramIterator &scan);
3287 14 write_datagram 0 4 3555 25 LMatrix3d::write_datagram 0 1 1572 463
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::write_datagram
// Access: Published
// Description: 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;
3288 13 read_datagram 0 4 3555 24 LMatrix3d::read_datagram 0 1 1573 279
////////////////////////////////////////////////////////////////////
// Function: LMatrix3::read_datagram
// Access: Published
// Description: Reads the matrix from the Datagram using get_stdfloat().
////////////////////////////////////////////////////////////////////
56
void LMatrix3d::read_datagram(DatagramIterator &source);
3289 14 get_class_type 0 4 3555 25 LMatrix3d::get_class_type 0 1 1574 0
50
static TypeHandle LMatrix3d::get_class_type(void);
3290 10 ~LMatrix3d 0 4 3555 21 LMatrix3d::~LMatrix3d 0 0 0
28
LMatrix3d::~LMatrix3d(void);
3291 11 operator [] 0 4 3559 27 LMatrix4d::Row::operator [] 0 2 1700 1701 454
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Row::operator []
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Row::operator []
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
106
inline double LMatrix4d::Row::operator [](int i) const;
inline double &LMatrix4d::Row::operator [](int i);
3292 11 __setitem__ 0 4 3559 27 LMatrix4d::Row::__setitem__ 0 1 1702 0
57
inline void LMatrix4d::Row::__setitem__(int i, double v);
3293 4 size 0 4 3559 20 LMatrix4d::Row::size 0 1 1703 271
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Row::size
// Access: Public, Static
// Description: Returns 4: the number of columns of a LMatrix4.
////////////////////////////////////////////////////////////////////
45
static inline int LMatrix4d::Row::size(void);
3294 4 ~Row 0 4 3559 20 LMatrix4d::Row::~Row 0 0 0
27
LMatrix4d::Row::~Row(void);
3295 11 operator [] 0 4 3560 28 LMatrix4d::CRow::operator [] 0 1 1704 227
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::CRow::operator []
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
56
inline double LMatrix4d::CRow::operator [](int i) const;
3296 4 size 0 4 3560 21 LMatrix4d::CRow::size 0 1 1705 272
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::CRow::size
// Access: Public, Static
// Description: Returns 4: the number of columns of a LMatrix4.
////////////////////////////////////////////////////////////////////
46
static inline int LMatrix4d::CRow::size(void);
3297 5 ~CRow 0 4 3560 22 LMatrix4d::CRow::~CRow 0 0 0
29
LMatrix4d::CRow::~CRow(void);
3298 9 LMatrix4d 0 4 3558 20 LMatrix4d::LMatrix4d 0 6 1581 1582 1583 1584 1585 1586 1566
// Construct a 4x4 matrix given a 3x3 rotation matrix and an optional
// translation component.
// Construct a 4x4 matrix given a 3x3 rotation matrix and an optional
// translation component.
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Default Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Copy Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Copy Constructor
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Constructor, upper 3x3
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Constructor, upper 3x3 plus translation
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
503
inline LMatrix4d::LMatrix4d(void);
inline LMatrix4d::LMatrix4d(LMatrix4d const &other);
inline LMatrix4d::LMatrix4d(UnalignedLMatrix4d const &other);
inline LMatrix4d::LMatrix4d(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);
inline LMatrix4d::LMatrix4d(LMatrix3d const &upper3);
inline LMatrix4d::LMatrix4d(LMatrix3d const &upper3, LVecBase3d const &trans);
3299 10 operator = 0 4 3558 21 LMatrix4d::operator = 0 3 1587 1588 1589 697
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Copy Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Copy Assignment Operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Fill Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
198
inline LMatrix4d &LMatrix4d::operator =(LMatrix4d const &other);
inline LMatrix4d &LMatrix4d::operator =(UnalignedLMatrix4d const &other);
inline LMatrix4d &LMatrix4d::operator =(double fill_value);
3300 12 operator new 0 4 3558 23 LMatrix4d::operator new 0 1 1590 0
124
inline void *LMatrix4d::operator new(unsigned int size);
inline void *LMatrix4d::operator new(unsigned int size, void *ptr);
3301 15 operator delete 0 4 3558 26 LMatrix4d::operator delete 0 0 0
106
inline void LMatrix4d::operator delete(void *ptr);
inline void LMatrix4d::operator delete(void *, void *);
3302 12 validate_ptr 0 4 3558 23 LMatrix4d::validate_ptr 0 0 0
60
static inline bool LMatrix4d::validate_ptr(void const *ptr);
3303 10 __reduce__ 0 4 3558 21 LMatrix4d::__reduce__ 0 1 1591 0
61
inline PyObject *LMatrix4d::__reduce__(PyObject *self) const;
3304 4 fill 0 4 3558 15 LMatrix4d::fill 0 1 1592 388
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::fill
// Access: Public
// Description: 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);
3305 3 set 0 4 3558 14 LMatrix4d::set 0 1 1593 209
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::set
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
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);
3306 11 set_upper_3 0 4 3558 22 LMatrix4d::set_upper_3 0 1 1594 294
// Get and set the upper 3x3 rotation matrix.
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::set_upper_3
// Access: Public
// Description: Sets the upper 3x3 submatrix.
////////////////////////////////////////////////////////////////////
60
inline void LMatrix4d::set_upper_3(LMatrix3d const &upper3);
3307 11 get_upper_3 0 4 3558 22 LMatrix4d::get_upper_3 0 1 1595 299
// Get and set the upper 3x3 rotation matrix.
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_upper_3
// Access: Public
// Description: Retrieves the upper 3x3 submatrix.
////////////////////////////////////////////////////////////////////
52
inline LMatrix3d LMatrix4d::get_upper_3(void) const;
3308 7 set_row 0 4 3558 18 LMatrix4d::set_row 0 2 1596 1597 610
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::set_row
// Access: Public
// Description: Replaces the indicated row of the matrix.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::set_row
// Access: Public
// Description: 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);
3309 7 set_col 0 4 3558 18 LMatrix4d::set_col 0 2 1598 1599 613
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::set_col
// Access: Public
// Description: Replaces the indicated column of the matrix.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::set_col
// Access: Public
// Description: 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);
3310 7 get_row 0 4 3558 18 LMatrix4d::get_row 0 2 1600 1601 626
// these versions inline better
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_row
// Access: Public
// Description: Retrieves the indicated row of the matrix as a
// 4-component vector.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_row
// Access: Public
// Description: 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;
3311 7 get_col 0 4 3558 18 LMatrix4d::get_col 0 1 1602 300
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_col
// Access: Public
// Description: Retrieves the indicated column of the matrix as a
// 4-component vector.
////////////////////////////////////////////////////////////////////
52
inline LVecBase4d LMatrix4d::get_col(int col) const;
3312 8 get_row3 0 4 3558 19 LMatrix4d::get_row3 0 2 1603 1604 674
// these versions inline better
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_row3
// Access: Public
// Description: Retrieves the row column of the matrix as a
// 3-component vector, ignoring the last column.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_row3
// Access: Public
// Description: 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;
3313 8 get_col3 0 4 3558 19 LMatrix4d::get_col3 0 1 1605 324
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_col3
// Access: Public
// Description: 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;
3314 11 operator () 0 4 3558 22 LMatrix4d::operator () 0 2 1606 1607 448
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Indexing operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Indexing operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
118
inline double &LMatrix4d::operator ()(int row, int col);
inline double LMatrix4d::operator ()(int row, int col) const;
3315 11 operator [] 0 4 3558 22 LMatrix4d::operator [] 0 2 1608 1609 448
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Indexing Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Indexing Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
112
inline LMatrix4d::CRow LMatrix4d::operator [](int i) const;
inline LMatrix4d::Row LMatrix4d::operator [](int i);
3316 4 size 0 4 3558 15 LMatrix4d::size 0 1 1610 263
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::size
// Access: Public, Static
// Description: Returns 4: the number of rows of a LMatrix4.
////////////////////////////////////////////////////////////////////
40
static inline int LMatrix4d::size(void);
3317 6 is_nan 0 4 3558 17 LMatrix4d::is_nan 0 1 1611 307
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::is_nan
// Access: Public
// Description: Returns true if any component of the matrix is
// not-a-number, false otherwise.
////////////////////////////////////////////////////////////////////
42
inline bool LMatrix4d::is_nan(void) const;
3318 8 get_cell 0 4 3558 19 LMatrix4d::get_cell 0 1 1612 258
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_cell
// Access: Public
// Description: Returns a particular element of the matrix.
////////////////////////////////////////////////////////////////////
58
inline double LMatrix4d::get_cell(int row, int col) const;
3319 8 set_cell 0 4 3558 19 LMatrix4d::set_cell 0 1 1613 258
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::set_cell
// Access: Public
// Description: Changes a particular element of the matrix.
////////////////////////////////////////////////////////////////////
64
inline void LMatrix4d::set_cell(int row, int col, double value);
3320 8 get_data 0 4 3558 19 LMatrix4d::get_data 0 1 1614 398
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_data
// Access: Public
// Description: 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;
3321 18 get_num_components 0 4 3558 29 LMatrix4d::get_num_components 0 1 1615 274
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_num_components
// Access: Public
// Description: Returns the number of elements in the matrix, 16.
////////////////////////////////////////////////////////////////////
53
inline int LMatrix4d::get_num_components(void) const;
3322 5 begin 0 4 3558 16 LMatrix4d::begin 0 2 1616 1617 634
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::begin
// Access: Public
// Description: Returns an iterator that may be used to traverse the
// elements of the matrix, STL-style.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::begin
// Access: Public
// Description: Returns an iterator that may be used to traverse the
// elements of the matrix, STL-style.
////////////////////////////////////////////////////////////////////
95
inline double const *LMatrix4d::begin(void);
inline double const *LMatrix4d::begin(void) const;
3323 3 end 0 4 3558 14 LMatrix4d::end 0 2 1618 1619 630
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::end
// Access: Public
// Description: Returns an iterator that may be used to traverse the
// elements of the matrix, STL-style.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::end
// Access: Public
// Description: Returns an iterator that may be used to traverse the
// elements of the matrix, STL-style.
////////////////////////////////////////////////////////////////////
91
inline double const *LMatrix4d::end(void);
inline double const *LMatrix4d::end(void) const;
3324 10 operator < 0 4 3558 21 LMatrix4d::operator < 0 1 1620 501
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Ordering Operator
// Access: Public
// Description: This performs a lexicographical comparison. It's of
// questionable mathematical meaning, but sometimes has
// a practical purpose for sorting unique vectors,
// especially in an STL container. Also see
// compare_to().
////////////////////////////////////////////////////////////////////
64
inline bool LMatrix4d::operator <(LMatrix4d const &other) const;
3325 11 operator == 0 4 3558 22 LMatrix4d::operator == 0 1 1621 223
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Equality Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
65
inline bool LMatrix4d::operator ==(LMatrix4d const &other) const;
3326 11 operator != 0 4 3558 22 LMatrix4d::operator != 0 1 1622 225
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Inequality Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
65
inline bool LMatrix4d::operator !=(LMatrix4d const &other) const;
3327 10 compare_to 0 4 3558 21 LMatrix4d::compare_to 0 2 1623 1624 820
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::compare_to
// Access: Public
// Description: This flavor of compare_to uses a default threshold
// value based on the numeric type.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::compare_to
// Access: Public
// Description: 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;
3328 8 get_hash 0 4 3558 19 LMatrix4d::get_hash 0 2 1625 1626 508
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_hash
// Access: Public
// Description: Returns a suitable hash for phash_map.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_hash
// Access: Public
// Description: Returns a suitable hash for phash_map.
////////////////////////////////////////////////////////////////////
117
inline unsigned int LMatrix4d::get_hash(void) const;
inline unsigned int LMatrix4d::get_hash(double threshold) const;
3329 8 add_hash 0 4 3558 19 LMatrix4d::add_hash 0 2 1627 1628 508
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::add_hash
// Access: Public
// Description: Adds the vector into the running hash.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::add_hash
// Access: Public
// Description: Adds the vector into the running hash.
////////////////////////////////////////////////////////////////////
149
inline unsigned int LMatrix4d::add_hash(unsigned int hash) const;
inline unsigned int LMatrix4d::add_hash(unsigned int hash, double threshold) const;
3330 5 xform 0 4 3558 16 LMatrix4d::xform 0 1 1629 306
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform
// Access: Public
// Description: 4-component vector or point times matrix. This is a
// fully general operation.
////////////////////////////////////////////////////////////////////
62
inline LVecBase4d LMatrix4d::xform(LVecBase4d const &v) const;
3331 11 xform_point 0 4 3558 22 LMatrix4d::xform_point 0 1 1630 400
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_point
// Access: Public
// Description: 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;
3332 19 xform_point_general 0 4 3558 30 LMatrix4d::xform_point_general 0 1 1631 389
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_point_general
// Access: Public
// Description: 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;
3333 9 xform_vec 0 4 3558 20 LMatrix4d::xform_vec 0 1 1632 402
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_vec
// Access: Public
// Description: 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;
3334 17 xform_vec_general 0 4 3558 28 LMatrix4d::xform_vec_general 0 1 1633 386
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_vec_general
// Access: Public
// Description: 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;
3335 14 xform_in_place 0 4 3558 25 LMatrix4d::xform_in_place 0 1 1634 315
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_in_place
// Access: Public
// Description: 4-component vector or point times matrix. This is a
// fully general operation.
////////////////////////////////////////////////////////////////////
59
inline void LMatrix4d::xform_in_place(LVecBase4d &v) const;
3336 20 xform_point_in_place 0 4 3558 31 LMatrix4d::xform_point_in_place 0 1 1635 386
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_point_in_place
// Access: Public
// Description: 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;
3337 28 xform_point_general_in_place 0 4 3558 39 LMatrix4d::xform_point_general_in_place 0 1 1636 358
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_point_general_in_place
// Access: Public
// Description: 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;
3338 18 xform_vec_in_place 0 4 3558 29 LMatrix4d::xform_vec_in_place 0 1 1637 388
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_vec_in_place
// Access: Public
// Description: 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;
3339 26 xform_vec_general_in_place 0 4 3558 37 LMatrix4d::xform_vec_general_in_place 0 1 1638 355
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_vec_general_in_place
// Access: Public
// Description: 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;
3340 8 multiply 0 4 3558 19 LMatrix4d::multiply 0 1 1639 52
// this = other1 * other2
// this = other1 * other2
82
inline void LMatrix4d::multiply(LMatrix4d const &other1, LMatrix4d const &other2);
3341 10 operator * 0 4 3558 21 LMatrix4d::operator * 0 2 1640 1641 444
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::matrix * matrix
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::matrix * scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
130
inline LMatrix4d LMatrix4d::operator *(LMatrix4d const &other) const;
inline LMatrix4d LMatrix4d::operator *(double scalar) const;
3342 10 operator / 0 4 3558 21 LMatrix4d::operator / 0 1 1642 221
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::matrix / scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
60
inline LMatrix4d LMatrix4d::operator /(double scalar) const;
3343 11 operator += 0 4 3558 22 LMatrix4d::operator += 0 1 1643 275
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::matrix += matrix
// Access: Public
// Description: Performs a memberwise addition between two matrices.
////////////////////////////////////////////////////////////////////
65
inline LMatrix4d &LMatrix4d::operator +=(LMatrix4d const &other);
3344 11 operator -= 0 4 3558 22 LMatrix4d::operator -= 0 1 1644 275
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::matrix -= matrix
// Access: Public
// Description: Performs a memberwise addition between two matrices.
////////////////////////////////////////////////////////////////////
65
inline LMatrix4d &LMatrix4d::operator -=(LMatrix4d const &other);
3345 11 operator *= 0 4 3558 22 LMatrix4d::operator *= 0 2 1645 1646 446
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::matrix *= matrix
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::matrix *= scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
122
inline LMatrix4d &LMatrix4d::operator *=(LMatrix4d const &other);
inline LMatrix4d &LMatrix4d::operator *=(double scalar);
3346 11 operator /= 0 4 3558 22 LMatrix4d::operator /= 0 1 1647 222
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::matrix /= scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
56
inline LMatrix4d &LMatrix4d::operator /=(double scalar);
3347 14 transpose_from 0 4 3558 25 LMatrix4d::transpose_from 0 1 1648 220
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::transpose_from
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
62
inline void LMatrix4d::transpose_from(LMatrix4d const &other);
3348 18 transpose_in_place 0 4 3558 29 LMatrix4d::transpose_in_place 0 1 1649 224
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::transpose_in_place
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
48
inline void LMatrix4d::transpose_in_place(void);
3349 11 invert_from 0 4 3558 22 LMatrix4d::invert_from 0 1 1650 803
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::invert_from
// Access: Public
// Description: 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);
3350 18 invert_affine_from 0 4 3558 29 LMatrix4d::invert_affine_from 0 1 1651 931
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::invert_affine_from
// Access: Public
// Description: Performs an invert of the indicated matrix, storing
// the result in this matrix. The calculation is only
// correct of the other matrix represents an affine
// transform.
//
// 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.
////////////////////////////////////////////////////////////////////
// bugbug: we could optimize this for rotation/scale/translation matrices
// (transpose upper 3x3 and take negative of translation component)
66
inline bool LMatrix4d::invert_affine_from(LMatrix4d const &other);
3351 15 invert_in_place 0 4 3558 26 LMatrix4d::invert_in_place 0 1 1652 361
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::invert_in_place
// Access: Public
// Description: 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);
3352 10 accumulate 0 4 3558 21 LMatrix4d::accumulate 0 1 1653 252
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::accumulate
// Access: Public
// Description: Computes (*this) += other * weight.
////////////////////////////////////////////////////////////////////
73
inline void LMatrix4d::accumulate(LMatrix4d const &other, double weight);
3353 9 ident_mat 0 4 3558 20 LMatrix4d::ident_mat 0 1 1654 388
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::ident_mat
// Access: Public, Static
// Description: 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);
3354 8 ones_mat 0 4 3558 19 LMatrix4d::ones_mat 0 1 1655 258
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::ones_mat
// Access: Public, Static
// Description: Returns an matrix filled with ones.
////////////////////////////////////////////////////////////////////
57
static inline LMatrix4d const &LMatrix4d::ones_mat(void);
3355 9 zeros_mat 0 4 3558 20 LMatrix4d::zeros_mat 0 1 1656 260
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::zeros_mat
// Access: Public, Static
// Description: Returns an matrix filled with zeros.
////////////////////////////////////////////////////////////////////
58
static inline LMatrix4d const &LMatrix4d::zeros_mat(void);
3356 17 set_translate_mat 0 4 3558 28 LMatrix4d::set_translate_mat 0 1 1657 303
////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_translate_mat
// Access: Public
// Description: Fills mat with a matrix that applies the indicated
// translation.
////////////////////////////////////////////////////////////////////
66
inline void LMatrix4d::set_translate_mat(LVecBase3d const &trans);
3357 14 set_rotate_mat 0 4 3558 25 LMatrix4d::set_rotate_mat 0 2 1658 1659 362
////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_rotate_mat
// Access: Public
// Description: 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));
3358 23 set_rotate_mat_normaxis 0 4 3558 34 LMatrix4d::set_rotate_mat_normaxis 0 2 1660 1661 412
////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_rotate_mat_normaxis
// Access: Public
// Description: 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));
3359 13 set_scale_mat 0 4 3558 24 LMatrix4d::set_scale_mat 0 1 1662 319
////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_scale_mat
// Access: Public
// Description: 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);
3360 13 set_shear_mat 0 4 3558 24 LMatrix4d::set_shear_mat 0 2 1663 1664 321
////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_shear_mat
// Access: Public
// Description: 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));
3361 19 set_scale_shear_mat 0 4 3558 30 LMatrix4d::set_scale_shear_mat 0 2 1665 1666 317
////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_scale_shear_mat
// Access: Public, Static
// Description: 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));
3362 13 translate_mat 0 4 3558 24 LMatrix4d::translate_mat 0 2 1667 1668 602
////////////////////////////////////////////////////////////////////
// Function: LMatrix::translate_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// translation.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix::translate_mat
// Access: Public, Static
// Description: 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);
3363 10 rotate_mat 0 4 3558 21 LMatrix4d::rotate_mat 0 2 1669 1670 345
////////////////////////////////////////////////////////////////////
// Function: LMatrix::rotate_mat
// Access: Public, Static
// Description: 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));
3364 19 rotate_mat_normaxis 0 4 3558 30 LMatrix4d::rotate_mat_normaxis 0 2 1671 1672 408
////////////////////////////////////////////////////////////////////
// Function: LMatrix::rotate_mat_normaxis
// Access: Public, Static
// Description: 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));
3365 9 scale_mat 0 4 3558 20 LMatrix4d::scale_mat 0 3 1673 1674 1675 934
////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// scale in each of the three axes.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// scale in each of the three axes.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_mat
// Access: Public, Static
// Description: 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);
3366 9 shear_mat 0 4 3558 20 LMatrix4d::shear_mat 0 4 1676 1677 1678 1679 638
////////////////////////////////////////////////////////////////////
// Function: LMatrix::shear_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// shear in each of the three planes.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix::shear_mat
// Access: Public, Static
// Description: 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));
3367 15 scale_shear_mat 0 4 3558 26 LMatrix4d::scale_shear_mat 0 4 1680 1681 1682 1683 614
////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_shear_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// scale and shear.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_shear_mat
// Access: Public, Static
// Description: 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));
3368 13 y_to_z_up_mat 0 4 3558 24 LMatrix4d::y_to_z_up_mat 0 1 1684 339
////////////////////////////////////////////////////////////////////
// Function: LMatrix::y_to_z_up_mat
// Access: Public, Static
// Description: 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);
3369 13 z_to_y_up_mat 0 4 3558 24 LMatrix4d::z_to_y_up_mat 0 1 1685 339
////////////////////////////////////////////////////////////////////
// Function: LMatrix::z_to_y_up_mat
// Access: Public, Static
// Description: 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);
3370 11 convert_mat 0 4 3558 22 LMatrix4d::convert_mat 0 1 1686 347
////////////////////////////////////////////////////////////////////
// Function: LMatrix::convert_mat
// Access: Public, Static
// Description: 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);
3371 12 almost_equal 0 4 3558 23 LMatrix4d::almost_equal 0 2 1687 1688 656
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::almost_equal
// Access: Public
// Description: Returns true if two matrices are memberwise equal
// within a default tolerance based on the numeric type.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::almost_equal
// Access: Public
// Description: Returns true if two matrices are memberwise equal
// within a specified tolerance.
////////////////////////////////////////////////////////////////////
144
bool LMatrix4d::almost_equal(LMatrix4d const &other, double threshold) const;
inline bool LMatrix4d::almost_equal(LMatrix4d const &other) const;
3372 6 output 0 4 3558 17 LMatrix4d::output 0 1 1689 212
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::output
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
43
void LMatrix4d::output(ostream &out) const;
3373 5 write 0 4 3558 16 LMatrix4d::write 0 2 1690 1691 211
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::write
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
66
void LMatrix4d::write(ostream &out, int indent_level = (0)) const;
3374 11 python_repr 0 4 3558 22 LMatrix4d::python_repr 0 1 1692 0
95
inline void LMatrix4d::python_repr(ostream &out, basic_string< char > const &class_name) const;
3375 13 generate_hash 0 4 3558 24 LMatrix4d::generate_hash 0 2 1693 1694 538
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::generate_hash
// Access: Public
// Description: Adds the vector to the indicated hash generator.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::generate_hash
// Access: Public
// Description: 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;
3376 20 write_datagram_fixed 0 4 3558 31 LMatrix4d::write_datagram_fixed 0 1 1695 641
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::write_datagram_fixed
// Access: Published
// Description: 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;
3377 19 read_datagram_fixed 0 4 3558 30 LMatrix4d::read_datagram_fixed 0 1 1696 347
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::read_datagram_fixed
// Access: Published
// Description: Reads the matrix from the Datagram using get_float32()
// or get_float64(). See write_datagram_fixed().
////////////////////////////////////////////////////////////////////
60
void LMatrix4d::read_datagram_fixed(DatagramIterator &scan);
3378 14 write_datagram 0 4 3558 25 LMatrix4d::write_datagram 0 1 1697 463
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::write_datagram
// Access: Published
// Description: 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;
3379 13 read_datagram 0 4 3558 24 LMatrix4d::read_datagram 0 1 1698 279
////////////////////////////////////////////////////////////////////
// Function: LMatrix4::read_datagram
// Access: Published
// Description: Reads the matrix from the Datagram using get_stdfloat().
////////////////////////////////////////////////////////////////////
56
void LMatrix4d::read_datagram(DatagramIterator &source);
3380 14 get_class_type 0 4 3558 25 LMatrix4d::get_class_type 0 1 1699 0
50
static TypeHandle LMatrix4d::get_class_type(void);
3381 10 ~LMatrix4d 0 4 3558 21 LMatrix4d::~LMatrix4d 0 0 0
28
LMatrix4d::~LMatrix4d(void);
3382 18 UnalignedLMatrix4d 0 4 3561 38 UnalignedLMatrix4d::UnalignedLMatrix4d 0 4 1706 1707 1708 1709 928
////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::Default Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::Copy Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::Copy Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
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);
3383 10 operator = 0 4 3561 30 UnalignedLMatrix4d::operator = 0 2 1710 1711 480
////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::Copy Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::Copy Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
172
inline UnalignedLMatrix4d &UnalignedLMatrix4d::operator =(LMatrix4d const &copy);
inline UnalignedLMatrix4d &UnalignedLMatrix4d::operator =(UnalignedLMatrix4d const &copy);
3384 3 set 0 4 3561 23 UnalignedLMatrix4d::set 0 1 1712 221
////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::set
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
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);
3385 11 operator () 0 4 3561 31 UnalignedLMatrix4d::operator () 0 2 1713 1714 472
////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::Indexing operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::Indexing operator
// Access: Published
// Description:
////////////////////////////////////////////////////////////////////
136
inline double &UnalignedLMatrix4d::operator ()(int row, int col);
inline double UnalignedLMatrix4d::operator ()(int row, int col) const;
3386 8 get_data 0 4 3561 28 UnalignedLMatrix4d::get_data 0 1 1715 410
////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::get_data
// Access: Published
// Description: 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;
3387 18 get_num_components 0 4 3561 38 UnalignedLMatrix4d::get_num_components 0 1 1716 291
////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::get_num_components
// Access: Published
// Description: Returns the number of elements in the matrix, sixteen.
////////////////////////////////////////////////////////////////////
62
inline int UnalignedLMatrix4d::get_num_components(void) const;
3388 14 get_class_type 0 4 3561 34 UnalignedLMatrix4d::get_class_type 0 1 1717 0
59
static TypeHandle UnalignedLMatrix4d::get_class_type(void);
3389 19 ~UnalignedLMatrix4d 0 4 3561 39 UnalignedLMatrix4d::~UnalignedLMatrix4d 0 0 0
46
UnalignedLMatrix4d::~UnalignedLMatrix4d(void);
3390 10 operator * 0 1 0 10 operator * 0 24 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 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);
3391 11 operator *= 0 1 0 11 operator *= 0 16 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 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);
3392 22 generic_write_datagram 0 1 0 22 generic_write_datagram 0 4 1945 1946 1947 1948 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);
3393 21 generic_read_datagram 0 1 0 21 generic_read_datagram 0 4 1949 1950 1951 1952 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);
3394 14 compose_matrix 0 1 0 14 compose_matrix 0 16 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 0
1494
inline 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));
inline 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));
3395 16 decompose_matrix 0 1 0 16 decompose_matrix 0 16 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 0
1418
inline 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));
inline 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));
3396 22 compose_matrix_old_hpr 0 1 0 22 compose_matrix_old_hpr 0 8 1985 1986 1987 1988 1989 1990 1991 1992 1530
// Filename: compose_matrix_src.cxx
// Created by: drose (27Jan99)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: compose_matrix_old_hpr
// Description: Computes the 3x3 matrix from scale, shear, and
// rotation.
////////////////////////////////////////////////////////////////////
// Filename: compose_matrix_src.cxx
// Created by: drose (27Jan99)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: compose_matrix_old_hpr
// Description: Computes the 3x3 matrix from scale, shear, and
// rotation.
////////////////////////////////////////////////////////////////////
958
void compose_matrix_old_hpr(LMatrix3f &mat, LVecBase3f const &scale, LVecBase3f const &shear, LVecBase3f const &hpr, CoordinateSystem cs = (CS_default));
inline void compose_matrix_old_hpr(LMatrix4f &mat, LVecBase3f const &scale, LVecBase3f const &shear, LVecBase3f const &hpr, LVecBase3f const &translate, CoordinateSystem cs = (CS_default));
inline void compose_matrix_old_hpr(LMatrix4f &mat, float const components[num_matrix_components], CoordinateSystem cs = (CS_default));
void compose_matrix_old_hpr(LMatrix3d &mat, LVecBase3d const &scale, LVecBase3d const &shear, LVecBase3d const &hpr, CoordinateSystem cs = (CS_default));
inline void compose_matrix_old_hpr(LMatrix4d &mat, LVecBase3d const &scale, LVecBase3d const &shear, LVecBase3d const &hpr, LVecBase3d const &translate, CoordinateSystem cs = (CS_default));
inline void compose_matrix_old_hpr(LMatrix4d &mat, double const components[num_matrix_components], CoordinateSystem cs = (CS_default));
3397 24 decompose_matrix_old_hpr 0 1 0 24 decompose_matrix_old_hpr 0 8 1993 1994 1995 1996 1997 1998 1999 2000 1050
////////////////////////////////////////////////////////////////////
// Function: decompose_matrix_old_hpr
// Description: Extracts out the components of a 3x3 rotation matrix.
// Returns true if successful, or false if there was an
// error. Since a 3x3 matrix always contains an affine
// transform, this should succeed in the normal case;
// singular transforms are not treated as an error.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: decompose_matrix_old_hpr
// Description: Extracts out the components of a 3x3 rotation matrix.
// Returns true if successful, or false if there was an
// error. Since a 3x3 matrix always contains an affine
// transform, this should succeed in the normal case;
// singular transforms are not treated as an error.
////////////////////////////////////////////////////////////////////
910
bool decompose_matrix_old_hpr(LMatrix3f const &mat, LVecBase3f &scale, LVecBase3f &shear, LVecBase3f &hpr, CoordinateSystem cs = (CS_default));
inline bool decompose_matrix_old_hpr(LMatrix4f const &mat, LVecBase3f &scale, LVecBase3f &shear, LVecBase3f &hpr, LVecBase3f &translate, CoordinateSystem cs = (CS_default));
inline bool decompose_matrix_old_hpr(LMatrix4f const &mat, float components[num_matrix_components], CoordinateSystem CS = (CS_default));
bool decompose_matrix_old_hpr(LMatrix3d const &mat, LVecBase3d &scale, LVecBase3d &shear, LVecBase3d &hpr, CoordinateSystem cs = (CS_default));
inline bool decompose_matrix_old_hpr(LMatrix4d const &mat, LVecBase3d &scale, LVecBase3d &shear, LVecBase3d &hpr, LVecBase3d &translate, CoordinateSystem cs = (CS_default));
inline bool decompose_matrix_old_hpr(LMatrix4d const &mat, double components[num_matrix_components], CoordinateSystem CS = (CS_default));
3398 22 compose_matrix_new_hpr 0 1 0 22 compose_matrix_new_hpr 0 8 2001 2002 2003 2004 2005 2006 2007 2008 538
////////////////////////////////////////////////////////////////////
// Function: compose_matrix_new_hpr
// Description: Computes the 3x3 matrix from scale, shear, and
// rotation.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: compose_matrix_new_hpr
// Description: Computes the 3x3 matrix from scale, shear, and
// rotation.
////////////////////////////////////////////////////////////////////
958
void compose_matrix_new_hpr(LMatrix3f &mat, LVecBase3f const &scale, LVecBase3f const &shear, LVecBase3f const &hpr, CoordinateSystem cs = (CS_default));
inline void compose_matrix_new_hpr(LMatrix4f &mat, LVecBase3f const &scale, LVecBase3f const &shear, LVecBase3f const &hpr, LVecBase3f const &translate, CoordinateSystem cs = (CS_default));
inline void compose_matrix_new_hpr(LMatrix4f &mat, float const components[num_matrix_components], CoordinateSystem cs = (CS_default));
void compose_matrix_new_hpr(LMatrix3d &mat, LVecBase3d const &scale, LVecBase3d const &shear, LVecBase3d const &hpr, CoordinateSystem cs = (CS_default));
inline void compose_matrix_new_hpr(LMatrix4d &mat, LVecBase3d const &scale, LVecBase3d const &shear, LVecBase3d const &hpr, LVecBase3d const &translate, CoordinateSystem cs = (CS_default));
inline void compose_matrix_new_hpr(LMatrix4d &mat, double const components[num_matrix_components], CoordinateSystem cs = (CS_default));
3399 24 decompose_matrix_new_hpr 0 1 0 24 decompose_matrix_new_hpr 0 8 2009 2010 2011 2012 2013 2014 2015 2016 1050
////////////////////////////////////////////////////////////////////
// Function: decompose_matrix_new_hpr
// Description: Extracts out the components of a 3x3 rotation matrix.
// Returns true if successful, or false if there was an
// error. Since a 3x3 matrix always contains an affine
// transform, this should succeed in the normal case;
// singular transforms are not treated as an error.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: decompose_matrix_new_hpr
// Description: Extracts out the components of a 3x3 rotation matrix.
// Returns true if successful, or false if there was an
// error. Since a 3x3 matrix always contains an affine
// transform, this should succeed in the normal case;
// singular transforms are not treated as an error.
////////////////////////////////////////////////////////////////////
910
bool decompose_matrix_new_hpr(LMatrix3f const &mat, LVecBase3f &scale, LVecBase3f &shear, LVecBase3f &hpr, CoordinateSystem cs = (CS_default));
inline bool decompose_matrix_new_hpr(LMatrix4f const &mat, LVecBase3f &scale, LVecBase3f &shear, LVecBase3f &hpr, LVecBase3f &translate, CoordinateSystem cs = (CS_default));
inline bool decompose_matrix_new_hpr(LMatrix4f const &mat, float components[num_matrix_components], CoordinateSystem CS = (CS_default));
bool decompose_matrix_new_hpr(LMatrix3d const &mat, LVecBase3d &scale, LVecBase3d &shear, LVecBase3d &hpr, CoordinateSystem cs = (CS_default));
inline bool decompose_matrix_new_hpr(LMatrix4d const &mat, LVecBase3d &scale, LVecBase3d &shear, LVecBase3d &hpr, LVecBase3d &translate, CoordinateSystem cs = (CS_default));
inline bool decompose_matrix_new_hpr(LMatrix4d const &mat, double components[num_matrix_components], CoordinateSystem CS = (CS_default));
3400 14 old_to_new_hpr 0 1 0 14 old_to_new_hpr 0 2 2017 2018 1012
////////////////////////////////////////////////////////////////////
// Function: old_to_new_hpr
// Description: Converts the HPR as represented in the old, broken
// way to the new, correct representation. Returns the
// new HPR.
//
// This function is provided to ease transition from old
// systems that relied on Panda's original broken HPR
// calculation.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: old_to_new_hpr
// Description: Converts the HPR as represented in the old, broken
// way to the new, correct representation. Returns the
// new HPR.
//
// This function is provided to ease transition from old
// systems that relied on Panda's original broken HPR
// calculation.
////////////////////////////////////////////////////////////////////
107
LVecBase3f old_to_new_hpr(LVecBase3f const &old_hpr);
LVecBase3d old_to_new_hpr(LVecBase3d const &old_hpr);
3401 14 new_to_old_hpr 0 1 0 14 new_to_old_hpr 0 2 2019 2020 1072
////////////////////////////////////////////////////////////////////
// Function: new_to_old_hpr
// Description: Converts the HPR as represented in the new, correct
// representation to the old, broken way. Returns the
// old HPR. Useful only for backporting.
//
// This function is provided to ease transition from new
// systems that relied on Panda's original broken HPR
// calculation.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: new_to_old_hpr
// Description: Converts the HPR as represented in the new, correct
// representation to the old, broken way. Returns the
// old HPR. Useful only for backporting.
//
// This function is provided to ease transition from new
// systems that relied on Panda's original broken HPR
// calculation.
////////////////////////////////////////////////////////////////////
107
LVecBase3f new_to_old_hpr(LVecBase3f const &new_hpr);
LVecBase3d new_to_old_hpr(LVecBase3d const &new_hpr);
3402 12 LQuaternionf 0 4 3562 26 LQuaternionf::LQuaternionf 0 4 1718 1719 1720 1721 1395
// Filename: lquaternion_src.I
// Created by: frang (06Jun00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::Default Constructor
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::Copy Constructor
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::Copy Constructor
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::Constructor
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
233
inline LQuaternionf::LQuaternionf(void);
inline LQuaternionf::LQuaternionf(LVecBase4f const &copy);
inline LQuaternionf::LQuaternionf(float , LVecBase3f const &copy);
inline LQuaternionf::LQuaternionf(float , float , float , float );
3403 14 pure_imaginary 0 4 3562 28 LQuaternionf::pure_imaginary 0 1 1722 228
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::pure_imaginary_quat
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
68
static LQuaternionf LQuaternionf::pure_imaginary(LVector3f const &);
3404 9 conjugate 0 4 3562 23 LQuaternionf::conjugate 0 1 1723 265
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::conjugate
// Access: Published
// Description: Returns the complex conjugate of this quat.
////////////////////////////////////////////////////////////////////
56
inline LQuaternionf LQuaternionf::conjugate(void) const;
3405 5 xform 0 4 3562 19 LQuaternionf::xform 0 2 1724 1725 536
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::xform
// Access: Published
// Description: Transforms a 3-d vector by the indicated rotation
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::xform
// Access: Published
// Description: 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;
3406 8 multiply 0 4 3562 22 LQuaternionf::multiply 0 1 1726 255
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::multiply
// Access: Published
// Description: actual multiply call (non virtual)
////////////////////////////////////////////////////////////////////
74
inline LQuaternionf LQuaternionf::multiply(LQuaternionf const &rhs) const;
3407 10 operator - 0 68 3562 24 LQuaternionf::operator - 0 1 1727 216
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::unary -
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
57
inline LQuaternionf LQuaternionf::operator -(void) const;
3408 10 operator + 0 4 3562 24 LQuaternionf::operator + 0 1 1728 232
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::quaternion + quaternion
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
78
inline LQuaternionf LQuaternionf::operator +(LQuaternionf const &other) const;
3409 10 operator - 0 4 3562 24 LQuaternionf::operator - 0 1 1729 232
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::quaternion - quaternion
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
78
inline LQuaternionf LQuaternionf::operator -(LQuaternionf const &other) const;
3410 9 angle_rad 0 4 3562 23 LQuaternionf::angle_rad 0 1 1730 369
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::angle_rad
// Access: Published
// Description: 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;
3411 9 angle_deg 0 4 3562 23 LQuaternionf::angle_deg 0 1 1731 369
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::angle_deg
// Access: Published
// Description: 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;
3412 10 operator * 0 4 3562 24 LQuaternionf::operator * 0 4 1732 1733 1734 1735 958
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::quaternion * scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::Multiply Operator
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::Multiply Operator
// Access: public
// Description: Quat * Matrix = matrix
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::Multiply Operator
// Access: public
// Description: Quat * Matrix = matrix
////////////////////////////////////////////////////////////////////
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 &);
3413 10 operator / 0 4 3562 24 LQuaternionf::operator / 0 1 1736 228
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::quaternion / scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
65
inline LQuaternionf LQuaternionf::operator /(float scalar) const;
3414 11 operator *= 0 4 3562 25 LQuaternionf::operator *= 0 1 1737 237
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::Multiply Assignment Operator
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
69
inline LQuaternionf &LQuaternionf::operator *=(LQuaternionf const &);
3415 12 almost_equal 0 4 3562 26 LQuaternionf::almost_equal 0 2 1738 1739 668
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::almost_equal
// Access: public
// Description: Returns true if two quaternions are memberwise equal
// within a default tolerance based on the numeric type.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::almost_equal
// Access: public
// Description: 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;
3416 17 is_same_direction 0 4 3562 31 LQuaternionf::is_same_direction 0 1 1740 374
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::is_same_direction
// Access: public
// Description: 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;
3417 21 almost_same_direction 0 4 3562 35 LQuaternionf::almost_same_direction 0 1 1741 337
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::almost_same_direction
// Access: public
// Description: 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;
3418 6 output 0 4 3562 20 LQuaternionf::output 0 1 1742 215
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::output
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
50
inline void LQuaternionf::output(ostream &) const;
3419 17 extract_to_matrix 0 4 3562 31 LQuaternionf::extract_to_matrix 0 2 1743 1744 542
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::extract_to_matrix (LMatrix3)
// Access: Public
// Description: Based on the quat lib from VRPN.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::extract_to_matrix (LMatrix4)
// Access: Public
// Description: Based on the quat lib from VRPN.
////////////////////////////////////////////////////////////////////
115
void LQuaternionf::extract_to_matrix(LMatrix3f &m) const;
void LQuaternionf::extract_to_matrix(LMatrix4f &m) const;
3420 15 set_from_matrix 0 4 3562 29 LQuaternionf::set_from_matrix 0 2 1745 1746 729
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_from_matrix
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_from_matrix
// Access: public
// Description: 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);
3421 7 set_hpr 0 4 3562 21 LQuaternionf::set_hpr 0 2 1747 1748 368
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_hpr
// Access: public
// Description: 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));
3422 7 get_hpr 0 4 3562 21 LQuaternionf::get_hpr 0 2 1749 1750 296
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_hpr
// Access: public
// Description: Extracts the equivalent Euler angles from the unit
// quaternion.
////////////////////////////////////////////////////////////////////
75
LVecBase3f LQuaternionf::get_hpr(CoordinateSystem cs = (CS_default)) const;
3423 8 get_axis 0 4 3562 22 LQuaternionf::get_axis 0 1 1751 432
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_axis
// Access: Public
// Description: 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;
3424 19 get_axis_normalized 0 4 3562 33 LQuaternionf::get_axis_normalized 0 1 1752 415
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_axis_normalized
// Access: Public
// Description: 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;
3425 13 get_angle_rad 0 4 3562 27 LQuaternionf::get_angle_rad 0 1 1753 645
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_angle_rad
// Access: Public
// Description: 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;
3426 9 get_angle 0 4 3562 23 LQuaternionf::get_angle 0 1 1754 641
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_angle
// Access: Public
// Description: 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;
3427 23 set_from_axis_angle_rad 0 4 3562 37 LQuaternionf::set_from_axis_angle_rad 0 1 1755 324
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_from_axis_angle_rad
// Access: Public
// Description: 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);
3428 19 set_from_axis_angle 0 4 3562 33 LQuaternionf::set_from_axis_angle 0 1 1756 324
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_from_axis_angle_deg
// Access: Public
// Description: 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);
3429 6 get_up 0 4 3562 20 LQuaternionf::get_up 0 2 1757 1758 315
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_up
// Access: Public
// Description: Returns the orientation represented by this
// quaternion, expressed as an up vector.
////////////////////////////////////////////////////////////////////
80
inline LVector3f LQuaternionf::get_up(CoordinateSystem cs = (CS_default)) const;
3430 9 get_right 0 4 3562 23 LQuaternionf::get_right 0 2 1759 1760 320
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_right
// Access: Public
// Description: Returns the orientation represented by this
// quaternion, expressed as a right vector.
////////////////////////////////////////////////////////////////////
83
inline LVector3f LQuaternionf::get_right(CoordinateSystem cs = (CS_default)) const;
3431 11 get_forward 0 4 3562 25 LQuaternionf::get_forward 0 2 1761 1762 324
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_forward
// Access: Public
// Description: Returns the orientation represented by this
// quaternion, expressed as a forward vector.
////////////////////////////////////////////////////////////////////
85
inline LVector3f LQuaternionf::get_forward(CoordinateSystem cs = (CS_default)) const;
3432 5 get_r 0 4 3562 19 LQuaternionf::get_r 0 1 1763 214
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_r
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
45
inline float LQuaternionf::get_r(void) const;
3433 5 get_i 0 4 3562 19 LQuaternionf::get_i 0 1 1764 214
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_i
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
45
inline float LQuaternionf::get_i(void) const;
3434 5 get_j 0 4 3562 19 LQuaternionf::get_j 0 1 1765 214
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_j
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
45
inline float LQuaternionf::get_j(void) const;
3435 5 get_k 0 4 3562 19 LQuaternionf::get_k 0 1 1766 214
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_k
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
45
inline float LQuaternionf::get_k(void) const;
3436 5 set_r 0 4 3562 19 LQuaternionf::set_r 0 1 1767 214
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_r
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
41
inline void LQuaternionf::set_r(float r);
3437 5 set_i 0 4 3562 19 LQuaternionf::set_i 0 1 1768 214
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_i
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
41
inline void LQuaternionf::set_i(float i);
3438 5 set_j 0 4 3562 19 LQuaternionf::set_j 0 1 1769 214
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_j
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
41
inline void LQuaternionf::set_j(float j);
3439 5 set_k 0 4 3562 19 LQuaternionf::set_k 0 1 1770 214
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_k
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
41
inline void LQuaternionf::set_k(float k);
3440 9 normalize 0 4 3562 23 LQuaternionf::normalize 0 1 1771 218
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::normalize
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
42
inline bool LQuaternionf::normalize(void);
3441 14 conjugate_from 0 4 3562 28 LQuaternionf::conjugate_from 0 1 1772 817
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::conjugate_from
// Access: Published
// Description: 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);
3442 18 conjugate_in_place 0 4 3562 32 LQuaternionf::conjugate_in_place 0 1 1773 379
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::conjugate_in_place
// Access: Published
// Description: 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);
3443 11 invert_from 0 4 3562 25 LQuaternionf::invert_from 0 1 1774 794
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::invert_from
// Access: Public
// Description: 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);
3444 15 invert_in_place 0 4 3562 29 LQuaternionf::invert_in_place 0 1 1775 360
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::invert_in_place
// Access: Public
// Description: 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);
3445 11 is_identity 0 4 3562 25 LQuaternionf::is_identity 0 1 1776 322
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::is_identity
// Access: Public
// Description: Returns true if this quaternion represents the
// identity transformation: no rotation.
////////////////////////////////////////////////////////////////////
50
inline bool LQuaternionf::is_identity(void) const;
3446 18 is_almost_identity 0 4 3562 32 LQuaternionf::is_almost_identity 0 1 1777 341
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::is_almost_identity
// Access: Public
// Description: Returns true if this quaternion represents the
// identity transformation within a given tolerance.
////////////////////////////////////////////////////////////////////
68
inline bool LQuaternionf::is_almost_identity(float tolerance) const;
3447 10 ident_quat 0 4 3562 24 LQuaternionf::ident_quat 0 1 1778 259
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::ident_quat
// Access: Public, Static
// Description: Returns an identity quaternion.
////////////////////////////////////////////////////////////////////
65
static inline LQuaternionf const &LQuaternionf::ident_quat(void);
3448 14 get_class_type 0 4 3562 28 LQuaternionf::get_class_type 0 1 1779 0
53
static TypeHandle LQuaternionf::get_class_type(void);
3449 13 ~LQuaternionf 0 4 3562 27 LQuaternionf::~LQuaternionf 0 0 0
34
LQuaternionf::~LQuaternionf(void);
3450 12 LQuaterniond 0 4 3563 26 LQuaterniond::LQuaterniond 0 4 1780 1781 1782 1783 1395
// Filename: lquaternion_src.I
// Created by: frang (06Jun00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::Default Constructor
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::Copy Constructor
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::Copy Constructor
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::Constructor
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
238
inline LQuaterniond::LQuaterniond(void);
inline LQuaterniond::LQuaterniond(LVecBase4d const &copy);
inline LQuaterniond::LQuaterniond(double , LVecBase3d const &copy);
inline LQuaterniond::LQuaterniond(double , double , double , double );
3451 14 pure_imaginary 0 4 3563 28 LQuaterniond::pure_imaginary 0 1 1784 228
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::pure_imaginary_quat
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
68
static LQuaterniond LQuaterniond::pure_imaginary(LVector3d const &);
3452 9 conjugate 0 4 3563 23 LQuaterniond::conjugate 0 1 1785 265
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::conjugate
// Access: Published
// Description: Returns the complex conjugate of this quat.
////////////////////////////////////////////////////////////////////
56
inline LQuaterniond LQuaterniond::conjugate(void) const;
3453 5 xform 0 4 3563 19 LQuaterniond::xform 0 2 1786 1787 536
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::xform
// Access: Published
// Description: Transforms a 3-d vector by the indicated rotation
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::xform
// Access: Published
// Description: 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;
3454 8 multiply 0 4 3563 22 LQuaterniond::multiply 0 1 1788 255
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::multiply
// Access: Published
// Description: actual multiply call (non virtual)
////////////////////////////////////////////////////////////////////
74
inline LQuaterniond LQuaterniond::multiply(LQuaterniond const &rhs) const;
3455 10 operator - 0 68 3563 24 LQuaterniond::operator - 0 1 1789 216
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::unary -
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
57
inline LQuaterniond LQuaterniond::operator -(void) const;
3456 10 operator + 0 4 3563 24 LQuaterniond::operator + 0 1 1790 232
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::quaternion + quaternion
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
78
inline LQuaterniond LQuaterniond::operator +(LQuaterniond const &other) const;
3457 10 operator - 0 4 3563 24 LQuaterniond::operator - 0 1 1791 232
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::quaternion - quaternion
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
78
inline LQuaterniond LQuaterniond::operator -(LQuaterniond const &other) const;
3458 9 angle_rad 0 4 3563 23 LQuaterniond::angle_rad 0 1 1792 369
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::angle_rad
// Access: Published
// Description: 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;
3459 9 angle_deg 0 4 3563 23 LQuaterniond::angle_deg 0 1 1793 369
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::angle_deg
// Access: Published
// Description: 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;
3460 10 operator * 0 4 3563 24 LQuaterniond::operator * 0 4 1794 1795 1796 1797 958
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::quaternion * scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::Multiply Operator
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::Multiply Operator
// Access: public
// Description: Quat * Matrix = matrix
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::Multiply Operator
// Access: public
// Description: Quat * Matrix = matrix
////////////////////////////////////////////////////////////////////
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 &);
3461 10 operator / 0 4 3563 24 LQuaterniond::operator / 0 1 1798 228
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::quaternion / scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
66
inline LQuaterniond LQuaterniond::operator /(double scalar) const;
3462 11 operator *= 0 4 3563 25 LQuaterniond::operator *= 0 1 1799 237
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::Multiply Assignment Operator
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
69
inline LQuaterniond &LQuaterniond::operator *=(LQuaterniond const &);
3463 12 almost_equal 0 4 3563 26 LQuaterniond::almost_equal 0 2 1800 1801 668
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::almost_equal
// Access: public
// Description: Returns true if two quaternions are memberwise equal
// within a default tolerance based on the numeric type.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::almost_equal
// Access: public
// Description: 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;
3464 17 is_same_direction 0 4 3563 31 LQuaterniond::is_same_direction 0 1 1802 374
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::is_same_direction
// Access: public
// Description: 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;
3465 21 almost_same_direction 0 4 3563 35 LQuaterniond::almost_same_direction 0 1 1803 337
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::almost_same_direction
// Access: public
// Description: 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;
3466 6 output 0 4 3563 20 LQuaterniond::output 0 1 1804 215
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::output
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
50
inline void LQuaterniond::output(ostream &) const;
3467 17 extract_to_matrix 0 4 3563 31 LQuaterniond::extract_to_matrix 0 2 1805 1806 542
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::extract_to_matrix (LMatrix3)
// Access: Public
// Description: Based on the quat lib from VRPN.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::extract_to_matrix (LMatrix4)
// Access: Public
// Description: Based on the quat lib from VRPN.
////////////////////////////////////////////////////////////////////
115
void LQuaterniond::extract_to_matrix(LMatrix3d &m) const;
void LQuaterniond::extract_to_matrix(LMatrix4d &m) const;
3468 15 set_from_matrix 0 4 3563 29 LQuaterniond::set_from_matrix 0 2 1807 1808 729
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_from_matrix
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_from_matrix
// Access: public
// Description: 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);
3469 7 set_hpr 0 4 3563 21 LQuaterniond::set_hpr 0 2 1809 1810 368
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_hpr
// Access: public
// Description: 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));
3470 7 get_hpr 0 4 3563 21 LQuaterniond::get_hpr 0 2 1811 1812 296
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_hpr
// Access: public
// Description: Extracts the equivalent Euler angles from the unit
// quaternion.
////////////////////////////////////////////////////////////////////
75
LVecBase3d LQuaterniond::get_hpr(CoordinateSystem cs = (CS_default)) const;
3471 8 get_axis 0 4 3563 22 LQuaterniond::get_axis 0 1 1813 432
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_axis
// Access: Public
// Description: 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;
3472 19 get_axis_normalized 0 4 3563 33 LQuaterniond::get_axis_normalized 0 1 1814 415
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_axis_normalized
// Access: Public
// Description: 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;
3473 13 get_angle_rad 0 4 3563 27 LQuaterniond::get_angle_rad 0 1 1815 645
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_angle_rad
// Access: Public
// Description: 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;
3474 9 get_angle 0 4 3563 23 LQuaterniond::get_angle 0 1 1816 641
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_angle
// Access: Public
// Description: 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;
3475 23 set_from_axis_angle_rad 0 4 3563 37 LQuaterniond::set_from_axis_angle_rad 0 1 1817 324
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_from_axis_angle_rad
// Access: Public
// Description: 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);
3476 19 set_from_axis_angle 0 4 3563 33 LQuaterniond::set_from_axis_angle 0 1 1818 324
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_from_axis_angle_deg
// Access: Public
// Description: 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);
3477 6 get_up 0 4 3563 20 LQuaterniond::get_up 0 2 1819 1820 315
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_up
// Access: Public
// Description: Returns the orientation represented by this
// quaternion, expressed as an up vector.
////////////////////////////////////////////////////////////////////
80
inline LVector3d LQuaterniond::get_up(CoordinateSystem cs = (CS_default)) const;
3478 9 get_right 0 4 3563 23 LQuaterniond::get_right 0 2 1821 1822 320
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_right
// Access: Public
// Description: Returns the orientation represented by this
// quaternion, expressed as a right vector.
////////////////////////////////////////////////////////////////////
83
inline LVector3d LQuaterniond::get_right(CoordinateSystem cs = (CS_default)) const;
3479 11 get_forward 0 4 3563 25 LQuaterniond::get_forward 0 2 1823 1824 324
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_forward
// Access: Public
// Description: Returns the orientation represented by this
// quaternion, expressed as a forward vector.
////////////////////////////////////////////////////////////////////
85
inline LVector3d LQuaterniond::get_forward(CoordinateSystem cs = (CS_default)) const;
3480 5 get_r 0 4 3563 19 LQuaterniond::get_r 0 1 1825 214
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_r
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
46
inline double LQuaterniond::get_r(void) const;
3481 5 get_i 0 4 3563 19 LQuaterniond::get_i 0 1 1826 214
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_i
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
46
inline double LQuaterniond::get_i(void) const;
3482 5 get_j 0 4 3563 19 LQuaterniond::get_j 0 1 1827 214
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_j
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
46
inline double LQuaterniond::get_j(void) const;
3483 5 get_k 0 4 3563 19 LQuaterniond::get_k 0 1 1828 214
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_k
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
46
inline double LQuaterniond::get_k(void) const;
3484 5 set_r 0 4 3563 19 LQuaterniond::set_r 0 1 1829 214
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_r
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
42
inline void LQuaterniond::set_r(double r);
3485 5 set_i 0 4 3563 19 LQuaterniond::set_i 0 1 1830 214
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_i
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
42
inline void LQuaterniond::set_i(double i);
3486 5 set_j 0 4 3563 19 LQuaterniond::set_j 0 1 1831 214
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_j
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
42
inline void LQuaterniond::set_j(double j);
3487 5 set_k 0 4 3563 19 LQuaterniond::set_k 0 1 1832 214
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_k
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
42
inline void LQuaterniond::set_k(double k);
3488 9 normalize 0 4 3563 23 LQuaterniond::normalize 0 1 1833 218
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::normalize
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
42
inline bool LQuaterniond::normalize(void);
3489 14 conjugate_from 0 4 3563 28 LQuaterniond::conjugate_from 0 1 1834 817
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::conjugate_from
// Access: Published
// Description: 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);
3490 18 conjugate_in_place 0 4 3563 32 LQuaterniond::conjugate_in_place 0 1 1835 379
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::conjugate_in_place
// Access: Published
// Description: 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);
3491 11 invert_from 0 4 3563 25 LQuaterniond::invert_from 0 1 1836 794
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::invert_from
// Access: Public
// Description: 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);
3492 15 invert_in_place 0 4 3563 29 LQuaterniond::invert_in_place 0 1 1837 360
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::invert_in_place
// Access: Public
// Description: 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);
3493 11 is_identity 0 4 3563 25 LQuaterniond::is_identity 0 1 1838 322
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::is_identity
// Access: Public
// Description: Returns true if this quaternion represents the
// identity transformation: no rotation.
////////////////////////////////////////////////////////////////////
50
inline bool LQuaterniond::is_identity(void) const;
3494 18 is_almost_identity 0 4 3563 32 LQuaterniond::is_almost_identity 0 1 1839 341
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::is_almost_identity
// Access: Public
// Description: Returns true if this quaternion represents the
// identity transformation within a given tolerance.
////////////////////////////////////////////////////////////////////
69
inline bool LQuaterniond::is_almost_identity(double tolerance) const;
3495 10 ident_quat 0 4 3563 24 LQuaterniond::ident_quat 0 1 1840 259
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::ident_quat
// Access: Public, Static
// Description: Returns an identity quaternion.
////////////////////////////////////////////////////////////////////
65
static inline LQuaterniond const &LQuaterniond::ident_quat(void);
3496 14 get_class_type 0 4 3563 28 LQuaterniond::get_class_type 0 1 1841 0
53
static TypeHandle LQuaterniond::get_class_type(void);
3497 13 ~LQuaterniond 0 4 3563 27 LQuaterniond::~LQuaterniond 0 0 0
34
LQuaterniond::~LQuaterniond(void);
3498 10 LRotationf 0 4 3564 22 LRotationf::LRotationf 0 8 1842 1843 1844 1845 1846 1847 1848 1849 2365
// Filename: lrotation_src.I
// Created by: frang, charles (23Jun00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LRotation::Default Constructor
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LRotation::Copy Constructor
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LRotation::Copy Constructor
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LRotation::Constructor
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LRotation::Constructor
// Access: public
// Description: lmatrix3
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LRotation::Constructor
// Access: public
// Description: lmatrix4
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LRotation::Constructor
// Access: public
// Description: axis + angle (in degrees)
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LRotation::Constructor
// Access: public
// Description: Sets the rotation from the given Euler angles.
////////////////////////////////////////////////////////////////////
420
inline LRotationf::LRotationf(void);
inline LRotationf::LRotationf(LQuaternionf const &);
inline LRotationf::LRotationf(LVecBase4f const &copy);
inline LRotationf::LRotationf(float , float , float , float );
inline LRotationf::LRotationf(LVector3f const &, float );
inline LRotationf::LRotationf(LMatrix3f const &);
inline LRotationf::LRotationf(LMatrix4f const &);
inline LRotationf::LRotationf(float , float , float );
3499 10 operator * 0 4 3564 22 LRotationf::operator * 0 3 1850 1851 1852 853
////////////////////////////////////////////////////////////////////
// Function: LRotation::rotation * scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LRotation::operator *
// Access: public
// Description: Rotation * Rotation = Rotation
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LRotation::operator *
// Access: public
// Description: Rotation * Orientation = Orientation
// This is another meaningless operation, attempting
// to apply an orientation to a rotation.
////////////////////////////////////////////////////////////////////
211
inline LRotationf LRotationf::operator *(float scalar) const;
inline LRotationf LRotationf::operator *(LRotationf const &other) const;
inline LQuaternionf LRotationf::operator *(LQuaternionf const &other) const;
3500 10 operator / 0 4 3564 22 LRotationf::operator / 0 1 1853 224
////////////////////////////////////////////////////////////////////
// Function: LRotation::rotation / scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
61
inline LRotationf LRotationf::operator /(float scalar) const;
3501 14 get_class_type 0 4 3564 26 LRotationf::get_class_type 0 1 1854 0
51
static TypeHandle LRotationf::get_class_type(void);
3502 11 ~LRotationf 0 4 3564 23 LRotationf::~LRotationf 0 0 0
30
LRotationf::~LRotationf(void);
3503 10 LRotationd 0 4 3565 22 LRotationd::LRotationd 0 8 1855 1856 1857 1858 1859 1860 1861 1862 2365
// Filename: lrotation_src.I
// Created by: frang, charles (23Jun00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LRotation::Default Constructor
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LRotation::Copy Constructor
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LRotation::Copy Constructor
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LRotation::Constructor
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LRotation::Constructor
// Access: public
// Description: lmatrix3
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LRotation::Constructor
// Access: public
// Description: lmatrix4
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LRotation::Constructor
// Access: public
// Description: axis + angle (in degrees)
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LRotation::Constructor
// Access: public
// Description: Sets the rotation from the given Euler angles.
////////////////////////////////////////////////////////////////////
428
inline LRotationd::LRotationd(void);
inline LRotationd::LRotationd(LQuaterniond const &);
inline LRotationd::LRotationd(LVecBase4d const &copy);
inline LRotationd::LRotationd(double , double , double , double );
inline LRotationd::LRotationd(LVector3d const &, double );
inline LRotationd::LRotationd(LMatrix3d const &);
inline LRotationd::LRotationd(LMatrix4d const &);
inline LRotationd::LRotationd(double , double , double );
3504 10 operator * 0 4 3565 22 LRotationd::operator * 0 3 1863 1864 1865 853
////////////////////////////////////////////////////////////////////
// Function: LRotation::rotation * scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LRotation::operator *
// Access: public
// Description: Rotation * Rotation = Rotation
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LRotation::operator *
// Access: public
// Description: Rotation * Orientation = Orientation
// This is another meaningless operation, attempting
// to apply an orientation to a rotation.
////////////////////////////////////////////////////////////////////
212
inline LRotationd LRotationd::operator *(double scalar) const;
inline LRotationd LRotationd::operator *(LRotationd const &other) const;
inline LQuaterniond LRotationd::operator *(LQuaterniond const &other) const;
3505 10 operator / 0 4 3565 22 LRotationd::operator / 0 1 1866 224
////////////////////////////////////////////////////////////////////
// Function: LRotation::rotation / scalar
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
62
inline LRotationd LRotationd::operator /(double scalar) const;
3506 14 get_class_type 0 4 3565 26 LRotationd::get_class_type 0 1 1867 0
51
static TypeHandle LRotationd::get_class_type(void);
3507 11 ~LRotationd 0 4 3565 23 LRotationd::~LRotationd 0 0 0
30
LRotationd::~LRotationd(void);
3508 13 LOrientationf 0 4 3566 28 LOrientationf::LOrientationf 0 6 1868 1869 1870 1871 1872 1873 1881
// Filename: lorientation_src.I
// Created by: frang, charles (23Jun00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LOrientation::Default Constructor
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LOrientation::Copy Constructor
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LOrientation::Constructor
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LOrientation::Constructor
// Access: public
// Description: vector + twist
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LOrientation::Constructor
// Access: public
// Description: matrix3
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LOrientation::Constructor
// Access: public
// Description: matrix4
////////////////////////////////////////////////////////////////////
346
inline LOrientationf::LOrientationf(void);
inline LOrientationf::LOrientationf(LQuaternionf const &);
inline LOrientationf::LOrientationf(float , float , float , float );
inline LOrientationf::LOrientationf(LVector3f const &, float );
inline LOrientationf::LOrientationf(LMatrix3f const &);
inline LOrientationf::LOrientationf(LMatrix4f const &);
3509 10 operator * 0 4 3566 25 LOrientationf::operator * 0 2 1874 1875 666
////////////////////////////////////////////////////////////////////
// Function: LOrientation::operator *
// Access: public
// Description: Orientation * rotation = Orientation
// Applies a rotation to an orientation.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LOrientation::operator *
// Access: public
// Description: Orientation * Orientation
// This is a meaningless operation, and will always
// simply return the rhs.
////////////////////////////////////////////////////////////////////
159
inline LOrientationf LOrientationf::operator *(LRotationf const &other) const;
inline LOrientationf LOrientationf::operator *(LQuaternionf const &other) const;
3510 14 get_class_type 0 4 3566 29 LOrientationf::get_class_type 0 1 1876 0
54
static TypeHandle LOrientationf::get_class_type(void);
3511 14 ~LOrientationf 0 4 3566 29 LOrientationf::~LOrientationf 0 0 0
36
LOrientationf::~LOrientationf(void);
3512 13 LOrientationd 0 4 3567 28 LOrientationd::LOrientationd 0 6 1877 1878 1879 1880 1881 1882 1881
// Filename: lorientation_src.I
// Created by: frang, charles (23Jun00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LOrientation::Default Constructor
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LOrientation::Copy Constructor
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LOrientation::Constructor
// Access: public
// Description:
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LOrientation::Constructor
// Access: public
// Description: vector + twist
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LOrientation::Constructor
// Access: public
// Description: matrix3
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LOrientation::Constructor
// Access: public
// Description: matrix4
////////////////////////////////////////////////////////////////////
350
inline LOrientationd::LOrientationd(void);
inline LOrientationd::LOrientationd(LQuaterniond const &);
inline LOrientationd::LOrientationd(double , double , double , double );
inline LOrientationd::LOrientationd(LVector3d const &, float );
inline LOrientationd::LOrientationd(LMatrix3d const &);
inline LOrientationd::LOrientationd(LMatrix4d const &);
3513 10 operator * 0 4 3567 25 LOrientationd::operator * 0 2 1883 1884 666
////////////////////////////////////////////////////////////////////
// Function: LOrientation::operator *
// Access: public
// Description: Orientation * rotation = Orientation
// Applies a rotation to an orientation.
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LOrientation::operator *
// Access: public
// Description: Orientation * Orientation
// This is a meaningless operation, and will always
// simply return the rhs.
////////////////////////////////////////////////////////////////////
159
inline LOrientationd LOrientationd::operator *(LRotationd const &other) const;
inline LOrientationd LOrientationd::operator *(LQuaterniond const &other) const;
3514 14 get_class_type 0 4 3567 29 LOrientationd::get_class_type 0 1 1885 0
54
static TypeHandle LOrientationd::get_class_type(void);
3515 14 ~LOrientationd 0 4 3567 29 LOrientationd::~LOrientationd 0 0 0
36
LOrientationd::~LOrientationd(void);
2020
1 14 Dtool_Ns0bgaIU 0 7 6 3568 2032 14 Dtool_Ns0bgaIU 718 // Filename: lvecBase2_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Default Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 0
2 14 Dtool_Ns0bVQfL 0 7 6 3568 2032 14 Dtool_Ns0bVQfL 226 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Copy Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3569
3 14 Dtool_Ns0blRq3 0 7 6 3568 2032 14 Dtool_Ns0blRq3 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 10 fill_value 1 3571
4 14 Dtool_Ns0boQsK 0 7 6 3568 2032 14 Dtool_Ns0boQsK 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 1 x 1 3571 1 y 1 3571
5 14 Dtool_Ns0b_ub0 0 6 7 3568 0 14 Dtool_Ns0b_ub0 234 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Copy Assignment Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3568 4 copy 1 3569
6 14 Dtool_Ns0b_fng 0 6 7 3568 0 14 Dtool_Ns0b_fng 234 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Fill Assignment Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3568 10 fill_value 1 3571
7 14 Dtool_Ns0bxPnZ 0 4 8 3573 0 14 Dtool_Ns0bxPnZ 0 2 4 this 3 3568 4 size 1 3572
8 14 Dtool_Ns0bfGvP 0 6 11 3569 0 14 Dtool_Ns0bfGvP 262 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::zero Named Constructor
// Access: Published
// Description: Returns a zero-length vector.
//////////////////////////////////////////////////////////////////// 0
9 14 Dtool_Ns0baClz 0 6 12 3569 0 14 Dtool_Ns0baClz 259 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::unit_x Named Constructor
// Access: Published
// Description: Returns a unit X vector.
//////////////////////////////////////////////////////////////////// 0
10 14 Dtool_Ns0bVCzP 0 6 13 3569 0 14 Dtool_Ns0bVCzP 259 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::unit_y Named Constructor
// Access: Published
// Description: Returns a unit Y vector.
//////////////////////////////////////////////////////////////////// 0
11 14 Dtool_Ns0btjEl 0 6 15 3574 0 14 Dtool_Ns0btjEl 0 2 4 this 3 3569 4 self 1 3574
12 14 Dtool_Ns0bHRz6 0 6 16 3574 0 14 Dtool_Ns0bHRz6 0 2 4 this 3 3569 9 attr_name 1 3576
13 14 Dtool_Ns0bHRo3 0 6 17 3577 0 14 Dtool_Ns0bHRo3 0 4 4 this 3 3568 4 self 1 3574 9 attr_name 1 3576 6 assign 1 3574
14 14 Dtool_Ns0bY1X1 0 4 18 3573 0 14 Dtool_Ns0bY1X1 227 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Indexing Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3568 1 i 1 3577
15 14 Dtool_Ns0b6qLS 0 6 18 3571 0 14 Dtool_Ns0b6qLS 227 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Indexing Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3569 1 i 1 3577
16 14 Dtool_Ns0bxNZF 0 4 19 3573 0 14 Dtool_Ns0bxNZF 0 3 4 this 3 3568 1 i 1 3577 1 v 1 3571
17 14 Dtool_Ns0boYf5 0 6 20 3577 0 14 Dtool_Ns0boYf5 274 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::size
// Access: Published, Static
// Description: Returns 2: the number of components of a LVecBase2.
//////////////////////////////////////////////////////////////////// 0
18 14 Dtool_Ns0bI5WA 0 6 21 3578 0 14 Dtool_Ns0bI5WA 311 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::is_nan
// Access: Published
// Description: Returns true if any component of the vector is
// not-a-number, false otherwise.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3569
19 14 Dtool_Ns0by_vl 0 6 22 3571 0 14 Dtool_Ns0by_vl 218 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_cell
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3569 1 i 1 3577
20 14 Dtool_Ns0buYPR 0 6 23 3571 0 14 Dtool_Ns0buYPR 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_x
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3569
21 14 Dtool_Ns0bu8IW 0 6 24 3571 0 14 Dtool_Ns0bu8IW 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_y
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3569
22 14 Dtool_Ns0bnQnT 0 4 25 3573 0 14 Dtool_Ns0bnQnT 218 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::set_cell
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3568 1 i 1 3577 5 value 1 3571
23 14 Dtool_Ns0bgvpl 0 4 26 3573 0 14 Dtool_Ns0bgvpl 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::set_x
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3568 5 value 1 3571
24 14 Dtool_Ns0bgLiq 0 4 27 3573 0 14 Dtool_Ns0bgLiq 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::set_y
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3568 5 value 1 3571
25 14 Dtool_Ns0bqznS 0 4 28 3573 0 14 Dtool_Ns0bqznS 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::add_to_cell
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3568 1 i 1 3577 5 value 1 3571
26 14 Dtool_Ns0bBpGk 0 4 29 3573 0 14 Dtool_Ns0bBpGk 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::add_x
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3568 5 value 1 3571
27 14 Dtool_Ns0bBN_o 0 4 30 3573 0 14 Dtool_Ns0bBN_o 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::add_y
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3568 5 value 1 3571
28 14 Dtool_Ns0bMuTE 0 4 31 3573 0 14 Dtool_Ns0bMuTE 395 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_data
// Access: Published
// Description: 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 3569
29 14 Dtool_Ns0bdEX3 0 6 32 3577 0 14 Dtool_Ns0bdEX3 279 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_num_components
// Access: Published
// Description: Returns the number of elements in the vector, two.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3569
30 14 Dtool_Ns0b91nF 0 4 33 3573 0 14 Dtool_Ns0b91nF 364 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::fill
// Access: Published
// Description: Sets each element of the vector to the indicated
// fill_value. This is particularly useful for
// initializing to zero.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3568 10 fill_value 1 3571
31 14 Dtool_Ns0bmT_9 0 4 34 3573 0 14 Dtool_Ns0bmT_9 213 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::set
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3568 1 x 1 3571 1 y 1 3571
32 14 Dtool_Ns0b9RXz 0 6 35 3571 0 14 Dtool_Ns0b9RXz 213 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::dot
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3569 5 other 1 3569
33 14 Dtool_Ns0bIV8b 0 6 36 3571 0 14 Dtool_Ns0bIV8b 300 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::length_squared
// Access: Published
// Description: Returns the square of the vector's length, cheap and
// easy.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3569
34 14 Dtool_Ns0bvbI8 0 6 37 3571 0 14 Dtool_Ns0bvbI8 295 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::length
// Access: Published
// Description: Returns the length of the vector, by the Pythagorean
// theorem.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3569
35 14 Dtool_Ns0b7siR 0 6 38 3578 0 14 Dtool_Ns0b7siR 367 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::normalize
// Access: Published
// Description: Normalizes the vector in place. Returns true if the
// vector was normalized, false if it was a zero-length
// vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3568
36 14 Dtool_Ns0bkm2c 0 7 39 3568 2032 14 Dtool_Ns0bkm2c 390 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::project
// Access: Published
// Description: 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 3569 4 onto 1 3569
37 14 Dtool_Ns0bJkIg 0 6 40 3578 0 14 Dtool_Ns0bJkIg 518 // FLOATTYPE_IS_INT
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator <
// Access: Published
// Description: This performs a lexicographical comparison. It's of
// questionable mathematical meaning, but sometimes has
// a practical purpose for sorting unique vectors,
// especially in an STL container. Also see
// compare_to().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3569 5 other 1 3569
38 14 Dtool_Ns0bssYs 0 6 41 3578 0 14 Dtool_Ns0bssYs 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator ==
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3569 5 other 1 3569
39 14 Dtool_Ns0boMAb 0 6 42 3578 0 14 Dtool_Ns0boMAb 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator !=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3569 5 other 1 3569
40 14 Dtool_Ns0bVWAg 0 6 43 3577 0 14 Dtool_Ns0bVWAg 321 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::compare_to
// Access: Published
// Description: This flavor of compare_to uses a default threshold
// value based on the numeric type.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3569 5 other 1 3569
41 14 Dtool_Ns0bgmxE 0 6 43 3577 0 14 Dtool_Ns0bgmxE 504 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::compare_to
// Access: Published
// Description: 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 3569 5 other 1 3569 9 threshold 1 3571
42 14 Dtool_Ns0bit5w 0 6 44 3572 0 14 Dtool_Ns0bit5w 257 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3569
43 14 Dtool_Ns0bcmf3 0 6 44 3572 0 14 Dtool_Ns0bcmf3 257 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3569 9 threshold 1 3571
44 14 Dtool_Ns0bT3v_ 0 6 45 3572 0 14 Dtool_Ns0bT3v_ 257 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3569 4 hash 1 3572
45 14 Dtool_Ns0bkEhk 0 6 45 3572 0 14 Dtool_Ns0bkEhk 257 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3569 4 hash 1 3572 9 threshold 1 3571
46 14 Dtool_Ns0bsW5B 0 4 46 3573 0 14 Dtool_Ns0bsW5B 272 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::generate_hash
// Access: Published
// Description: Adds the vector to the indicated hash generator.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3569 7 hashgen 1 3579
47 14 Dtool_Ns0biO1N 0 4 46 3573 0 14 Dtool_Ns0biO1N 272 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::generate_hash
// Access: Published
// Description: Adds the vector to the indicated hash generator.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3569 7 hashgen 1 3579 9 threshold 1 3571
48 14 Dtool_Ns0bWPOu 0 7 47 3568 2032 14 Dtool_Ns0bWPOu 237 // FLOATTYPE_IS_INT
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::unary -
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3569
49 14 Dtool_Ns0bKsJ6 0 7 48 3568 2032 14 Dtool_Ns0bKsJ6 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::vector + vector
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3569 5 other 1 3569
50 14 Dtool_Ns0bLcrN 0 7 49 3568 2032 14 Dtool_Ns0bLcrN 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::vector - vector
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3569 5 other 1 3569
51 14 Dtool_Ns0b0d1B 0 7 50 3568 2032 14 Dtool_Ns0b0d1B 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::vector * scalar
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3569 6 scalar 1 3571
52 14 Dtool_Ns0b01py 0 7 51 3568 2032 14 Dtool_Ns0b01py 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::vector / scalar
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3569 6 scalar 1 3571
53 14 Dtool_Ns0b_q3M 0 6 52 3568 0 14 Dtool_Ns0b_q3M 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator +=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3568 5 other 1 3569
54 14 Dtool_Ns0b_aZg 0 6 53 3568 0 14 Dtool_Ns0b_aZg 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator -=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3568 5 other 1 3569
55 14 Dtool_Ns0biYvI 0 6 54 3568 0 14 Dtool_Ns0biYvI 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator *=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3568 6 scalar 1 3571
56 14 Dtool_Ns0bigj5 0 6 55 3568 0 14 Dtool_Ns0bigj5 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator /=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3568 6 scalar 1 3571
57 14 Dtool_Ns0b_JpK 0 7 56 3568 2032 14 Dtool_Ns0b_JpK 0 2 4 this 3 3569 8 exponent 1 3571
58 14 Dtool_Ns0bvqcK 0 6 57 3574 0 14 Dtool_Ns0bvqcK 0 3 4 this 3 3568 4 self 1 3574 8 exponent 1 3571
59 14 Dtool_Ns0bKIsE 0 7 58 3568 2032 14 Dtool_Ns0bKIsE 214 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::fmax
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3568 5 other 1 3569
60 14 Dtool_Ns0boFND 0 7 59 3568 2032 14 Dtool_Ns0boFND 214 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::fmin
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3568 5 other 1 3569
61 14 Dtool_Ns0bNeTt 0 6 60 3578 0 14 Dtool_Ns0bNeTt 342 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::almost_equal
// Access: Published
// Description: Returns true if two vectors are memberwise equal
// within a default tolerance based on the numeric type.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3569 5 other 1 3569
62 14 Dtool_Ns0bnTFd 0 6 60 3578 0 14 Dtool_Ns0bnTFd 318 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::almost_equal
// Access: Published
// Description: Returns true if two vectors are memberwise equal
// within a specified tolerance.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3569 5 other 1 3569 9 threshold 1 3571
63 14 Dtool_Ns0bpO8G 0 4 61 3573 0 14 Dtool_Ns0bpO8G 216 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::output
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3569 3 out 1 3581
64 14 Dtool_Ns0biNXa 0 4 62 3573 0 14 Dtool_Ns0biNXa 0 3 4 this 3 3569 3 out 1 3581 10 class_name 1 3576
65 14 Dtool_Ns0bO_h0 0 4 63 3573 0 14 Dtool_Ns0bO_h0 642 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::write_datagram_fixed
// Access: Published
// Description: 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 3569 11 destination 1 3583
66 14 Dtool_Ns0bOJCx 0 4 64 3573 0 14 Dtool_Ns0bOJCx 348 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::read_datagram_fixed
// Access: Published
// Description: Reads the vector from the Datagram using get_float32()
// or get_float64(). See write_datagram_fixed().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3568 6 source 1 3585
67 14 Dtool_Ns0b2Mbx 0 4 65 3573 0 14 Dtool_Ns0b2Mbx 464 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::write_datagram
// Access: Published
// Description: 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 3569 11 destination 1 3583
68 14 Dtool_Ns0b3ccD 0 4 66 3573 0 14 Dtool_Ns0b3ccD 280 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::read_datagram
// Access: Published
// Description: Reads the vector from the Datagram using get_stdfloat().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3568 6 source 1 3585
69 14 Dtool_Ns0bKNOA 0 7 67 3588 0 14 Dtool_Ns0bKNOA 0 0
70 14 Dtool_Ns0bGdnQ 0 7 69 3589 2094 14 Dtool_Ns0bGdnQ 718 // Filename: lvecBase2_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Default Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 0
71 14 Dtool_Ns0bCUdE 0 7 69 3589 2094 14 Dtool_Ns0bCUdE 226 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Copy Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3590
72 14 Dtool_Ns0bi9B6 0 7 69 3589 2094 14 Dtool_Ns0bi9B6 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 10 fill_value 1 3592
73 14 Dtool_Ns0bCY0M 0 7 69 3589 2094 14 Dtool_Ns0bCY0M 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 1 x 1 3592 1 y 1 3592
74 14 Dtool_Ns0bG77A 0 6 70 3589 0 14 Dtool_Ns0bG77A 234 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Copy Assignment Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3589 4 copy 1 3590
75 14 Dtool_Ns0bjNf2 0 6 70 3589 0 14 Dtool_Ns0bjNf2 234 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Fill Assignment Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3589 10 fill_value 1 3592
76 14 Dtool_Ns0bv7np 0 4 71 3573 0 14 Dtool_Ns0bv7np 0 2 4 this 3 3589 4 size 1 3572
77 14 Dtool_Ns0bxrvf 0 6 74 3590 0 14 Dtool_Ns0bxrvf 262 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::zero Named Constructor
// Access: Published
// Description: Returns a zero-length vector.
//////////////////////////////////////////////////////////////////// 0
78 14 Dtool_Ns0b52lD 0 6 75 3590 0 14 Dtool_Ns0b52lD 259 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::unit_x Named Constructor
// Access: Published
// Description: Returns a unit X vector.
//////////////////////////////////////////////////////////////////// 0
79 14 Dtool_Ns0b72zf 0 6 76 3590 0 14 Dtool_Ns0b72zf 259 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::unit_y Named Constructor
// Access: Published
// Description: Returns a unit Y vector.
//////////////////////////////////////////////////////////////////// 0
80 14 Dtool_Ns0bPOE1 0 6 78 3574 0 14 Dtool_Ns0bPOE1 0 2 4 this 3 3590 4 self 1 3574
81 14 Dtool_Ns0b5eyK 0 6 79 3574 0 14 Dtool_Ns0b5eyK 0 2 4 this 3 3590 9 attr_name 1 3576
82 14 Dtool_Ns0bpLpH 0 6 80 3577 0 14 Dtool_Ns0bpLpH 0 4 4 this 3 3589 4 self 1 3574 9 attr_name 1 3576 6 assign 1 3574
83 14 Dtool_Ns0b5ZXF 0 4 81 3573 0 14 Dtool_Ns0b5ZXF 227 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Indexing Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3589 1 i 1 3577
84 14 Dtool_Ns0bcHLi 0 6 81 3592 0 14 Dtool_Ns0bcHLi 227 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Indexing Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3590 1 i 1 3577
85 14 Dtool_Ns0bJisN 0 4 82 3573 0 14 Dtool_Ns0bJisN 0 3 4 this 3 3589 1 i 1 3577 1 v 1 3592
86 14 Dtool_Ns0bP1fJ 0 6 83 3577 0 14 Dtool_Ns0bP1fJ 274 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::size
// Access: Published, Static
// Description: Returns 2: the number of components of a LVecBase2.
//////////////////////////////////////////////////////////////////// 0
87 14 Dtool_Ns0bmuWQ 0 6 84 3578 0 14 Dtool_Ns0bmuWQ 311 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::is_nan
// Access: Published
// Description: Returns true if any component of the vector is
// not-a-number, false otherwise.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3590
88 14 Dtool_Ns0bUrv1 0 6 85 3592 0 14 Dtool_Ns0bUrv1 218 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_cell
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3590 1 i 1 3577
89 14 Dtool_Ns0bQsPh 0 6 86 3592 0 14 Dtool_Ns0bQsPh 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_x
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3590
90 14 Dtool_Ns0bQIIm 0 6 87 3592 0 14 Dtool_Ns0bQIIm 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_y
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3590
91 14 Dtool_Ns0b3_g8 0 4 88 3573 0 14 Dtool_Ns0b3_g8 218 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::set_cell
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3589 1 i 1 3577 5 value 1 3592
92 14 Dtool_Ns0bKZlY 0 4 89 3573 0 14 Dtool_Ns0bKZlY 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::set_x
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3589 5 value 1 3592
93 14 Dtool_Ns0bK9dd 0 4 90 3573 0 14 Dtool_Ns0bK9dd 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::set_y
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3589 5 value 1 3592
94 14 Dtool_Ns0b0P6a 0 4 91 3573 0 14 Dtool_Ns0b0P6a 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::add_to_cell
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3589 1 i 1 3577 5 value 1 3592
95 14 Dtool_Ns0brQCX 0 4 92 3573 0 14 Dtool_Ns0brQCX 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::add_x
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3589 5 value 1 3592
96 14 Dtool_Ns0br06b 0 4 93 3573 0 14 Dtool_Ns0br06b 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::add_y
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3589 5 value 1 3592
97 14 Dtool_Ns0bu9TU 0 4 94 3573 0 14 Dtool_Ns0bu9TU 395 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_data
// Access: Published
// Description: 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 3590
98 14 Dtool_Ns0b8xWH 0 6 95 3577 0 14 Dtool_Ns0b8xWH 279 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_num_components
// Access: Published
// Description: Returns the number of elements in the vector, two.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3590
99 14 Dtool_Ns0bsasc 0 4 96 3573 0 14 Dtool_Ns0bsasc 364 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::fill
// Access: Published
// Description: Sets each element of the vector to the indicated
// fill_value. This is particularly useful for
// initializing to zero.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3589 10 fill_value 1 3592
100 14 Dtool_Ns0bbAy_ 0 4 97 3573 0 14 Dtool_Ns0bbAy_ 213 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::set
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3589 1 x 1 3592 1 y 1 3592
101 14 Dtool_Ns0bcCJC 0 6 98 3592 0 14 Dtool_Ns0bcCJC 213 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::dot
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3590 5 other 1 3590
102 14 Dtool_Ns0bqI8r 0 6 99 3592 0 14 Dtool_Ns0bqI8r 300 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::length_squared
// Access: Published
// Description: Returns the square of the vector's length, cheap and
// easy.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3590
103 14 Dtool_Ns0bMHIM 0 6 100 3592 0 14 Dtool_Ns0bMHIM 295 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::length
// Access: Published
// Description: Returns the length of the vector, by the Pythagorean
// theorem.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3590
104 14 Dtool_Ns0bZAih 0 6 101 3578 0 14 Dtool_Ns0bZAih 367 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::normalize
// Access: Published
// Description: Normalizes the vector in place. Returns true if the
// vector was normalized, false if it was a zero-length
// vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3589
105 14 Dtool_Ns0bmCxs 0 7 102 3589 2094 14 Dtool_Ns0bmCxs 390 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::project
// Access: Published
// Description: 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 3590 4 onto 1 3590
106 14 Dtool_Ns0bLeos 0 6 103 3578 0 14 Dtool_Ns0bLeos 518 // FLOATTYPE_IS_INT
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator <
// Access: Published
// Description: This performs a lexicographical comparison. It's of
// questionable mathematical meaning, but sometimes has
// a practical purpose for sorting unique vectors,
// especially in an STL container. Also see
// compare_to().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3590 5 other 1 3590
107 14 Dtool_Ns0bgLYM 0 6 104 3578 0 14 Dtool_Ns0bgLYM 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator ==
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3590 5 other 1 3590
108 14 Dtool_Ns0btrA7 0 6 105 3578 0 14 Dtool_Ns0btrA7 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator !=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3590 5 other 1 3590
109 14 Dtool_Ns0bcKgs 0 6 106 3577 0 14 Dtool_Ns0bcKgs 321 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::compare_to
// Access: Published
// Description: This flavor of compare_to uses a default threshold
// value based on the numeric type.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3590 5 other 1 3590
110 14 Dtool_Ns0be1W3 0 6 106 3577 0 14 Dtool_Ns0be1W3 504 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::compare_to
// Access: Published
// Description: 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 3590 5 other 1 3590 9 threshold 1 3592
111 14 Dtool_Ns0bF_5A 0 6 107 3572 0 14 Dtool_Ns0bF_5A 257 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3590
112 14 Dtool_Ns0b1_3f 0 6 107 3572 0 14 Dtool_Ns0b1_3f 257 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3590 9 threshold 1 3592
113 14 Dtool_Ns0bwrvP 0 6 108 3572 0 14 Dtool_Ns0bwrvP 257 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3590 4 hash 1 3572
114 14 Dtool_Ns0b_Zma 0 6 108 3572 0 14 Dtool_Ns0b_Zma 257 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3590 4 hash 1 3572 9 threshold 1 3592
115 14 Dtool_Ns0bC65R 0 4 109 3573 0 14 Dtool_Ns0bC65R 272 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::generate_hash
// Access: Published
// Description: Adds the vector to the indicated hash generator.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3590 7 hashgen 1 3579
116 14 Dtool_Ns0b1h_1 0 4 109 3573 0 14 Dtool_Ns0b1h_1 272 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::generate_hash
// Access: Published
// Description: Adds the vector to the indicated hash generator.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3590 7 hashgen 1 3579 9 threshold 1 3592
117 14 Dtool_Ns0b4yP_ 0 7 110 3589 2094 14 Dtool_Ns0b4yP_ 237 // FLOATTYPE_IS_INT
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::unary -
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3590
118 14 Dtool_Ns0bFWpG 0 7 111 3589 2094 14 Dtool_Ns0bFWpG 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::vector + vector
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3590 5 other 1 3590
119 14 Dtool_Ns0bFmLa 0 7 112 3589 2094 14 Dtool_Ns0bFmLa 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::vector - vector
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3590 5 other 1 3590
120 14 Dtool_Ns0bP52U 0 7 113 3589 2094 14 Dtool_Ns0bP52U 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::vector * scalar
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3590 6 scalar 1 3592
121 14 Dtool_Ns0bIRtF 0 7 114 3589 2094 14 Dtool_Ns0bIRtF 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::vector / scalar
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3590 6 scalar 1 3592
122 14 Dtool_Ns0bzz2s 0 6 115 3589 0 14 Dtool_Ns0bzz2s 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator +=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3589 5 other 1 3590
123 14 Dtool_Ns0b8DYA 0 6 116 3589 0 14 Dtool_Ns0b8DYA 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator -=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3589 5 other 1 3590
124 14 Dtool_Ns0bWC3U 0 6 117 3589 0 14 Dtool_Ns0bWC3U 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator *=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3589 6 scalar 1 3592
125 14 Dtool_Ns0bX6rF 0 6 118 3589 0 14 Dtool_Ns0bX6rF 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator /=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3589 6 scalar 1 3592
126 14 Dtool_Ns0boOZv 0 7 119 3589 2094 14 Dtool_Ns0boOZv 0 2 4 this 3 3590 8 exponent 1 3592
127 14 Dtool_Ns0bIo8x 0 6 120 3574 0 14 Dtool_Ns0bIo8x 0 3 4 this 3 3589 4 self 1 3574 8 exponent 1 3592
128 14 Dtool_Ns0bmSot 0 7 121 3589 2094 14 Dtool_Ns0bmSot 214 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::fmax
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3589 5 other 1 3590
129 14 Dtool_Ns0bEfJs 0 7 122 3589 2094 14 Dtool_Ns0bEfJs 214 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::fmin
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3589 5 other 1 3590
130 14 Dtool_Ns0bnTK9 0 6 123 3578 0 14 Dtool_Ns0bnTK9 342 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::almost_equal
// Access: Published
// Description: Returns true if two vectors are memberwise equal
// within a default tolerance based on the numeric type.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3590 5 other 1 3590
131 14 Dtool_Ns0b_OqN 0 6 123 3578 0 14 Dtool_Ns0b_OqN 318 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::almost_equal
// Access: Published
// Description: Returns true if two vectors are memberwise equal
// within a specified tolerance.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3590 5 other 1 3590 9 threshold 1 3592
132 14 Dtool_Ns0bSB9W 0 4 124 3573 0 14 Dtool_Ns0bSB9W 216 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::output
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3590 3 out 1 3581
133 14 Dtool_Ns0bHCWq 0 4 125 3573 0 14 Dtool_Ns0bHCWq 0 3 4 this 3 3590 3 out 1 3581 10 class_name 1 3576
134 14 Dtool_Ns0bvThE 0 4 126 3573 0 14 Dtool_Ns0bvThE 642 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::write_datagram_fixed
// Access: Published
// Description: 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 3590 11 destination 1 3583
135 14 Dtool_Ns0bvkCB 0 4 127 3573 0 14 Dtool_Ns0bvkCB 348 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::read_datagram_fixed
// Access: Published
// Description: Reads the vector from the Datagram using get_float32()
// or get_float64(). See write_datagram_fixed().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3589 6 source 1 3585
136 14 Dtool_Ns0bYKaB 0 4 128 3573 0 14 Dtool_Ns0bYKaB 464 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::write_datagram
// Access: Published
// Description: 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 3590 11 destination 1 3583
137 14 Dtool_Ns0bYCdT 0 4 129 3573 0 14 Dtool_Ns0bYCdT 280 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::read_datagram
// Access: Published
// Description: Reads the vector from the Datagram using get_stdfloat().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3589 6 source 1 3585
138 14 Dtool_Ns0bvAPQ 0 7 130 3588 0 14 Dtool_Ns0bvAPQ 0 0
139 14 Dtool_Ns0btBdZ 0 7 132 3593 2156 14 Dtool_Ns0btBdZ 718 // Filename: lvecBase2_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Default Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 0
140 14 Dtool_Ns0baaD2 0 7 132 3593 2156 14 Dtool_Ns0baaD2 226 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Copy Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3594
141 14 Dtool_Ns0bjSAD 0 7 132 3593 2156 14 Dtool_Ns0bjSAD 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 10 fill_value 1 3577
142 14 Dtool_Ns0bFeso 0 7 132 3593 2156 14 Dtool_Ns0bFeso 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 1 x 1 3577 1 y 1 3577
143 14 Dtool_Ns0bL5tB 0 6 133 3593 0 14 Dtool_Ns0bL5tB 234 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Copy Assignment Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3593 4 copy 1 3594
144 14 Dtool_Ns0bjjoO 0 6 133 3593 0 14 Dtool_Ns0bjjoO 234 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Fill Assignment Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3593 10 fill_value 1 3577
145 14 Dtool_Ns0bjkpB 0 4 134 3573 0 14 Dtool_Ns0bjkpB 0 2 4 this 3 3593 4 size 1 3572
146 14 Dtool_Ns0bGJw3 0 6 137 3594 0 14 Dtool_Ns0bGJw3 262 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::zero Named Constructor
// Access: Published
// Description: Returns a zero-length vector.
//////////////////////////////////////////////////////////////////// 0
147 14 Dtool_Ns0b63nb 0 6 138 3594 0 14 Dtool_Ns0b63nb 259 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::unit_x Named Constructor
// Access: Published
// Description: Returns a unit X vector.
//////////////////////////////////////////////////////////////////// 0
148 14 Dtool_Ns0b4313 0 6 139 3594 0 14 Dtool_Ns0b4313 259 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::unit_y Named Constructor
// Access: Published
// Description: Returns a unit Y vector.
//////////////////////////////////////////////////////////////////// 0
149 14 Dtool_Ns0bQdFN 0 6 141 3574 0 14 Dtool_Ns0bQdFN 0 2 4 this 3 3594 4 self 1 3574
150 14 Dtool_Ns0bxB0i 0 6 142 3574 0 14 Dtool_Ns0bxB0i 0 2 4 this 3 3594 9 attr_name 1 3576
151 14 Dtool_Ns0bRgpf 0 6 143 3577 0 14 Dtool_Ns0bRgpf 0 4 4 this 3 3593 4 self 1 3574 9 attr_name 1 3576 6 assign 1 3574
152 14 Dtool_Ns0blWYd 0 4 144 3573 0 14 Dtool_Ns0blWYd 227 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Indexing Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3593 1 i 1 3577
153 14 Dtool_Ns0bRlN6 0 6 144 3577 0 14 Dtool_Ns0bRlN6 227 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::Indexing Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3594 1 i 1 3577
154 14 Dtool_Ns0bon2t 0 4 145 3573 0 14 Dtool_Ns0bon2t 0 3 4 this 3 3593 1 i 1 3577 1 v 1 3577
155 14 Dtool_Ns0bT6gh 0 6 146 3577 0 14 Dtool_Ns0bT6gh 274 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::size
// Access: Published, Static
// Description: Returns 2: the number of components of a LVecBase2.
//////////////////////////////////////////////////////////////////// 0
156 14 Dtool_Ns0bceXo 0 6 147 3578 0 14 Dtool_Ns0bceXo 311 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::is_nan
// Access: Published
// Description: Returns true if any component of the vector is
// not-a-number, false otherwise.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3594
157 14 Dtool_Ns0bNawN 0 6 148 3577 0 14 Dtool_Ns0bNawN 218 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_cell
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3594 1 i 1 3577
158 14 Dtool_Ns0bnKQ5 0 6 149 3577 0 14 Dtool_Ns0bnKQ5 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_x
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3594
159 14 Dtool_Ns0bnmI_ 0 6 150 3577 0 14 Dtool_Ns0bnmI_ 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_y
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3594
160 14 Dtool_Ns0bK9CT 0 4 151 3573 0 14 Dtool_Ns0bK9CT 218 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::set_cell
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3593 1 i 1 3577 5 value 1 3577
161 14 Dtool_Ns0b5Urw 0 4 152 3573 0 14 Dtool_Ns0b5Urw 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::set_x
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3593 5 value 1 3577
162 14 Dtool_Ns0b5wj1 0 4 153 3573 0 14 Dtool_Ns0b5wj1 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::set_y
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3593 5 value 1 3577
163 14 Dtool_Ns0bjSE7 0 4 154 3573 0 14 Dtool_Ns0bjSE7 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::add_to_cell
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3593 1 i 1 3577 5 value 1 3577
164 14 Dtool_Ns0bIsIv 0 4 155 3573 0 14 Dtool_Ns0bIsIv 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::add_x
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3593 5 value 1 3577
165 14 Dtool_Ns0bIIB0 0 4 156 3573 0 14 Dtool_Ns0bIIB0 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::add_y
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3593 5 value 1 3577
166 14 Dtool_Ns0bwQUs 0 4 157 3573 0 14 Dtool_Ns0bwQUs 395 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_data
// Access: Published
// Description: 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 3594
167 14 Dtool_Ns0bKdXf 0 6 158 3577 0 14 Dtool_Ns0bKdXf 279 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_num_components
// Access: Published
// Description: Returns the number of elements in the vector, two.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3594
168 14 Dtool_Ns0bBZvo 0 4 159 3573 0 14 Dtool_Ns0bBZvo 364 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::fill
// Access: Published
// Description: Sets each element of the vector to the indicated
// fill_value. This is particularly useful for
// initializing to zero.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3593 10 fill_value 1 3577
169 14 Dtool_Ns0bbE9S 0 4 160 3573 0 14 Dtool_Ns0bbE9S 213 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::set
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3593 1 x 1 3577 1 y 1 3577
170 14 Dtool_Ns0b7TNd 0 6 161 3577 0 14 Dtool_Ns0b7TNd 213 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::dot
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3594 5 other 1 3594
171 14 Dtool_Ns0bsl9D 0 6 162 3577 0 14 Dtool_Ns0bsl9D 300 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::length_squared
// Access: Published
// Description: Returns the square of the vector's length, cheap and
// easy.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3594
172 14 Dtool_Ns0bRsZt 0 6 163 3578 0 14 Dtool_Ns0bRsZt 498 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator <
// Access: Published
// Description: This performs a lexicographical comparison. It's of
// questionable mathematical meaning, but sometimes has
// a practical purpose for sorting unique vectors,
// especially in an STL container. Also see
// compare_to().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3594 5 other 1 3594
173 14 Dtool_Ns0b9Ta8 0 6 164 3578 0 14 Dtool_Ns0b9Ta8 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator ==
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3594 5 other 1 3594
174 14 Dtool_Ns0bxzDr 0 6 165 3578 0 14 Dtool_Ns0bxzDr 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator !=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3594 5 other 1 3594
175 14 Dtool_Ns0b9jRt 0 6 166 3577 0 14 Dtool_Ns0b9jRt 321 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::compare_to
// Access: Published
// Description: This flavor of compare_to uses a default threshold
// value based on the numeric type.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3594 5 other 1 3594
176 14 Dtool_Ns0bq87Y 0 6 167 3572 0 14 Dtool_Ns0bq87Y 257 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3594
177 14 Dtool_Ns0b9Kwn 0 6 168 3572 0 14 Dtool_Ns0b9Kwn 257 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3594 4 hash 1 3572
178 14 Dtool_Ns0bXD6p 0 4 169 3573 0 14 Dtool_Ns0bXD6p 272 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::generate_hash
// Access: Published
// Description: Adds the vector to the indicated hash generator.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3594 7 hashgen 1 3579
179 14 Dtool_Ns0bzJQW 0 7 170 3593 2156 14 Dtool_Ns0bzJQW 217 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::unary -
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3594
180 14 Dtool_Ns0bfkaH 0 7 171 3593 2156 14 Dtool_Ns0bfkaH 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::vector + vector
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3594 5 other 1 3594
181 14 Dtool_Ns0bf08a 0 7 172 3593 2156 14 Dtool_Ns0bf08a 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::vector - vector
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3594 5 other 1 3594
182 14 Dtool_Ns0buEBm 0 7 173 3593 2156 14 Dtool_Ns0buEBm 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::vector * scalar
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3594 6 scalar 1 3577
183 14 Dtool_Ns0bh82W 0 7 174 3593 2156 14 Dtool_Ns0bh82W 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::vector / scalar
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3594 6 scalar 1 3577
184 14 Dtool_Ns0brr5c 0 6 175 3593 0 14 Dtool_Ns0brr5c 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator +=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3593 5 other 1 3594
185 14 Dtool_Ns0brbaw 0 6 176 3593 0 14 Dtool_Ns0brbaw 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator -=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3593 5 other 1 3594
186 14 Dtool_Ns0bJc9w 0 6 177 3593 0 14 Dtool_Ns0bJc9w 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator *=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3593 6 scalar 1 3577
187 14 Dtool_Ns0bK0xh 0 6 178 3593 0 14 Dtool_Ns0bK0xh 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::operator /=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3593 6 scalar 1 3577
188 14 Dtool_Ns0b5a3E 0 7 179 3593 2156 14 Dtool_Ns0b5a3E 0 2 4 this 3 3594 8 exponent 1 3577
189 14 Dtool_Ns0byPhK 0 6 180 3574 0 14 Dtool_Ns0byPhK 0 3 4 this 3 3593 4 self 1 3574 8 exponent 1 3577
190 14 Dtool_Ns0bOJSn 0 7 181 3593 2156 14 Dtool_Ns0bOJSn 214 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::fmax
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3593 5 other 1 3594
191 14 Dtool_Ns0bs9zl 0 7 182 3593 2156 14 Dtool_Ns0bs9zl 214 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::fmin
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3593 5 other 1 3594
192 14 Dtool_Ns0bfkiV 0 6 183 3578 0 14 Dtool_Ns0bfkiV 342 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::almost_equal
// Access: Published
// Description: Returns true if two vectors are memberwise equal
// within a default tolerance based on the numeric type.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3594 5 other 1 3594
193 14 Dtool_Ns0b_gWE 0 6 183 3578 0 14 Dtool_Ns0b_gWE 318 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::almost_equal
// Access: Published
// Description: Returns true if two vectors are memberwise equal
// within a specified tolerance.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3594 5 other 1 3594 9 threshold 1 3577
194 14 Dtool_Ns0b019u 0 4 184 3573 0 14 Dtool_Ns0b019u 216 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::output
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3594 3 out 1 3581
195 14 Dtool_Ns0bq9YC 0 4 185 3573 0 14 Dtool_Ns0bq9YC 0 3 4 this 3 3594 3 out 1 3581 10 class_name 1 3576
196 14 Dtool_Ns0bTYic 0 4 186 3573 0 14 Dtool_Ns0bTYic 642 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::write_datagram_fixed
// Access: Published
// Description: 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 3594 11 destination 1 3583
197 14 Dtool_Ns0bbIEZ 0 4 187 3573 0 14 Dtool_Ns0bbIEZ 348 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::read_datagram_fixed
// Access: Published
// Description: Reads the vector from the Datagram using get_float32()
// or get_float64(). See write_datagram_fixed().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3593 6 source 1 3585
198 14 Dtool_Ns0bu9cZ 0 4 188 3573 0 14 Dtool_Ns0bu9cZ 464 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::write_datagram
// Access: Published
// Description: 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 3594 11 destination 1 3583
199 14 Dtool_Ns0bOtdr 0 4 189 3573 0 14 Dtool_Ns0bOtdr 280 ////////////////////////////////////////////////////////////////////
// Function: LVecBase2::read_datagram
// Access: Published
// Description: Reads the vector from the Datagram using get_stdfloat().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3593 6 source 1 3585
200 14 Dtool_Ns0bb8Po 0 7 190 3588 0 14 Dtool_Ns0bb8Po 0 0
201 14 Dtool_Ns0bQv_8 0 7 192 3596 2224 14 Dtool_Ns0bQv_8 713 // Filename: lvector2_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector2::Default Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 0
202 14 Dtool_Ns0b_wFf 0 7 192 3596 2224 14 Dtool_Ns0b_wFf 222 ////////////////////////////////////////////////////////////////////
// Function: LVector2::Copy Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3569
203 14 Dtool_Ns0btvIb 0 7 192 3596 2224 14 Dtool_Ns0btvIb 217 ////////////////////////////////////////////////////////////////////
// Function: LVector2::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 10 fill_value 1 3571
204 14 Dtool_Ns0bOs00 0 7 192 3596 2224 14 Dtool_Ns0bOs00 217 ////////////////////////////////////////////////////////////////////
// Function: LVector2::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 1 x 1 3571 1 y 1 3571
205 14 Dtool_Ns0brg1b 0 6 193 3596 0 14 Dtool_Ns0brg1b 230 ////////////////////////////////////////////////////////////////////
// Function: LVector2::Copy Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3596 4 copy 1 3569
206 14 Dtool_Ns0bOfPd 0 6 193 3596 0 14 Dtool_Ns0bOfPd 224 ////////////////////////////////////////////////////////////////////
// Function: LVector2::Copy Fill Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3596 10 fill_value 1 3571
207 14 Dtool_Ns0bs393 0 6 194 3574 0 14 Dtool_Ns0bs393 0 2 4 this 3 3597 9 attr_name 1 3576
208 14 Dtool_Ns0brq0B 0 6 195 3577 0 14 Dtool_Ns0brq0B 0 4 4 this 3 3596 4 self 1 3574 9 attr_name 1 3576 6 assign 1 3574
209 14 Dtool_Ns0bMCtA 0 6 196 3597 0 14 Dtool_Ns0bMCtA 258 ////////////////////////////////////////////////////////////////////
// Function: LVector2::zero Named Constructor
// Access: Public
// Description: Returns a zero-length vector.
//////////////////////////////////////////////////////////////////// 0
210 14 Dtool_Ns0byI1V 0 6 197 3597 0 14 Dtool_Ns0byI1V 255 ////////////////////////////////////////////////////////////////////
// Function: LVector2::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X vector.
//////////////////////////////////////////////////////////////////// 0
211 14 Dtool_Ns0bykua 0 6 198 3597 0 14 Dtool_Ns0bykua 255 ////////////////////////////////////////////////////////////////////
// Function: LVector2::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y vector.
//////////////////////////////////////////////////////////////////// 0
212 14 Dtool_Ns0bVMph 0 7 199 3596 2224 14 Dtool_Ns0bVMph 213 ////////////////////////////////////////////////////////////////////
// Function: LVector2::unary -
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3597
213 14 Dtool_Ns0bJC_P 0 7 200 3568 2032 14 Dtool_Ns0bJC_P 222 ////////////////////////////////////////////////////////////////////
// Function: LVector2::vector + vecbase
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3597 5 other 1 3569
214 14 Dtool_Ns0bjfKg 0 7 200 3596 2224 14 Dtool_Ns0bjfKg 221 ////////////////////////////////////////////////////////////////////
// Function: LVector2::vector + vector
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3597 5 other 1 3597
215 14 Dtool_Ns0bpPmQ 0 7 201 3568 2032 14 Dtool_Ns0bpPmQ 222 ////////////////////////////////////////////////////////////////////
// Function: LVector2::vector - vecbase
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3597 5 other 1 3569
216 14 Dtool_Ns0bDbxg 0 7 201 3596 2224 14 Dtool_Ns0bDbxg 221 ////////////////////////////////////////////////////////////////////
// Function: LVector2::vector - vector
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3597 5 other 1 3597
217 14 Dtool_Ns0bdPP0 0 7 202 3596 2224 14 Dtool_Ns0bdPP0 223 ////////////////////////////////////////////////////////////////////
// Function: LVector2::operator * scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3597 6 scalar 1 3571
218 14 Dtool_Ns0btnx1 0 7 203 3596 2224 14 Dtool_Ns0btnx1 223 ////////////////////////////////////////////////////////////////////
// Function: LVector2::operator / scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3597 6 scalar 1 3571
219 14 Dtool_Ns0bpiFZ 0 7 204 3596 2224 14 Dtool_Ns0bpiFZ 389 ////////////////////////////////////////////////////////////////////
// Function: LVector2::project
// Access: Published
// Description: 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 3597 4 onto 1 3569
220 14 Dtool_Ns0be9_x 0 6 205 3571 0 14 Dtool_Ns0be9_x 321 ////////////////////////////////////////////////////////////////////
// Function: LVector2::signed_angle_rad
// Access: Published
// Description: returns the signed angled between two vectors.
// normalization is NOT necessary
//////////////////////////////////////////////////////////////////// 2 4 this 3 3597 5 other 1 3597
221 14 Dtool_Ns0b_avu 0 6 206 3571 0 14 Dtool_Ns0b_avu 321 ////////////////////////////////////////////////////////////////////
// Function: LVector2::signed_angle_deg
// Access: Published
// Description: returns the signed angled between two vectors.
// normalization is NOT necessary
//////////////////////////////////////////////////////////////////// 2 4 this 3 3597 5 other 1 3597
222 14 Dtool_Ns0bfA9I 0 4 207 3573 0 14 Dtool_Ns0bfA9I 0 3 4 this 3 3597 3 out 1 3581 10 class_name 1 3576
223 14 Dtool_Ns0bhYMy 0 7 208 3588 0 14 Dtool_Ns0bhYMy 0 0
224 14 Dtool_Ns0bwcd5 0 7 211 3599 2242 14 Dtool_Ns0bwcd5 713 // Filename: lvector2_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector2::Default Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 0
225 14 Dtool_Ns0bqdIZ 0 7 211 3599 2242 14 Dtool_Ns0bqdIZ 222 ////////////////////////////////////////////////////////////////////
// Function: LVector2::Copy Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3590
226 14 Dtool_Ns0beGDk 0 7 211 3599 2242 14 Dtool_Ns0beGDk 217 ////////////////////////////////////////////////////////////////////
// Function: LVector2::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 10 fill_value 1 3592
227 14 Dtool_Ns0bAy7S 0 7 211 3599 2242 14 Dtool_Ns0bAy7S 217 ////////////////////////////////////////////////////////////////////
// Function: LVector2::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 1 x 1 3592 1 y 1 3592
228 14 Dtool_Ns0bzhOK 0 6 212 3599 0 14 Dtool_Ns0bzhOK 230 ////////////////////////////////////////////////////////////////////
// Function: LVector2::Copy Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3599 4 copy 1 3590
229 14 Dtool_Ns0b2_5n 0 6 212 3599 0 14 Dtool_Ns0b2_5n 224 ////////////////////////////////////////////////////////////////////
// Function: LVector2::Copy Fill Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3599 10 fill_value 1 3592
230 14 Dtool_Ns0bH0d0 0 6 213 3574 0 14 Dtool_Ns0bH0d0 0 2 4 this 3 3600 9 attr_name 1 3576
231 14 Dtool_Ns0bzrU_ 0 6 214 3577 0 14 Dtool_Ns0bzrU_ 0 4 4 this 3 3599 4 self 1 3574 9 attr_name 1 3576 6 assign 1 3574
232 14 Dtool_Ns0b0FN9 0 6 215 3600 0 14 Dtool_Ns0b0FN9 258 ////////////////////////////////////////////////////////////////////
// Function: LVector2::zero Named Constructor
// Access: Public
// Description: Returns a zero-length vector.
//////////////////////////////////////////////////////////////////// 0
233 14 Dtool_Ns0bpXVS 0 6 216 3600 0 14 Dtool_Ns0bpXVS 255 ////////////////////////////////////////////////////////////////////
// Function: LVector2::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X vector.
//////////////////////////////////////////////////////////////////// 0
234 14 Dtool_Ns0bp7OX 0 6 217 3600 0 14 Dtool_Ns0bp7OX 255 ////////////////////////////////////////////////////////////////////
// Function: LVector2::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y vector.
//////////////////////////////////////////////////////////////////// 0
235 14 Dtool_Ns0bONJe 0 7 218 3599 2242 14 Dtool_Ns0bONJe 213 ////////////////////////////////////////////////////////////////////
// Function: LVector2::unary -
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3600
236 14 Dtool_Ns0bgDY_ 0 7 219 3589 2094 14 Dtool_Ns0bgDY_ 222 ////////////////////////////////////////////////////////////////////
// Function: LVector2::vector + vecbase
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3600 5 other 1 3590
237 14 Dtool_Ns0bKsOa 0 7 219 3599 2242 14 Dtool_Ns0bKsOa 221 ////////////////////////////////////////////////////////////////////
// Function: LVector2::vector + vector
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3600 5 other 1 3600
238 14 Dtool_Ns0bAO__ 0 7 220 3589 2094 14 Dtool_Ns0bAO__ 222 ////////////////////////////////////////////////////////////////////
// Function: LVector2::vector - vecbase
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3600 5 other 1 3590
239 14 Dtool_Ns0bqo1a 0 7 220 3599 2242 14 Dtool_Ns0bqo1a 221 ////////////////////////////////////////////////////////////////////
// Function: LVector2::vector - vector
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3600 5 other 1 3600
240 14 Dtool_Ns0b_Z18 0 7 221 3599 2242 14 Dtool_Ns0b_Z18 223 ////////////////////////////////////////////////////////////////////
// Function: LVector2::operator * scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3600 6 scalar 1 3592
241 14 Dtool_Ns0bvwW_ 0 7 222 3599 2242 14 Dtool_Ns0bvwW_ 223 ////////////////////////////////////////////////////////////////////
// Function: LVector2::operator / scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3600 6 scalar 1 3592
242 14 Dtool_Ns0bYmkd 0 7 223 3599 2242 14 Dtool_Ns0bYmkd 389 ////////////////////////////////////////////////////////////////////
// Function: LVector2::project
// Access: Published
// Description: 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 3600 4 onto 1 3590
243 14 Dtool_Ns0bH_RS 0 6 224 3592 0 14 Dtool_Ns0bH_RS 321 ////////////////////////////////////////////////////////////////////
// Function: LVector2::signed_angle_rad
// Access: Published
// Description: returns the signed angled between two vectors.
// normalization is NOT necessary
//////////////////////////////////////////////////////////////////// 2 4 this 3 3600 5 other 1 3600
244 14 Dtool_Ns0boZBP 0 6 225 3592 0 14 Dtool_Ns0boZBP 321 ////////////////////////////////////////////////////////////////////
// Function: LVector2::signed_angle_deg
// Access: Published
// Description: returns the signed angled between two vectors.
// normalization is NOT necessary
//////////////////////////////////////////////////////////////////// 2 4 this 3 3600 5 other 1 3600
245 14 Dtool_Ns0b2DdF 0 4 226 3573 0 14 Dtool_Ns0b2DdF 0 3 4 this 3 3600 3 out 1 3581 10 class_name 1 3576
246 14 Dtool_Ns0b4Zsu 0 7 227 3588 0 14 Dtool_Ns0b4Zsu 0 0
247 14 Dtool_Ns0bBXQC 0 7 230 3602 2257 14 Dtool_Ns0bBXQC 713 // Filename: lvector2_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector2::Default Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 0
248 14 Dtool_Ns0bF0Bo 0 7 230 3602 2257 14 Dtool_Ns0bF0Bo 222 ////////////////////////////////////////////////////////////////////
// Function: LVector2::Copy Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3594
249 14 Dtool_Ns0bk5GM 0 7 230 3602 2257 14 Dtool_Ns0bk5GM 217 ////////////////////////////////////////////////////////////////////
// Function: LVector2::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 10 fill_value 1 3577
250 14 Dtool_Ns0bVk_T 0 7 230 3602 2257 14 Dtool_Ns0bVk_T 217 ////////////////////////////////////////////////////////////////////
// Function: LVector2::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 1 x 1 3577 1 y 1 3577
251 14 Dtool_Ns0bXAP2 0 6 231 3602 0 14 Dtool_Ns0bXAP2 230 ////////////////////////////////////////////////////////////////////
// Function: LVector2::Copy Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3602 4 copy 1 3594
252 14 Dtool_Ns0b4eq4 0 6 231 3602 0 14 Dtool_Ns0b4eq4 224 ////////////////////////////////////////////////////////////////////
// Function: LVector2::Copy Fill Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3602 10 fill_value 1 3577
253 14 Dtool_Ns0bp2Nd 0 6 232 3574 0 14 Dtool_Ns0bp2Nd 0 2 4 this 3 3603 9 attr_name 1 3576
254 14 Dtool_Ns0bRpEn 0 6 233 3577 0 14 Dtool_Ns0bRpEn 0 4 4 this 3 3602 4 self 1 3574 9 attr_name 1 3576 6 assign 1 3574
255 14 Dtool_Ns0bWD9l 0 6 234 3603 0 14 Dtool_Ns0bWD9l 258 ////////////////////////////////////////////////////////////////////
// Function: LVector2::zero Named Constructor
// Access: Public
// Description: Returns a zero-length vector.
//////////////////////////////////////////////////////////////////// 0
256 14 Dtool_Ns0bIIF7 0 6 235 3603 0 14 Dtool_Ns0bIIF7 255 ////////////////////////////////////////////////////////////////////
// Function: LVector2::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X vector.
//////////////////////////////////////////////////////////////////// 0
257 14 Dtool_Ns0bIk__ 0 6 236 3603 0 14 Dtool_Ns0bIk__ 255 ////////////////////////////////////////////////////////////////////
// Function: LVector2::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y vector.
//////////////////////////////////////////////////////////////////// 0
258 14 Dtool_Ns0bQP5G 0 7 237 3602 2257 14 Dtool_Ns0bQP5G 213 ////////////////////////////////////////////////////////////////////
// Function: LVector2::unary -
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3603
259 14 Dtool_Ns0bNtaq 0 7 238 3593 2156 14 Dtool_Ns0bNtaq 222 ////////////////////////////////////////////////////////////////////
// Function: LVector2::vector + vecbase
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3603 5 other 1 3594
260 14 Dtool_Ns0bs1FJ 0 7 238 3602 2257 14 Dtool_Ns0bs1FJ 221 ////////////////////////////////////////////////////////////////////
// Function: LVector2::vector + vector
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3603 5 other 1 3603
261 14 Dtool_Ns0btgBr 0 7 239 3593 2156 14 Dtool_Ns0btgBr 222 ////////////////////////////////////////////////////////////////////
// Function: LVector2::vector - vecbase
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3603 5 other 1 3594
262 14 Dtool_Ns0bM5qJ 0 7 239 3602 2257 14 Dtool_Ns0bM5qJ 221 ////////////////////////////////////////////////////////////////////
// Function: LVector2::vector - vector
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3603 5 other 1 3603
263 14 Dtool_Ns0b_wWx 0 7 240 3602 2257 14 Dtool_Ns0b_wWx 223 ////////////////////////////////////////////////////////////////////
// Function: LVector2::operator * scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3603 6 scalar 1 3577
264 14 Dtool_Ns0bPo4y 0 7 241 3602 2257 14 Dtool_Ns0bPo4y 223 ////////////////////////////////////////////////////////////////////
// Function: LVector2::operator / scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3603 6 scalar 1 3577
265 14 Dtool_Ns0bRBNu 0 4 242 3573 0 14 Dtool_Ns0bRBNu 0 3 4 this 3 3603 3 out 1 3581 10 class_name 1 3576
266 14 Dtool_Ns0bmfcX 0 7 243 3588 0 14 Dtool_Ns0bmfcX 0 0
267 14 Dtool_Ns0bzKKY 0 7 246 3605 2273 14 Dtool_Ns0bzKKY 711 // Filename: lpoint2_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint2::Default Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 0
268 14 Dtool_Ns0btY8N 0 7 246 3605 2273 14 Dtool_Ns0btY8N 221 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::Copy Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3569
269 14 Dtool_Ns0bCtvQ 0 7 246 3605 2273 14 Dtool_Ns0bCtvQ 216 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 10 fill_value 1 3571
270 14 Dtool_Ns0bqlQB 0 7 246 3605 2273 14 Dtool_Ns0bqlQB 216 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 1 x 1 3571 1 y 1 3571
271 14 Dtool_Ns0b_egO 0 6 247 3605 0 14 Dtool_Ns0b_egO 229 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::Copy Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3605 4 copy 1 3569
272 14 Dtool_Ns0bqvjK 0 6 247 3605 0 14 Dtool_Ns0bqvjK 223 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::Copy Fill Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3605 10 fill_value 1 3571
273 14 Dtool_Ns0bP_UN 0 6 248 3574 0 14 Dtool_Ns0bP_UN 0 2 4 this 3 3606 9 attr_name 1 3576
274 14 Dtool_Ns0bbAlh 0 6 249 3577 0 14 Dtool_Ns0bbAlh 0 4 4 this 3 3605 4 self 1 3574 9 attr_name 1 3576 6 assign 1 3574
275 14 Dtool_Ns0bqnt3 0 6 250 3606 0 14 Dtool_Ns0bqnt3 256 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::zero Named Constructor
// Access: Public
// Description: Returns a zero-length point.
//////////////////////////////////////////////////////////////////// 0
276 14 Dtool_Ns0bCGWE 0 6 251 3606 0 14 Dtool_Ns0bCGWE 253 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X point.
//////////////////////////////////////////////////////////////////// 0
277 14 Dtool_Ns0baRgE 0 6 252 3606 0 14 Dtool_Ns0baRgE 253 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y point.
//////////////////////////////////////////////////////////////////// 0
278 14 Dtool_Ns0b01sU 0 7 253 3605 2273 14 Dtool_Ns0b01sU 212 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::unary -
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3606
279 14 Dtool_Ns0bsVHw 0 7 254 3568 2032 14 Dtool_Ns0bsVHw 220 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::point + vecbase
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3606 5 other 1 3569
280 14 Dtool_Ns0bf_os 0 7 254 3605 2273 14 Dtool_Ns0bf_os 219 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::point + vector
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3606 5 other 1 3597
281 14 Dtool_Ns0bYCqi 0 7 255 3596 2224 14 Dtool_Ns0bYCqi 218 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::point - point
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3606 5 other 1 3606
282 14 Dtool_Ns0b3nIw 0 7 255 3568 2032 14 Dtool_Ns0b3nIw 220 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::point - vecbase
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3606 5 other 1 3569
283 14 Dtool_Ns0bggps 0 7 255 3605 2273 14 Dtool_Ns0bggps 219 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::point - vector
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3606 5 other 1 3597
284 14 Dtool_Ns0bULR7 0 7 256 3605 2273 14 Dtool_Ns0bULR7 222 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::operator * scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3606 6 scalar 1 3571
285 14 Dtool_Ns0brFUb 0 7 257 3605 2273 14 Dtool_Ns0brFUb 222 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::operator / scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3606 6 scalar 1 3571
286 14 Dtool_Ns0bP_bo 0 7 258 3605 2273 14 Dtool_Ns0bP_bo 388 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::project
// Access: Published
// Description: 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 3606 4 onto 1 3569
287 14 Dtool_Ns0bFi0t 0 4 259 3573 0 14 Dtool_Ns0bFi0t 0 3 4 this 3 3606 3 out 1 3581 10 class_name 1 3576
288 14 Dtool_Ns0bntNT 0 7 260 3588 0 14 Dtool_Ns0bntNT 0 0
289 14 Dtool_Ns0btKnR 0 7 263 3608 2289 14 Dtool_Ns0btKnR 711 // Filename: lpoint2_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint2::Default Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 0
290 14 Dtool_Ns0bkCZP 0 7 263 3608 2289 14 Dtool_Ns0bkCZP 221 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::Copy Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3590
291 14 Dtool_Ns0b38Ro 0 7 263 3608 2289 14 Dtool_Ns0b38Ro 216 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 10 fill_value 1 3592
292 14 Dtool_Ns0bVLaV 0 7 263 3608 2289 14 Dtool_Ns0bVLaV 216 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 1 x 1 3592 1 y 1 3592
293 14 Dtool_Ns0b9M99 0 6 264 3608 0 14 Dtool_Ns0b9M99 229 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::Copy Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3608 4 copy 1 3590
294 14 Dtool_Ns0bMH4I 0 6 264 3608 0 14 Dtool_Ns0bMH4I 223 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::Copy Fill Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3608 10 fill_value 1 3592
295 14 Dtool_Ns0bx_N_ 0 6 265 3574 0 14 Dtool_Ns0bx_N_ 0 2 4 this 3 3609 9 attr_name 1 3576
296 14 Dtool_Ns0baAeT 0 6 266 3577 0 14 Dtool_Ns0baAeT 0 4 4 this 3 3608 4 self 1 3574 9 attr_name 1 3576 6 assign 1 3574
297 14 Dtool_Ns0brnmp 0 6 267 3609 0 14 Dtool_Ns0brnmp 256 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::zero Named Constructor
// Access: Public
// Description: Returns a zero-length point.
//////////////////////////////////////////////////////////////////// 0
298 14 Dtool_Ns0bAGP2 0 6 268 3609 0 14 Dtool_Ns0bAGP2 253 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X point.
//////////////////////////////////////////////////////////////////// 0
299 14 Dtool_Ns0bYRZ2 0 6 269 3609 0 14 Dtool_Ns0bYRZ2 253 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y point.
//////////////////////////////////////////////////////////////////// 0
300 14 Dtool_Ns0b11lG 0 7 270 3608 2289 14 Dtool_Ns0b11lG 212 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::unary -
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3609
301 14 Dtool_Ns0bvLkf 0 7 271 3589 2094 14 Dtool_Ns0bvLkf 220 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::point + vecbase
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3609 5 other 1 3590
302 14 Dtool_Ns0bCmce 0 7 271 3608 2289 14 Dtool_Ns0bCmce 219 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::point + vector
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3609 5 other 1 3600
303 14 Dtool_Ns0bNGic 0 7 272 3599 2242 14 Dtool_Ns0bNGic 218 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::point - point
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3609 5 other 1 3609
304 14 Dtool_Ns0b0Vlf 0 7 272 3589 2094 14 Dtool_Ns0b0Vlf 220 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::point - vecbase
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3609 5 other 1 3590
305 14 Dtool_Ns0bFode 0 7 272 3608 2289 14 Dtool_Ns0bFode 219 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::point - vector
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3609 5 other 1 3600
306 14 Dtool_Ns0brAiF 0 7 273 3608 2289 14 Dtool_Ns0brAiF 222 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::operator * scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3609 6 scalar 1 3592
307 14 Dtool_Ns0b6Vkl 0 7 274 3608 2289 14 Dtool_Ns0b6Vkl 222 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::operator / scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3609 6 scalar 1 3592
308 14 Dtool_Ns0bi_k4 0 7 275 3608 2289 14 Dtool_Ns0bi_k4 388 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::project
// Access: Published
// Description: 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 3609 4 onto 1 3590
309 14 Dtool_Ns0bEitf 0 4 276 3573 0 14 Dtool_Ns0bEitf 0 3 4 this 3 3609 3 out 1 3581 10 class_name 1 3576
310 14 Dtool_Ns0bmtGF 0 7 277 3588 0 14 Dtool_Ns0bmtGF 0 0
311 14 Dtool_Ns0b8q_h 0 7 280 3611 2304 14 Dtool_Ns0b8q_h 711 // Filename: lpoint2_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint2::Default Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 0
312 14 Dtool_Ns0bzLwr 0 7 280 3611 2304 14 Dtool_Ns0bzLwr 221 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::Copy Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3594
313 14 Dtool_Ns0bWar6 0 7 280 3611 2304 14 Dtool_Ns0bWar6 216 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 10 fill_value 1 3577
314 14 Dtool_Ns0b87LW 0 7 280 3611 2304 14 Dtool_Ns0b87LW 216 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 1 x 1 3577 1 y 1 3577
315 14 Dtool_Ns0b5LVH 0 6 281 3611 0 14 Dtool_Ns0b5LVH 229 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::Copy Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3611 4 copy 1 3594
316 14 Dtool_Ns0bP0ar 0 6 281 3611 0 14 Dtool_Ns0bP0ar 223 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::Copy Fill Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3611 10 fill_value 1 3577
317 14 Dtool_Ns0bNffC 0 6 282 3574 0 14 Dtool_Ns0bNffC 0 2 4 this 3 3612 9 attr_name 1 3576
318 14 Dtool_Ns0bdgvW 0 6 283 3577 0 14 Dtool_Ns0bdgvW 0 4 4 this 3 3611 4 self 1 3574 9 attr_name 1 3576 6 assign 1 3574
319 14 Dtool_Ns0bkH3s 0 6 284 3612 0 14 Dtool_Ns0bkH3s 256 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::zero Named Constructor
// Access: Public
// Description: Returns a zero-length point.
//////////////////////////////////////////////////////////////////// 0
320 14 Dtool_Ns0bDmg5 0 6 285 3612 0 14 Dtool_Ns0bDmg5 253 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X point.
//////////////////////////////////////////////////////////////////// 0
321 14 Dtool_Ns0bbxq5 0 6 286 3612 0 14 Dtool_Ns0bbxq5 253 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y point.
//////////////////////////////////////////////////////////////////// 0
322 14 Dtool_Ns0bKV3J 0 7 287 3611 2304 14 Dtool_Ns0bKV3J 212 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::unary -
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3612
323 14 Dtool_Ns0bqO8o 0 7 288 3593 2156 14 Dtool_Ns0bqO8o 220 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::point + vecbase
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3612 5 other 1 3594
324 14 Dtool_Ns0bDL5h 0 7 288 3611 2304 14 Dtool_Ns0bDL5h 219 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::point + vector
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3612 5 other 1 3603
325 14 Dtool_Ns0bzw0r 0 7 289 3602 2257 14 Dtool_Ns0bzw0r 218 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::point - point
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3612 5 other 1 3612
326 14 Dtool_Ns0bxY9o 0 7 289 3593 2156 14 Dtool_Ns0bxY9o 220 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::point - vecbase
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3612 5 other 1 3594
327 14 Dtool_Ns0bI97h 0 7 289 3611 2304 14 Dtool_Ns0bI97h 219 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::point - vector
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3612 5 other 1 3603
328 14 Dtool_Ns0bwGL3 0 7 290 3611 2304 14 Dtool_Ns0bwGL3 222 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::operator * scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3612 6 scalar 1 3577
329 14 Dtool_Ns0beZNX 0 7 291 3611 2304 14 Dtool_Ns0beZNX 222 ////////////////////////////////////////////////////////////////////
// Function: LPoint2::operator / scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3612 6 scalar 1 3577
330 14 Dtool_Ns0bDC_i 0 4 292 3573 0 14 Dtool_Ns0bDC_i 0 3 4 this 3 3612 3 out 1 3581 10 class_name 1 3576
331 14 Dtool_Ns0bpNXI 0 7 293 3588 0 14 Dtool_Ns0bpNXI 0 0
332 14 Dtool_Ns0b9GM2 0 7 296 3614 2314 14 Dtool_Ns0b9GM2 715 // Filename: lvecBase3_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Default Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 0
333 14 Dtool_Ns0b5NlT 0 7 296 3614 2314 14 Dtool_Ns0b5NlT 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 copy 1 3569 1 z 1 3571
334 14 Dtool_Ns0bRRmU 0 7 296 3614 2314 14 Dtool_Ns0bRRmU 223 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Copy Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3615
335 14 Dtool_Ns0bBPuZ 0 7 296 3614 2314 14 Dtool_Ns0bBPuZ 218 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 10 fill_value 1 3571
336 14 Dtool_Ns0bnj6v 0 7 296 3614 2314 14 Dtool_Ns0bnj6v 218 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 3 1 x 1 3571 1 y 1 3571 1 z 1 3571
337 14 Dtool_Ns0bqOP9 0 6 297 3614 0 14 Dtool_Ns0bqOP9 231 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Copy Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3614 4 copy 1 3615
338 14 Dtool_Ns0brfXC 0 6 297 3614 0 14 Dtool_Ns0brfXC 231 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Fill Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3614 10 fill_value 1 3571
339 14 Dtool_Ns0bkPX7 0 4 298 3573 0 14 Dtool_Ns0bkPX7 0 2 4 this 3 3614 4 size 1 3572
340 14 Dtool_Ns0bKGfx 0 6 301 3615 0 14 Dtool_Ns0bKGfx 259 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::zero Named Constructor
// Access: Public
// Description: Returns a zero-length vector.
//////////////////////////////////////////////////////////////////// 0
341 14 Dtool_Ns0bmCVV 0 6 302 3615 0 14 Dtool_Ns0bmCVV 256 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X vector.
//////////////////////////////////////////////////////////////////// 0
342 14 Dtool_Ns0bgCjx 0 6 303 3615 0 14 Dtool_Ns0bgCjx 256 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y vector.
//////////////////////////////////////////////////////////////////// 0
343 14 Dtool_Ns0bjCxN 0 6 304 3615 0 14 Dtool_Ns0bjCxN 256 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::unit_z Named Constructor
// Access: Public
// Description: Returns a unit Z vector.
//////////////////////////////////////////////////////////////////// 0
344 14 Dtool_Ns0bBi0G 0 6 306 3574 0 14 Dtool_Ns0bBi0G 0 2 4 this 3 3615 4 self 1 3574
345 14 Dtool_Ns0brQjc 0 6 307 3574 0 14 Dtool_Ns0brQjc 0 2 4 this 3 3615 9 attr_name 1 3576
346 14 Dtool_Ns0bbRYZ 0 6 308 3577 0 14 Dtool_Ns0bbRYZ 0 4 4 this 3 3614 4 self 1 3574 9 attr_name 1 3576 6 assign 1 3574
347 14 Dtool_Ns0b01HX 0 4 309 3573 0 14 Dtool_Ns0b01HX 224 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Indexing Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3614 1 i 1 3577
348 14 Dtool_Ns0bnq7z 0 6 309 3571 0 14 Dtool_Ns0bnq7z 224 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Indexing Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3615 1 i 1 3577
349 14 Dtool_Ns0bCMJn 0 4 310 3573 0 14 Dtool_Ns0bCMJn 0 3 4 this 3 3614 1 i 1 3577 1 v 1 3571
350 14 Dtool_Ns0bEZPb 0 6 311 3577 0 14 Dtool_Ns0bEZPb 271 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::size
// Access: Public, Static
// Description: Returns 3: the number of components of a LVecBase3.
//////////////////////////////////////////////////////////////////// 0
351 14 Dtool_Ns0bd5Gi 0 6 312 3578 0 14 Dtool_Ns0bd5Gi 308 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::is_nan
// Access: Public
// Description: Returns true if any component of the vector is
// not-a-number, false otherwise.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3615
352 14 Dtool_Ns0bO_fH 0 6 313 3571 0 14 Dtool_Ns0bO_fH 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_cell
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3615 1 i 1 3577
353 14 Dtool_Ns0bdY_y 0 6 314 3571 0 14 Dtool_Ns0bdY_y 212 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_x
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3615
354 14 Dtool_Ns0bd843 0 6 315 3571 0 14 Dtool_Ns0bd843 212 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_y
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3615
355 14 Dtool_Ns0bdQw8 0 6 316 3571 0 14 Dtool_Ns0bdQw8 212 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_z
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3615
356 14 Dtool_Ns0bUQX1 0 4 317 3573 0 14 Dtool_Ns0bUQX1 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::set_cell
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3614 1 i 1 3577 5 value 1 3571
357 14 Dtool_Ns0bcuZH 0 4 318 3573 0 14 Dtool_Ns0bcuZH 212 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::set_x
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3614 5 value 1 3571
358 14 Dtool_Ns0bcKSM 0 4 319 3573 0 14 Dtool_Ns0bcKSM 212 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::set_y
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3614 5 value 1 3571
359 14 Dtool_Ns0bcWKR 0 4 320 3573 0 14 Dtool_Ns0bcWKR 212 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::set_z
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3614 5 value 1 3571
360 14 Dtool_Ns0bWJYp 0 7 321 3568 2032 14 Dtool_Ns0bWJYp 317 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_xy
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first two components of this vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3615
361 14 Dtool_Ns0bbJmF 0 7 322 3568 2032 14 Dtool_Ns0bbJmF 322 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_xz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first and last components of this vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3615
362 14 Dtool_Ns0bbleK 0 7 323 3568 2032 14 Dtool_Ns0bbleK 316 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_yz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// last two components of this vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3615
363 14 Dtool_Ns0bHyX0 0 4 324 3573 0 14 Dtool_Ns0bHyX0 218 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::add_to_cell
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3614 1 i 1 3577 5 value 1 3571
364 14 Dtool_Ns0b1m2F 0 4 325 3573 0 14 Dtool_Ns0b1m2F 212 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::add_x
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3614 5 value 1 3571
365 14 Dtool_Ns0b1CvK 0 4 326 3573 0 14 Dtool_Ns0b1CvK 212 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::add_y
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3614 5 value 1 3571
366 14 Dtool_Ns0b1unP 0 4 327 3573 0 14 Dtool_Ns0b1unP 212 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::add_z
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3614 5 value 1 3571
367 14 Dtool_Ns0bjRCm 0 4 328 3573 0 14 Dtool_Ns0bjRCm 399 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_data
// Access: Public
// Description: 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 3615
368 14 Dtool_Ns0bpFHZ 0 6 329 3577 0 14 Dtool_Ns0bpFHZ 278 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_num_components
// Access: Public
// Description: Returns the number of elements in the vector, three.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3615
369 14 Dtool_Ns0bq1Xn 0 4 330 3573 0 14 Dtool_Ns0bq1Xn 364 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::fill
// Access: Published
// Description: Sets each element of the vector to the indicated
// fill_value. This is particularly useful for
// initializing to zero.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3614 10 fill_value 1 3571
370 14 Dtool_Ns0bOavy 0 4 331 3573 0 14 Dtool_Ns0bOavy 213 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::set
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 4 4 this 3 3614 1 x 1 3571 1 y 1 3571 1 z 1 3571
371 14 Dtool_Ns0baDIV 0 6 332 3571 0 14 Dtool_Ns0baDIV 213 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::dot
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3615 5 other 1 3615
372 14 Dtool_Ns0blUs9 0 6 333 3571 0 14 Dtool_Ns0blUs9 300 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::length_squared
// Access: Published
// Description: Returns the square of the vector's length, cheap and
// easy.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3615
373 14 Dtool_Ns0bbb4d 0 6 334 3571 0 14 Dtool_Ns0bbb4d 295 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::length
// Access: Published
// Description: Returns the length of the vector, by the Pythagorean
// theorem.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3615
374 14 Dtool_Ns0bOsSz 0 6 335 3578 0 14 Dtool_Ns0bOsSz 367 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::normalize
// Access: Published
// Description: Normalizes the vector in place. Returns true if the
// vector was normalized, false if it was a zero-length
// vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3614
375 14 Dtool_Ns0bQhma 0 7 336 3614 2314 14 Dtool_Ns0bQhma 390 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::project
// Access: Published
// Description: 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 3615 4 onto 1 3615
376 14 Dtool_Ns0baJ6l 0 7 337 3614 2314 14 Dtool_Ns0baJ6l 235 // FLOATTYPE_IS_INT
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::cross
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3615 5 other 1 3615
377 14 Dtool_Ns0bdE8o 0 6 338 3578 0 14 Dtool_Ns0bdE8o 498 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator <
// Access: Published
// Description: This performs a lexicographical comparison. It's of
// questionable mathematical meaning, but sometimes has
// a practical purpose for sorting unique vectors,
// especially in an STL container. Also see
// compare_to().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3615 5 other 1 3615
378 14 Dtool_Ns0bFt4v 0 6 339 3578 0 14 Dtool_Ns0bFt4v 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator ==
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3615 5 other 1 3615
379 14 Dtool_Ns0bBNge 0 6 340 3578 0 14 Dtool_Ns0bBNge 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator !=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3615 5 other 1 3615
380 14 Dtool_Ns0bW_5p 0 7 341 3614 2314 14 Dtool_Ns0bW_5p 1030 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_standardized_hpr
// Access: Published
// Description: 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 3615
381 14 Dtool_Ns0b53zo 0 6 342 3577 0 14 Dtool_Ns0b53zo 321 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::compare_to
// Access: Published
// Description: This flavor of compare_to uses a default threshold
// value based on the numeric type.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3615 5 other 1 3615
382 14 Dtool_Ns0b8GlN 0 6 342 3577 0 14 Dtool_Ns0b8GlN 504 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::compare_to
// Access: Published
// Description: 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 3615 5 other 1 3615 9 threshold 1 3571
383 14 Dtool_Ns0bOipS 0 6 343 3572 0 14 Dtool_Ns0bOipS 257 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3615
384 14 Dtool_Ns0bgnPZ 0 6 343 3572 0 14 Dtool_Ns0bgnPZ 257 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3615 9 threshold 1 3571
385 14 Dtool_Ns0bH3fh 0 6 344 3572 0 14 Dtool_Ns0bH3fh 257 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3615 4 hash 1 3572
386 14 Dtool_Ns0bwERG 0 6 344 3572 0 14 Dtool_Ns0bwERG 257 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3615 4 hash 1 3572 9 threshold 1 3571
387 14 Dtool_Ns0bZWpj 0 4 345 3573 0 14 Dtool_Ns0bZWpj 272 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::generate_hash
// Access: Published
// Description: Adds the vector to the indicated hash generator.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3615 7 hashgen 1 3579
388 14 Dtool_Ns0bRJlv 0 4 345 3573 0 14 Dtool_Ns0bRJlv 272 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::generate_hash
// Access: Published
// Description: Adds the vector to the indicated hash generator.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3615 7 hashgen 1 3579 9 threshold 1 3571
389 14 Dtool_Ns0biO_P 0 7 346 3614 2314 14 Dtool_Ns0biO_P 237 // FLOATTYPE_IS_INT
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::unary -
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3615
390 14 Dtool_Ns0bfM9C 0 7 347 3614 2314 14 Dtool_Ns0bfM9C 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::vector + vector
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3615 5 other 1 3615
391 14 Dtool_Ns0bf8eW 0 7 348 3614 2314 14 Dtool_Ns0bf8eW 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::vector - vector
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3615 5 other 1 3615
392 14 Dtool_Ns0bHdlj 0 7 349 3614 2314 14 Dtool_Ns0bHdlj 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::vector * scalar
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3615 6 scalar 1 3571
393 14 Dtool_Ns0bY1ZU 0 7 350 3614 2314 14 Dtool_Ns0bY1ZU 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::vector / scalar
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3615 6 scalar 1 3571
394 14 Dtool_Ns0bGqXQ 0 6 351 3614 0 14 Dtool_Ns0bGqXQ 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator +=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3614 5 other 1 3615
395 14 Dtool_Ns0bGa5j 0 6 352 3614 0 14 Dtool_Ns0bGa5j 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator -=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3614 5 other 1 3615
396 14 Dtool_Ns0bPZfq 0 6 353 3614 0 14 Dtool_Ns0bPZfq 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator *=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3614 6 scalar 1 3571
397 14 Dtool_Ns0bOhTb 0 6 354 3614 0 14 Dtool_Ns0bOhTb 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator /=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3614 6 scalar 1 3571
398 14 Dtool_Ns0bhJZs 0 7 355 3614 2314 14 Dtool_Ns0bhJZs 0 2 4 this 3 3615 8 exponent 1 3571
399 14 Dtool_Ns0b8qMs 0 6 356 3574 0 14 Dtool_Ns0b8qMs 0 3 4 this 3 3614 4 self 1 3574 8 exponent 1 3571
400 14 Dtool_Ns0bXVDn 0 7 357 3614 2314 14 Dtool_Ns0bXVDn 211 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::fmax
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3614 5 other 1 3615
401 14 Dtool_Ns0b1Bkl 0 7 358 3614 2314 14 Dtool_Ns0b1Bkl 211 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::fmin
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3614 5 other 1 3615
402 14 Dtool_Ns0bvCKa 0 4 359 3573 0 14 Dtool_Ns0bvCKa 241 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::cross product (with assignment)
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3614 5 other 1 3615
403 14 Dtool_Ns0b2ADH 0 6 360 3578 0 14 Dtool_Ns0b2ADH 342 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::almost_equal
// Access: Published
// Description: Returns true if two vectors are memberwise equal
// within a default tolerance based on the numeric type.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3615 5 other 1 3615
404 14 Dtool_Ns0bjJ12 0 6 360 3578 0 14 Dtool_Ns0bjJ12 318 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::almost_equal
// Access: Published
// Description: Returns true if two vectors are memberwise equal
// within a specified tolerance.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3615 5 other 1 3615 9 threshold 1 3571
405 14 Dtool_Ns0b8Oso 0 4 361 3573 0 14 Dtool_Ns0b8Oso 216 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::output
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3615 3 out 1 3581
406 14 Dtool_Ns0bRMH8 0 4 362 3573 0 14 Dtool_Ns0bRMH8 0 3 4 this 3 3615 3 out 1 3581 10 class_name 1 3576
407 14 Dtool_Ns0bi_RW 0 4 363 3573 0 14 Dtool_Ns0bi_RW 642 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::write_datagram_fixed
// Access: Published
// Description: 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 3615 11 destination 1 3583
408 14 Dtool_Ns0baJyS 0 4 364 3573 0 14 Dtool_Ns0baJyS 348 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::read_datagram_fixed
// Access: Published
// Description: Reads the vector from the Datagram using get_float32()
// or get_float64(). See write_datagram_fixed().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3614 6 source 1 3585
409 14 Dtool_Ns0bqMLT 0 4 365 3573 0 14 Dtool_Ns0bqMLT 464 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::write_datagram
// Access: Published
// Description: 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 3615 11 destination 1 3583
410 14 Dtool_Ns0bKcMl 0 4 366 3573 0 14 Dtool_Ns0bKcMl 280 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::read_datagram
// Access: Published
// Description: Reads the vector from the Datagram using get_stdfloat().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3614 6 source 1 3585
411 14 Dtool_Ns0bdN_h 0 7 367 3588 0 14 Dtool_Ns0bdN_h 0 0
412 14 Dtool_Ns0bjiry 0 7 369 3617 2386 14 Dtool_Ns0bjiry 715 // Filename: lvecBase3_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Default Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 0
413 14 Dtool_Ns0bOLqf 0 7 369 3617 2386 14 Dtool_Ns0bOLqf 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 copy 1 3590 1 z 1 3592
414 14 Dtool_Ns0buakN 0 7 369 3617 2386 14 Dtool_Ns0buakN 223 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Copy Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3618
415 14 Dtool_Ns0b_fFc 0 7 369 3617 2386 14 Dtool_Ns0b_fFc 218 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 10 fill_value 1 3592
416 14 Dtool_Ns0bpccq 0 7 369 3617 2386 14 Dtool_Ns0bpccq 218 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 3 1 x 1 3592 1 y 1 3592 1 z 1 3592
417 14 Dtool_Ns0byavJ 0 6 370 3617 0 14 Dtool_Ns0byavJ 231 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Copy Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3617 4 copy 1 3618
418 14 Dtool_Ns0b_NPY 0 6 370 3617 0 14 Dtool_Ns0b_NPY 231 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Fill Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3617 10 fill_value 1 3592
419 14 Dtool_Ns0bD6XL 0 4 371 3573 0 14 Dtool_Ns0bD6XL 0 2 4 this 3 3617 4 size 1 3572
420 14 Dtool_Ns0btrfB 0 6 374 3618 0 14 Dtool_Ns0btrfB 259 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::zero Named Constructor
// Access: Public
// Description: Returns a zero-length vector.
//////////////////////////////////////////////////////////////////// 0
421 14 Dtool_Ns0bExVl 0 6 375 3618 0 14 Dtool_Ns0bExVl 256 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X vector.
//////////////////////////////////////////////////////////////////// 0
422 14 Dtool_Ns0bHxjB 0 6 376 3618 0 14 Dtool_Ns0bHxjB 256 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y vector.
//////////////////////////////////////////////////////////////////// 0
423 14 Dtool_Ns0bBxxd 0 6 377 3618 0 14 Dtool_Ns0bBxxd 256 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::unit_z Named Constructor
// Access: Public
// Description: Returns a unit Z vector.
//////////////////////////////////////////////////////////////////// 0
424 14 Dtool_Ns0bjO0W 0 6 379 3574 0 14 Dtool_Ns0bjO0W 0 2 4 this 3 3618 4 self 1 3574
425 14 Dtool_Ns0bMeis 0 6 380 3574 0 14 Dtool_Ns0bMeis 0 2 4 this 3 3618 9 attr_name 1 3576
426 14 Dtool_Ns0b8LZp 0 6 381 3577 0 14 Dtool_Ns0b8LZp 0 4 4 this 3 3617 4 self 1 3574 9 attr_name 1 3576 6 assign 1 3574
427 14 Dtool_Ns0bKmHn 0 4 382 3573 0 14 Dtool_Ns0bKmHn 224 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Indexing Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3617 1 i 1 3577
428 14 Dtool_Ns0bIH7D 0 6 382 3592 0 14 Dtool_Ns0bIH7D 224 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Indexing Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3618 1 i 1 3577
429 14 Dtool_Ns0bUicv 0 4 383 3573 0 14 Dtool_Ns0bUicv 0 3 4 this 3 3617 1 i 1 3577 1 v 1 3592
430 14 Dtool_Ns0b61Pr 0 6 384 3577 0 14 Dtool_Ns0b61Pr 271 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::size
// Access: Public, Static
// Description: Returns 3: the number of components of a LVecBase3.
//////////////////////////////////////////////////////////////////// 0
431 14 Dtool_Ns0b7uGy 0 6 385 3578 0 14 Dtool_Ns0b7uGy 308 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::is_nan
// Access: Public
// Description: Returns true if any component of the vector is
// not-a-number, false otherwise.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3618
432 14 Dtool_Ns0bgqfX 0 6 386 3592 0 14 Dtool_Ns0bgqfX 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_cell
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3618 1 i 1 3577
433 14 Dtool_Ns0b8t_C 0 6 387 3592 0 14 Dtool_Ns0b8t_C 212 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_x
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3618
434 14 Dtool_Ns0b8J4H 0 6 388 3592 0 14 Dtool_Ns0b8J4H 212 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_y
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3618
435 14 Dtool_Ns0b8lwM 0 6 389 3592 0 14 Dtool_Ns0b8lwM 212 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_z
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3618
436 14 Dtool_Ns0bj_Qe 0 4 390 3573 0 14 Dtool_Ns0bj_Qe 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::set_cell
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3617 1 i 1 3577 5 value 1 3592
437 14 Dtool_Ns0bfZV6 0 4 391 3573 0 14 Dtool_Ns0bfZV6 212 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::set_x
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3617 5 value 1 3592
438 14 Dtool_Ns0bf9N_ 0 4 392 3573 0 14 Dtool_Ns0bf9N_ 212 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::set_y
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3617 5 value 1 3592
439 14 Dtool_Ns0beBGE 0 4 393 3573 0 14 Dtool_Ns0beBGE 212 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::set_z
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3617 5 value 1 3592
440 14 Dtool_Ns0bwlZ5 0 7 394 3589 2094 14 Dtool_Ns0bwlZ5 317 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_xy
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first two components of this vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3618
441 14 Dtool_Ns0b1lnV 0 7 395 3589 2094 14 Dtool_Ns0b1lnV 322 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_xz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first and last components of this vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3618
442 14 Dtool_Ns0b1Jfa 0 7 396 3589 2094 14 Dtool_Ns0b1Jfa 316 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_yz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// last two components of this vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3618
443 14 Dtool_Ns0bLMq8 0 4 397 3573 0 14 Dtool_Ns0bLMq8 218 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::add_to_cell
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3617 1 i 1 3577 5 value 1 3592
444 14 Dtool_Ns0b0Qy4 0 4 398 3573 0 14 Dtool_Ns0b0Qy4 212 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::add_x
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3617 5 value 1 3592
445 14 Dtool_Ns0b00q9 0 4 399 3573 0 14 Dtool_Ns0b00q9 212 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::add_y
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3617 5 value 1 3592
446 14 Dtool_Ns0b3YjC 0 4 400 3573 0 14 Dtool_Ns0b3YjC 212 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::add_z
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3617 5 value 1 3592
447 14 Dtool_Ns0bd9D2 0 4 401 3573 0 14 Dtool_Ns0bd9D2 399 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_data
// Access: Public
// Description: 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 3618
448 14 Dtool_Ns0bLxGp 0 6 402 3577 0 14 Dtool_Ns0bLxGp 278 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_num_components
// Access: Public
// Description: Returns the number of elements in the vector, three.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3618
449 14 Dtool_Ns0bxac_ 0 4 403 3573 0 14 Dtool_Ns0bxac_ 364 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::fill
// Access: Published
// Description: Sets each element of the vector to the indicated
// fill_value. This is particularly useful for
// initializing to zero.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3617 10 fill_value 1 3592
450 14 Dtool_Ns0bL816 0 4 404 3573 0 14 Dtool_Ns0bL816 213 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::set
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 4 4 this 3 3617 1 x 1 3592 1 y 1 3592 1 z 1 3592
451 14 Dtool_Ns0b4N6j 0 6 405 3592 0 14 Dtool_Ns0b4N6j 213 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::dot
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3618 5 other 1 3618
452 14 Dtool_Ns0bGIsN 0 6 406 3592 0 14 Dtool_Ns0bGIsN 300 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::length_squared
// Access: Published
// Description: Returns the square of the vector's length, cheap and
// easy.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3618
453 14 Dtool_Ns0b5E4t 0 6 407 3592 0 14 Dtool_Ns0b5E4t 295 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::length
// Access: Published
// Description: Returns the length of the vector, by the Pythagorean
// theorem.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3618
454 14 Dtool_Ns0btBSD 0 6 408 3578 0 14 Dtool_Ns0btBSD 367 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::normalize
// Access: Published
// Description: Normalizes the vector in place. Returns true if the
// vector was normalized, false if it was a zero-length
// vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3617
455 14 Dtool_Ns0ba8hq 0 7 409 3617 2386 14 Dtool_Ns0ba8hq 390 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::project
// Access: Published
// Description: 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 3618 4 onto 1 3618
456 14 Dtool_Ns0bvmLU 0 7 410 3617 2386 14 Dtool_Ns0bvmLU 235 // FLOATTYPE_IS_INT
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::cross
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3618 5 other 1 3618
457 14 Dtool_Ns0bf_c1 0 6 411 3578 0 14 Dtool_Ns0bf_c1 498 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator <
// Access: Published
// Description: This performs a lexicographical comparison. It's of
// questionable mathematical meaning, but sometimes has
// a practical purpose for sorting unique vectors,
// especially in an STL container. Also see
// compare_to().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3618 5 other 1 3618
458 14 Dtool_Ns0b5E4P 0 6 412 3578 0 14 Dtool_Ns0b5E4P 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator ==
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3618 5 other 1 3618
459 14 Dtool_Ns0bCkg_ 0 6 413 3578 0 14 Dtool_Ns0bCkg_ 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator !=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3618 5 other 1 3618
460 14 Dtool_Ns0bwK45 0 7 414 3617 2386 14 Dtool_Ns0bwK45 1030 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_standardized_hpr
// Access: Published
// Description: 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 3618
461 14 Dtool_Ns0bAqT1 0 6 415 3577 0 14 Dtool_Ns0bAqT1 321 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::compare_to
// Access: Published
// Description: This flavor of compare_to uses a default threshold
// value based on the numeric type.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3618 5 other 1 3618
462 14 Dtool_Ns0bDVKA 0 6 415 3577 0 14 Dtool_Ns0bDVKA 504 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::compare_to
// Access: Published
// Description: 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 3618 5 other 1 3618 9 threshold 1 3592
463 14 Dtool_Ns0bQ_pi 0 6 416 3572 0 14 Dtool_Ns0bQ_pi 257 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3618
464 14 Dtool_Ns0bBwnB 0 6 416 3572 0 14 Dtool_Ns0bBwnB 257 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3618 9 threshold 1 3592
465 14 Dtool_Ns0blrfx 0 6 417 3572 0 14 Dtool_Ns0blrfx 257 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3618 4 hash 1 3572
466 14 Dtool_Ns0bjZW8 0 6 417 3572 0 14 Dtool_Ns0bjZW8 257 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3618 4 hash 1 3572 9 threshold 1 3592
467 14 Dtool_Ns0b_lpz 0 4 418 3573 0 14 Dtool_Ns0b_lpz 272 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::generate_hash
// Access: Published
// Description: Adds the vector to the indicated hash generator.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3618 7 hashgen 1 3579
468 14 Dtool_Ns0bhhvX 0 4 418 3573 0 14 Dtool_Ns0bhhvX 272 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::generate_hash
// Access: Published
// Description: Adds the vector to the indicated hash generator.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3618 7 hashgen 1 3579 9 threshold 1 3592
469 14 Dtool_Ns0bEy_f 0 7 419 3617 2386 14 Dtool_Ns0bEy_f 237 // FLOATTYPE_IS_INT
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::unary -
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3618
470 14 Dtool_Ns0bZ2dP 0 7 420 3617 2386 14 Dtool_Ns0bZ2dP 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::vector + vector
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3618 5 other 1 3618
471 14 Dtool_Ns0bZG_i 0 7 421 3617 2386 14 Dtool_Ns0bZG_i 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::vector - vector
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3618 5 other 1 3618
472 14 Dtool_Ns0b6_m2 0 7 422 3617 2386 14 Dtool_Ns0b6_m2 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::vector * scalar
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3618 6 scalar 1 3592
473 14 Dtool_Ns0b7Wdn 0 7 423 3617 2386 14 Dtool_Ns0b7Wdn 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::vector / scalar
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3618 6 scalar 1 3592
474 14 Dtool_Ns0bazWw 0 6 424 3617 0 14 Dtool_Ns0bazWw 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator +=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3617 5 other 1 3618
475 14 Dtool_Ns0bbD4D 0 6 425 3617 0 14 Dtool_Ns0bbD4D 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator -=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3617 5 other 1 3618
476 14 Dtool_Ns0bFCn2 0 6 426 3617 0 14 Dtool_Ns0bFCn2 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator *=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3617 6 scalar 1 3592
477 14 Dtool_Ns0bK6bn 0 6 427 3617 0 14 Dtool_Ns0bK6bn 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator /=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3617 6 scalar 1 3592
478 14 Dtool_Ns0b0OJR 0 7 428 3617 2386 14 Dtool_Ns0b0OJR 0 2 4 this 3 3618 8 exponent 1 3592
479 14 Dtool_Ns0b0psT 0 6 429 3574 0 14 Dtool_Ns0b0psT 0 3 4 this 3 3617 4 self 1 3574 8 exponent 1 3592
480 14 Dtool_Ns0byw_P 0 7 430 3617 2386 14 Dtool_Ns0byw_P 211 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::fmax
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3617 5 other 1 3618
481 14 Dtool_Ns0bQkhO 0 7 431 3617 2386 14 Dtool_Ns0bQkhO 211 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::fmin
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3617 5 other 1 3618
482 14 Dtool_Ns0bmWqm 0 4 432 3573 0 14 Dtool_Ns0bmWqm 241 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::cross product (with assignment)
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3617 5 other 1 3618
483 14 Dtool_Ns0bgl6W 0 6 433 3578 0 14 Dtool_Ns0bgl6W 342 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::almost_equal
// Access: Published
// Description: Returns true if two vectors are memberwise equal
// within a default tolerance based on the numeric type.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3618 5 other 1 3618
484 14 Dtool_Ns0b6Cbn 0 6 433 3578 0 14 Dtool_Ns0b6Cbn 318 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::almost_equal
// Access: Published
// Description: Returns true if two vectors are memberwise equal
// within a specified tolerance.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3618 5 other 1 3618 9 threshold 1 3592
485 14 Dtool_Ns0bhBt4 0 4 434 3573 0 14 Dtool_Ns0bhBt4 216 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::output
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3618 3 out 1 3581
486 14 Dtool_Ns0brCGM 0 4 435 3573 0 14 Dtool_Ns0brCGM 0 3 4 this 3 3618 3 out 1 3581 10 class_name 1 3576
487 14 Dtool_Ns0b8TRm 0 4 436 3573 0 14 Dtool_Ns0b8TRm 642 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::write_datagram_fixed
// Access: Published
// Description: 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 3618 11 destination 1 3583
488 14 Dtool_Ns0b4kyi 0 4 437 3573 0 14 Dtool_Ns0b4kyi 348 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::read_datagram_fixed
// Access: Published
// Description: Reads the vector from the Datagram using get_float32()
// or get_float64(). See write_datagram_fixed().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3617 6 source 1 3585
489 14 Dtool_Ns0bPKKj 0 4 438 3573 0 14 Dtool_Ns0bPKKj 464 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::write_datagram
// Access: Published
// Description: 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 3618 11 destination 1 3583
490 14 Dtool_Ns0bkPM1 0 4 439 3573 0 14 Dtool_Ns0bkPM1 280 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::read_datagram
// Access: Published
// Description: Reads the vector from the Datagram using get_stdfloat().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3617 6 source 1 3585
491 14 Dtool_Ns0byA_x 0 7 440 3588 0 14 Dtool_Ns0byA_x 0 0
492 14 Dtool_Ns0bIig7 0 7 442 3620 2458 14 Dtool_Ns0bIig7 715 // Filename: lvecBase3_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Default Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 0
493 14 Dtool_Ns0bWrEZ 0 7 442 3620 2458 14 Dtool_Ns0bWrEZ 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 copy 1 3594 1 z 1 3577
494 14 Dtool_Ns0bWXK_ 0 7 442 3620 2458 14 Dtool_Ns0bWXK_ 223 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Copy Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3621
495 14 Dtool_Ns0bO8Dl 0 7 442 3620 2458 14 Dtool_Ns0bO8Dl 218 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 10 fill_value 1 3577
496 14 Dtool_Ns0bblMW 0 7 442 3620 2458 14 Dtool_Ns0bblMW 218 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 3 1 x 1 3577 1 y 1 3577 1 z 1 3577
497 14 Dtool_Ns0bnZgK 0 6 443 3620 0 14 Dtool_Ns0bnZgK 231 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Copy Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3620 4 copy 1 3621
498 14 Dtool_Ns0bMjYw 0 6 443 3620 0 14 Dtool_Ns0bMjYw 231 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Fill Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3620 10 fill_value 1 3577
499 14 Dtool_Ns0bQjZj 0 4 444 3573 0 14 Dtool_Ns0bQjZj 0 2 4 this 3 3620 4 size 1 3572
500 14 Dtool_Ns0b1EhZ 0 6 447 3621 0 14 Dtool_Ns0b1EhZ 259 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::zero Named Constructor
// Access: Public
// Description: Returns a zero-length vector.
//////////////////////////////////////////////////////////////////// 0
501 14 Dtool_Ns0bv3X9 0 6 448 3621 0 14 Dtool_Ns0bv3X9 256 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X vector.
//////////////////////////////////////////////////////////////////// 0
502 14 Dtool_Ns0bs3lZ 0 6 449 3621 0 14 Dtool_Ns0bs3lZ 256 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y vector.
//////////////////////////////////////////////////////////////////// 0
503 14 Dtool_Ns0bS2z1 0 6 450 3621 0 14 Dtool_Ns0bS2z1 256 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::unit_z Named Constructor
// Access: Public
// Description: Returns a unit Z vector.
//////////////////////////////////////////////////////////////////// 0
504 14 Dtool_Ns0bHd1u 0 6 452 3574 0 14 Dtool_Ns0bHd1u 0 2 4 this 3 3621 4 self 1 3574
505 14 Dtool_Ns0blBkE 0 6 453 3574 0 14 Dtool_Ns0blBkE 0 2 4 this 3 3621 9 attr_name 1 3576
506 14 Dtool_Ns0blgZB 0 6 454 3577 0 14 Dtool_Ns0blgZB 0 4 4 this 3 3620 4 self 1 3574 9 attr_name 1 3576 6 assign 1 3574
507 14 Dtool_Ns0bwWI_ 0 4 455 3573 0 14 Dtool_Ns0bwWI_ 224 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Indexing Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3620 1 i 1 3577
508 14 Dtool_Ns0bio8b 0 6 455 3577 0 14 Dtool_Ns0bio8b 224 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::Indexing Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3621 1 i 1 3577
509 14 Dtool_Ns0bEgmP 0 4 456 3573 0 14 Dtool_Ns0bEgmP 0 3 4 this 3 3620 1 i 1 3577 1 v 1 3577
510 14 Dtool_Ns0bH6QD 0 6 457 3577 0 14 Dtool_Ns0bH6QD 271 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::size
// Access: Public, Static
// Description: Returns 3: the number of components of a LVecBase3.
//////////////////////////////////////////////////////////////////// 0
511 14 Dtool_Ns0bgfHK 0 6 458 3578 0 14 Dtool_Ns0bgfHK 308 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::is_nan
// Access: Public
// Description: Returns true if any component of the vector is
// not-a-number, false otherwise.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3621
512 14 Dtool_Ns0beagv 0 6 459 3577 0 14 Dtool_Ns0beagv 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_cell
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3621 1 i 1 3577
513 14 Dtool_Ns0bzKAb 0 6 460 3577 0 14 Dtool_Ns0bzKAb 212 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_x
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3621
514 14 Dtool_Ns0bzm4f 0 6 461 3577 0 14 Dtool_Ns0bzm4f 212 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_y
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3621
515 14 Dtool_Ns0bzCzk 0 6 462 3577 0 14 Dtool_Ns0bzCzk 212 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_z
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3621
516 14 Dtool_Ns0b38y0 0 4 463 3573 0 14 Dtool_Ns0b38y0 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::set_cell
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3620 1 i 1 3577 5 value 1 3577
517 14 Dtool_Ns0bFVbS 0 4 464 3573 0 14 Dtool_Ns0bFVbS 212 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::set_x
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3620 5 value 1 3577
518 14 Dtool_Ns0bFxTX 0 4 465 3573 0 14 Dtool_Ns0bFxTX 212 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::set_y
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3620 5 value 1 3577
519 14 Dtool_Ns0bFdMc 0 4 466 3573 0 14 Dtool_Ns0bFdMc 212 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::set_z
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3620 5 value 1 3577
520 14 Dtool_Ns0brGaR 0 7 467 3593 2156 14 Dtool_Ns0brGaR 317 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_xy
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first two components of this vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3621
521 14 Dtool_Ns0bpGot 0 7 468 3593 2156 14 Dtool_Ns0bpGot 322 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_xz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first and last components of this vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3621
522 14 Dtool_Ns0bpigy 0 7 469 3593 2156 14 Dtool_Ns0bpigy 316 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_yz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// last two components of this vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3621
523 14 Dtool_Ns0b3S0c 0 4 470 3573 0 14 Dtool_Ns0b3S0c 218 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::add_to_cell
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3620 1 i 1 3577 5 value 1 3577
524 14 Dtool_Ns0b8v4Q 0 4 471 3573 0 14 Dtool_Ns0b8v4Q 212 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::add_x
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3620 5 value 1 3577
525 14 Dtool_Ns0b8LxV 0 4 472 3573 0 14 Dtool_Ns0b8LxV 212 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::add_y
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3620 5 value 1 3577
526 14 Dtool_Ns0b8Xpa 0 4 473 3573 0 14 Dtool_Ns0b8Xpa 212 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::add_z
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3620 5 value 1 3577
527 14 Dtool_Ns0bkQEO 0 4 474 3573 0 14 Dtool_Ns0bkQEO 399 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_data
// Access: Public
// Description: 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 3621
528 14 Dtool_Ns0bmaHB 0 6 475 3577 0 14 Dtool_Ns0bmaHB 278 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_num_components
// Access: Public
// Description: Returns the number of elements in the vector, three.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3621
529 14 Dtool_Ns0b1ZfK 0 4 476 3573 0 14 Dtool_Ns0b1ZfK 364 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::fill
// Access: Published
// Description: Sets each element of the vector to the indicated
// fill_value. This is particularly useful for
// initializing to zero.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3620 10 fill_value 1 3577
530 14 Dtool_Ns0bEfm8 0 4 477 3573 0 14 Dtool_Ns0bEfm8 213 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::set
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 4 4 this 3 3620 1 x 1 3577 1 y 1 3577 1 z 1 3577
531 14 Dtool_Ns0bVa__ 0 6 478 3577 0 14 Dtool_Ns0bVa__ 213 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::dot
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3621 5 other 1 3621
532 14 Dtool_Ns0b7ltl 0 6 479 3577 0 14 Dtool_Ns0b7ltl 300 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::length_squared
// Access: Published
// Description: Returns the square of the vector's length, cheap and
// easy.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3621
533 14 Dtool_Ns0bUHkg 0 7 480 3620 2458 14 Dtool_Ns0bUHkg 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::cross
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3621 5 other 1 3621
534 14 Dtool_Ns0blNN2 0 6 481 3578 0 14 Dtool_Ns0blNN2 498 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator <
// Access: Published
// Description: This performs a lexicographical comparison. It's of
// questionable mathematical meaning, but sometimes has
// a practical purpose for sorting unique vectors,
// especially in an STL container. Also see
// compare_to().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3621 5 other 1 3621
535 14 Dtool_Ns0bmU6_ 0 6 482 3578 0 14 Dtool_Ns0bmU6_ 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator ==
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3621 5 other 1 3621
536 14 Dtool_Ns0bazju 0 6 483 3578 0 14 Dtool_Ns0bazju 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator !=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3621 5 other 1 3621
537 14 Dtool_Ns0bLd6R 0 7 484 3620 2458 14 Dtool_Ns0bLd6R 1030 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_standardized_hpr
// Access: Published
// Description: 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 3621
538 14 Dtool_Ns0bRCE2 0 6 485 3577 0 14 Dtool_Ns0bRCE2 321 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::compare_to
// Access: Published
// Description: This flavor of compare_to uses a default threshold
// value based on the numeric type.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3621 5 other 1 3621
539 14 Dtool_Ns0bH9r6 0 6 486 3572 0 14 Dtool_Ns0bH9r6 257 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3621
540 14 Dtool_Ns0bRKgJ 0 6 487 3572 0 14 Dtool_Ns0bRKgJ 257 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3621 4 hash 1 3572
541 14 Dtool_Ns0bDDqL 0 4 488 3573 0 14 Dtool_Ns0bDDqL 272 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::generate_hash
// Access: Published
// Description: Adds the vector to the indicated hash generator.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3621 7 hashgen 1 3579
542 14 Dtool_Ns0buJA4 0 7 489 3620 2458 14 Dtool_Ns0buJA4 217 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::unary -
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3621
543 14 Dtool_Ns0bjFOQ 0 7 490 3620 2458 14 Dtool_Ns0bjFOQ 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::vector + vector
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3621 5 other 1 3621
544 14 Dtool_Ns0bjVwj 0 7 491 3620 2458 14 Dtool_Ns0bjVwj 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::vector - vector
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3621 5 other 1 3621
545 14 Dtool_Ns0bSExH 0 7 492 3620 2458 14 Dtool_Ns0bSExH 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::vector * scalar
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3621 6 scalar 1 3577
546 14 Dtool_Ns0bS8m4 0 7 493 3620 2458 14 Dtool_Ns0bS8m4 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::vector / scalar
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3621 6 scalar 1 3577
547 14 Dtool_Ns0bSqZg 0 6 494 3620 0 14 Dtool_Ns0bSqZg 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator +=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3620 5 other 1 3621
548 14 Dtool_Ns0bSa6z 0 6 495 3620 0 14 Dtool_Ns0bSa6z 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator -=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3620 5 other 1 3621
549 14 Dtool_Ns0bVctS 0 6 496 3620 0 14 Dtool_Ns0bVctS 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator *=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3620 6 scalar 1 3577
550 14 Dtool_Ns0bW0hD 0 6 497 3620 0 14 Dtool_Ns0bW0hD 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::operator /=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3620 6 scalar 1 3577
551 14 Dtool_Ns0bsanm 0 7 498 3620 2458 14 Dtool_Ns0bsanm 0 2 4 this 3 3621 8 exponent 1 3577
552 14 Dtool_Ns0bPMRs 0 6 499 3574 0 14 Dtool_Ns0bPMRs 0 3 4 this 3 3620 4 self 1 3574 8 exponent 1 3577
553 14 Dtool_Ns0b6NpJ 0 7 500 3620 2458 14 Dtool_Ns0b6NpJ 211 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::fmax
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3620 5 other 1 3621
554 14 Dtool_Ns0bYAKI 0 7 501 3620 2458 14 Dtool_Ns0bYAKI 211 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::fmin
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3620 5 other 1 3621
555 14 Dtool_Ns0biAcn 0 4 502 3573 0 14 Dtool_Ns0biAcn 241 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::cross product (with assignment)
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3620 5 other 1 3621
556 14 Dtool_Ns0baoTv 0 6 503 3578 0 14 Dtool_Ns0baoTv 342 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::almost_equal
// Access: Published
// Description: Returns true if two vectors are memberwise equal
// within a default tolerance based on the numeric type.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3621 5 other 1 3621
557 14 Dtool_Ns0byuGe 0 6 503 3578 0 14 Dtool_Ns0byuGe 318 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::almost_equal
// Access: Published
// Description: Returns true if two vectors are memberwise equal
// within a specified tolerance.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3621 5 other 1 3621 9 threshold 1 3577
558 14 Dtool_Ns0bY6tQ 0 4 504 3573 0 14 Dtool_Ns0bY6tQ 216 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::output
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3621 3 out 1 3581
559 14 Dtool_Ns0b_9Ik 0 4 505 3573 0 14 Dtool_Ns0b_9Ik 0 3 4 this 3 3621 3 out 1 3581 10 class_name 1 3576
560 14 Dtool_Ns0bmYS_ 0 4 506 3573 0 14 Dtool_Ns0bmYS_ 642 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::write_datagram_fixed
// Access: Published
// Description: 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 3621 11 destination 1 3583
561 14 Dtool_Ns0bmL06 0 4 507 3573 0 14 Dtool_Ns0bmL06 348 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::read_datagram_fixed
// Access: Published
// Description: Reads the vector from the Datagram using get_float32()
// or get_float64(). See write_datagram_fixed().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3620 6 source 1 3585
562 14 Dtool_Ns0bT9M7 0 4 508 3573 0 14 Dtool_Ns0bT9M7 464 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::write_datagram
// Access: Published
// Description: 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 3621 11 destination 1 3583
563 14 Dtool_Ns0bStNN 0 4 509 3573 0 14 Dtool_Ns0bStNN 280 ////////////////////////////////////////////////////////////////////
// Function: LVecBase3::read_datagram
// Access: Published
// Description: Reads the vector from the Datagram using get_stdfloat().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3620 6 source 1 3585
564 14 Dtool_Ns0bn9_J 0 7 510 3588 0 14 Dtool_Ns0bn9_J 0 0
565 14 Dtool_Ns0bhACr 0 7 517 3623 2555 14 Dtool_Ns0bhACr 716 // Filename: lvector3_src.I
// Created by: drose (24Sep99)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector3::Default Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 0
566 14 Dtool_Ns0bMjgA 0 7 517 3623 2555 14 Dtool_Ns0bMjgA 220 ////////////////////////////////////////////////////////////////////
// Function: LVector3::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 copy 1 3569 1 z 1 3571
567 14 Dtool_Ns0bZ8LN 0 7 517 3623 2555 14 Dtool_Ns0bZ8LN 225 ////////////////////////////////////////////////////////////////////
// Function: LVector3::Copy Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3615
568 14 Dtool_Ns0b6OMJ 0 7 517 3623 2555 14 Dtool_Ns0b6OMJ 220 ////////////////////////////////////////////////////////////////////
// Function: LVector3::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 10 fill_value 1 3571
569 14 Dtool_Ns0bhp6I 0 7 517 3623 2555 14 Dtool_Ns0bhp6I 220 ////////////////////////////////////////////////////////////////////
// Function: LVector3::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 3 1 x 1 3571 1 y 1 3571 1 z 1 3571
570 14 Dtool_Ns0bqZGE 0 6 518 3623 0 14 Dtool_Ns0bqZGE 233 ////////////////////////////////////////////////////////////////////
// Function: LVector3::Copy Assignment Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3623 4 copy 1 3615
571 14 Dtool_Ns0bR_QE 0 6 518 3623 0 14 Dtool_Ns0bR_QE 227 ////////////////////////////////////////////////////////////////////
// Function: LVector3::Copy Fill Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3623 10 fill_value 1 3571
572 14 Dtool_Ns0bvXBf 0 6 519 3574 0 14 Dtool_Ns0bvXBf 0 2 4 this 3 3624 9 attr_name 1 3576
573 14 Dtool_Ns0brK3o 0 6 520 3577 0 14 Dtool_Ns0brK3o 0 4 4 this 3 3623 4 self 1 3574 9 attr_name 1 3576 6 assign 1 3574
574 14 Dtool_Ns0bMixn 0 6 521 3624 0 14 Dtool_Ns0bMixn 261 ////////////////////////////////////////////////////////////////////
// Function: LVector3::zero Named Constructor
// Access: Published
// Description: Returns a zero-length vector.
//////////////////////////////////////////////////////////////////// 0
575 14 Dtool_Ns0byo58 0 6 522 3624 0 14 Dtool_Ns0byo58 258 ////////////////////////////////////////////////////////////////////
// Function: LVector3::unit_x Named Constructor
// Access: Published
// Description: Returns a unit X vector.
//////////////////////////////////////////////////////////////////// 0
576 14 Dtool_Ns0bxExB 0 6 523 3624 0 14 Dtool_Ns0bxExB 258 ////////////////////////////////////////////////////////////////////
// Function: LVector3::unit_y Named Constructor
// Access: Published
// Description: Returns a unit Y vector.
//////////////////////////////////////////////////////////////////// 0
577 14 Dtool_Ns0bxgqG 0 6 524 3624 0 14 Dtool_Ns0bxgqG 258 ////////////////////////////////////////////////////////////////////
// Function: LVector3::unit_z Named Constructor
// Access: Published
// Description: Returns a unit Z vector.
//////////////////////////////////////////////////////////////////// 0
578 14 Dtool_Ns0b8jfB 0 7 525 3596 2224 14 Dtool_Ns0b8jfB 316 ////////////////////////////////////////////////////////////////////
// Function: LVector3::get_xy
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first two components of this vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3624
579 14 Dtool_Ns0b8PYG 0 7 526 3596 2224 14 Dtool_Ns0b8PYG 321 ////////////////////////////////////////////////////////////////////
// Function: LVector3::get_xz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first and last components of this vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3624
580 14 Dtool_Ns0bE_hG 0 7 527 3596 2224 14 Dtool_Ns0bE_hG 315 ////////////////////////////////////////////////////////////////////
// Function: LVector3::get_yz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// last two components of this vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3624
581 14 Dtool_Ns0bWstI 0 7 528 3623 2555 14 Dtool_Ns0bWstI 216 ////////////////////////////////////////////////////////////////////
// Function: LVector3::unary -
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3624
582 14 Dtool_Ns0bJrR4 0 7 529 3614 2314 14 Dtool_Ns0bJrR4 225 ////////////////////////////////////////////////////////////////////
// Function: LVector3::vector + vecbase
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3624 5 other 1 3615
583 14 Dtool_Ns0bciQH 0 7 529 3623 2555 14 Dtool_Ns0bciQH 224 ////////////////////////////////////////////////////////////////////
// Function: LVector3::vector + vector
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3624 5 other 1 3624
584 14 Dtool_Ns0bpo44 0 7 530 3614 2314 14 Dtool_Ns0bpo44 225 ////////////////////////////////////////////////////////////////////
// Function: LVector3::vector - vecbase
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3624 5 other 1 3615
585 14 Dtool_Ns0b8f3H 0 7 530 3623 2555 14 Dtool_Ns0b8f3H 224 ////////////////////////////////////////////////////////////////////
// Function: LVector3::vector - vector
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3624 5 other 1 3624
586 14 Dtool_Ns0bXSXn 0 7 531 3623 2555 14 Dtool_Ns0bXSXn 214 ////////////////////////////////////////////////////////////////////
// Function: LVector3::cross
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3624 5 other 1 3615
587 14 Dtool_Ns0bzCBx 0 7 532 3623 2555 14 Dtool_Ns0bzCBx 389 ////////////////////////////////////////////////////////////////////
// Function: LVector3::project
// Access: Published
// Description: 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 3624 4 onto 1 3615
588 14 Dtool_Ns0bi1_1 0 6 533 3571 0 14 Dtool_Ns0bi1_1 385 ////////////////////////////////////////////////////////////////////
// Function: LVector::angle_rad
// Access: Published
// Description: Returns the unsigned angle between this vector and
// the other one, expressed in radians. Both vectors
// should be initially normalized.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3624 5 other 1 3624
589 14 Dtool_Ns0bSe7m 0 6 534 3571 0 14 Dtool_Ns0bSe7m 376 ////////////////////////////////////////////////////////////////////
// Function: LVector::angle_deg
// Access: Published
// Description: Returns the angle between this vector and the other
// one, expressed in degrees. Both vectors should be
// initially normalized.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3624 5 other 1 3624
590 14 Dtool_Ns0bqxe0 0 6 535 3571 0 14 Dtool_Ns0bqxe0 548 ////////////////////////////////////////////////////////////////////
// Function: LVector::signed_angle_rad
// Access: Published
// Description: 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 3624 5 other 1 3624 3 ref 1 3624
591 14 Dtool_Ns0bDYOx 0 6 536 3571 0 14 Dtool_Ns0bDYOx 549 ////////////////////////////////////////////////////////////////////
// Function: LVector::signed_angle_deg
// Access: Published
// Description: 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 3624 5 other 1 3624 3 ref 1 3624
592 14 Dtool_Ns0b_dvn 0 6 537 3571 0 14 Dtool_Ns0b_dvn 266 ////////////////////////////////////////////////////////////////////
// Function: LVector::relative_angle_rad
// Access: Published
// Description: This method is deprecated. Do not use.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3624 5 other 1 3624
593 14 Dtool_Ns0bzM2t 0 6 538 3571 0 14 Dtool_Ns0bzM2t 266 ////////////////////////////////////////////////////////////////////
// Function: LVector::relative_angle_deg
// Access: Published
// Description: This method is deprecated. Do not use.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3624 5 other 1 3624
594 14 Dtool_Ns0bcvTb 0 7 539 3623 2555 14 Dtool_Ns0bcvTb 246 // FLOATTYPE_IS_INT
////////////////////////////////////////////////////////////////////
// Function: LVector3::operator * scalar
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3624 6 scalar 1 3571
595 14 Dtool_Ns0bsH0c 0 7 540 3623 2555 14 Dtool_Ns0bsH0c 226 ////////////////////////////////////////////////////////////////////
// Function: LVector3::operator / scalar
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3624 6 scalar 1 3571
596 14 Dtool_Ns0blOZo 0 7 541 3623 2555 14 Dtool_Ns0blOZo 291 ////////////////////////////////////////////////////////////////////
// Function: LVector3::up
// Access: Published, Static
// Description: Returns the up vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 1 2 cs 1 3529
597 14 Dtool_Ns0bz_MF 0 7 541 3623 2555 14 Dtool_Ns0bz_MF 291 ////////////////////////////////////////////////////////////////////
// Function: LVector3::up
// Access: Published, Static
// Description: Returns the up vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 0
598 14 Dtool_Ns0b3sup 0 7 542 3623 2555 14 Dtool_Ns0b3sup 297 ////////////////////////////////////////////////////////////////////
// Function: LVector3::right
// Access: Published, Static
// Description: Returns the right vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 1 2 cs 1 3529
599 14 Dtool_Ns0bYM3h 0 7 542 3623 2555 14 Dtool_Ns0bYM3h 297 ////////////////////////////////////////////////////////////////////
// Function: LVector3::right
// Access: Published, Static
// Description: Returns the right vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 0
600 14 Dtool_Ns0bn621 0 7 543 3623 2555 14 Dtool_Ns0bn621 301 ////////////////////////////////////////////////////////////////////
// Function: LVector3::forward
// Access: Published, Static
// Description: Returns the forward vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 1 2 cs 1 3529
601 14 Dtool_Ns0boQbv 0 7 543 3623 2555 14 Dtool_Ns0boQbv 301 ////////////////////////////////////////////////////////////////////
// Function: LVector3::forward
// Access: Published, Static
// Description: Returns the forward vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 0
602 14 Dtool_Ns0b5s4e 0 7 544 3623 2555 14 Dtool_Ns0b5s4e 295 ////////////////////////////////////////////////////////////////////
// Function: LVector3::down
// Access: Published, Static
// Description: Returns the down vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 1 2 cs 1 3529
603 14 Dtool_Ns0bjBqg 0 7 544 3623 2555 14 Dtool_Ns0bjBqg 295 ////////////////////////////////////////////////////////////////////
// Function: LVector3::down
// Access: Published, Static
// Description: Returns the down vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 0
604 14 Dtool_Ns0bvT2J 0 7 545 3623 2555 14 Dtool_Ns0bvT2J 295 ////////////////////////////////////////////////////////////////////
// Function: LVector3::left
// Access: Published, Static
// Description: Returns the left vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 1 2 cs 1 3529
605 14 Dtool_Ns0b1_pL 0 7 545 3623 2555 14 Dtool_Ns0b1_pL 295 ////////////////////////////////////////////////////////////////////
// Function: LVector3::left
// Access: Published, Static
// Description: Returns the left vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 0
606 14 Dtool_Ns0bxPd_ 0 7 546 3623 2555 14 Dtool_Ns0bxPd_ 295 ////////////////////////////////////////////////////////////////////
// Function: LVector3::back
// Access: Published, Static
// Description: Returns the back vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 1 2 cs 1 3529
607 14 Dtool_Ns0bUzPA 0 7 546 3623 2555 14 Dtool_Ns0bUzPA 295 ////////////////////////////////////////////////////////////////////
// Function: LVector3::back
// Access: Published, Static
// Description: Returns the back vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 0
608 14 Dtool_Ns0bhSqR 0 7 547 3623 2555 14 Dtool_Ns0bhSqR 453 ////////////////////////////////////////////////////////////////////
// Function: LVector3::rfu
// Access: Published, Static
// Description: Returns a vector that is described by its right,
// forward, and up components, in whatever way the
// coordinate system represents that vector.
////////////////////////////////////////////////////////////////////
//INLINE_LINMATH FLOATNAME(LVector3) &FLOATNAME(LVector3):: 4 5 right 1 3571 3 fwd 1 3571 2 up 1 3571 2 cs 1 3529
609 14 Dtool_Ns0bUW9c 0 7 547 3623 2555 14 Dtool_Ns0bUW9c 453 ////////////////////////////////////////////////////////////////////
// Function: LVector3::rfu
// Access: Published, Static
// Description: Returns a vector that is described by its right,
// forward, and up components, in whatever way the
// coordinate system represents that vector.
////////////////////////////////////////////////////////////////////
//INLINE_LINMATH FLOATNAME(LVector3) &FLOATNAME(LVector3):: 3 5 right 1 3571 3 fwd 1 3571 2 up 1 3571
610 14 Dtool_Ns0bfg_v 0 4 548 3573 0 14 Dtool_Ns0bfg_v 0 3 4 this 3 3624 3 out 1 3581 10 class_name 1 3576
611 14 Dtool_Ns0bg4QZ 0 7 549 3588 0 14 Dtool_Ns0bg4QZ 0 0
612 14 Dtool_Ns0bDyhn 0 7 552 3626 2589 14 Dtool_Ns0bDyhn 716 // Filename: lvector3_src.I
// Created by: drose (24Sep99)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector3::Default Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 0
613 14 Dtool_Ns0b_LFS 0 7 552 3626 2589 14 Dtool_Ns0b_LFS 220 ////////////////////////////////////////////////////////////////////
// Function: LVector3::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 copy 1 3590 1 z 1 3592
614 14 Dtool_Ns0bvfOH 0 7 552 3626 2589 14 Dtool_Ns0bvfOH 225 ////////////////////////////////////////////////////////////////////
// Function: LVector3::Copy Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3618
615 14 Dtool_Ns0bvhGS 0 7 552 3626 2589 14 Dtool_Ns0bvhGS 220 ////////////////////////////////////////////////////////////////////
// Function: LVector3::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 10 fill_value 1 3592
616 14 Dtool_Ns0b_Wm1 0 7 552 3626 2589 14 Dtool_Ns0b_Wm1 220 ////////////////////////////////////////////////////////////////////
// Function: LVector3::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 3 1 x 1 3592 1 y 1 3592 1 z 1 3592
617 14 Dtool_Ns0bzYfy 0 6 553 3626 0 14 Dtool_Ns0bzYfy 233 ////////////////////////////////////////////////////////////////////
// Function: LVector3::Copy Assignment Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3626 4 copy 1 3618
618 14 Dtool_Ns0bpe8O 0 6 553 3626 0 14 Dtool_Ns0bpe8O 227 ////////////////////////////////////////////////////////////////////
// Function: LVector3::Copy Fill Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3626 10 fill_value 1 3592
619 14 Dtool_Ns0bGUhb 0 6 554 3574 0 14 Dtool_Ns0bGUhb 0 2 4 this 3 3627 9 attr_name 1 3576
620 14 Dtool_Ns0bwLXl 0 6 555 3577 0 14 Dtool_Ns0bwLXl 0 4 4 this 3 3626 4 self 1 3574 9 attr_name 1 3576 6 assign 1 3574
621 14 Dtool_Ns0b3lRk 0 6 556 3627 0 14 Dtool_Ns0b3lRk 261 ////////////////////////////////////////////////////////////////////
// Function: LVector3::zero Named Constructor
// Access: Published
// Description: Returns a zero-length vector.
//////////////////////////////////////////////////////////////////// 0
622 14 Dtool_Ns0bp3Z5 0 6 557 3627 0 14 Dtool_Ns0bp3Z5 258 ////////////////////////////////////////////////////////////////////
// Function: LVector3::unit_x Named Constructor
// Access: Published
// Description: Returns a unit X vector.
//////////////////////////////////////////////////////////////////// 0
623 14 Dtool_Ns0bpbR_ 0 6 558 3627 0 14 Dtool_Ns0bpbR_ 258 ////////////////////////////////////////////////////////////////////
// Function: LVector3::unit_y Named Constructor
// Access: Published
// Description: Returns a unit Y vector.
//////////////////////////////////////////////////////////////////// 0
624 14 Dtool_Ns0bo_KD 0 6 559 3627 0 14 Dtool_Ns0bo_KD 258 ////////////////////////////////////////////////////////////////////
// Function: LVector3::unit_z Named Constructor
// Access: Published
// Description: Returns a unit Z vector.
//////////////////////////////////////////////////////////////////// 0
625 14 Dtool_Ns0bUj_9 0 7 560 3599 2242 14 Dtool_Ns0bUj_9 316 ////////////////////////////////////////////////////////////////////
// Function: LVector3::get_xy
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first two components of this vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3627
626 14 Dtool_Ns0bVP4C 0 7 561 3599 2242 14 Dtool_Ns0bVP4C 321 ////////////////////////////////////////////////////////////////////
// Function: LVector3::get_xz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first and last components of this vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3627
627 14 Dtool_Ns0bt_BD 0 7 562 3599 2242 14 Dtool_Ns0bt_BD 315 ////////////////////////////////////////////////////////////////////
// Function: LVector3::get_yz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// last two components of this vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3627
628 14 Dtool_Ns0bPtNF 0 7 563 3626 2589 14 Dtool_Ns0bPtNF 216 ////////////////////////////////////////////////////////////////////
// Function: LVector3::unary -
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3627
629 14 Dtool_Ns0bhqqm 0 7 564 3617 2386 14 Dtool_Ns0bhqqm 225 ////////////////////////////////////////////////////////////////////
// Function: LVector3::vector + vecbase
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3627 5 other 1 3618
630 14 Dtool_Ns0bzxUB 0 7 564 3626 2589 14 Dtool_Ns0bzxUB 224 ////////////////////////////////////////////////////////////////////
// Function: LVector3::vector + vector
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3627 5 other 1 3627
631 14 Dtool_Ns0bBpRn 0 7 565 3617 2386 14 Dtool_Ns0bBpRn 225 ////////////////////////////////////////////////////////////////////
// Function: LVector3::vector - vecbase
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3627 5 other 1 3618
632 14 Dtool_Ns0bTs7B 0 7 565 3626 2589 14 Dtool_Ns0bTs7B 224 ////////////////////////////////////////////////////////////////////
// Function: LVector3::vector - vector
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3627 5 other 1 3627
633 14 Dtool_Ns0bPzz8 0 7 566 3626 2589 14 Dtool_Ns0bPzz8 214 ////////////////////////////////////////////////////////////////////
// Function: LVector3::cross
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3627 5 other 1 3618
634 14 Dtool_Ns0biGg1 0 7 567 3626 2589 14 Dtool_Ns0biGg1 389 ////////////////////////////////////////////////////////////////////
// Function: LVector3::project
// Access: Published
// Description: 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 3627 4 onto 1 3618
635 14 Dtool_Ns0b_6Zy 0 6 568 3592 0 14 Dtool_Ns0b_6Zy 385 ////////////////////////////////////////////////////////////////////
// Function: LVector::angle_rad
// Access: Published
// Description: Returns the unsigned angle between this vector and
// the other one, expressed in radians. Both vectors
// should be initially normalized.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3627 5 other 1 3627
636 14 Dtool_Ns0blnWj 0 6 569 3592 0 14 Dtool_Ns0blnWj 376 ////////////////////////////////////////////////////////////////////
// Function: LVector::angle_deg
// Access: Published
// Description: Returns the angle between this vector and the other
// one, expressed in degrees. Both vectors should be
// initially normalized.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3627 5 other 1 3627
637 14 Dtool_Ns0bI_w4 0 6 570 3592 0 14 Dtool_Ns0bI_w4 548 ////////////////////////////////////////////////////////////////////
// Function: LVector::signed_angle_rad
// Access: Published
// Description: 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 3627 5 other 1 3627 3 ref 1 3627
638 14 Dtool_Ns0blWg1 0 6 571 3592 0 14 Dtool_Ns0blWg1 549 ////////////////////////////////////////////////////////////////////
// Function: LVector::signed_angle_deg
// Access: Published
// Description: 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 3627 5 other 1 3627 3 ref 1 3627
639 14 Dtool_Ns0bl1PE 0 6 572 3592 0 14 Dtool_Ns0bl1PE 266 ////////////////////////////////////////////////////////////////////
// Function: LVector::relative_angle_rad
// Access: Published
// Description: This method is deprecated. Do not use.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3627 5 other 1 3627
640 14 Dtool_Ns0bZkXK 0 6 573 3592 0 14 Dtool_Ns0bZkXK 266 ////////////////////////////////////////////////////////////////////
// Function: LVector::relative_angle_deg
// Access: Published
// Description: This method is deprecated. Do not use.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3627 5 other 1 3627
641 14 Dtool_Ns0b_54j 0 7 574 3626 2589 14 Dtool_Ns0b_54j 246 // FLOATTYPE_IS_INT
////////////////////////////////////////////////////////////////////
// Function: LVector3::operator * scalar
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3627 6 scalar 1 3592
642 14 Dtool_Ns0buQal 0 7 575 3626 2589 14 Dtool_Ns0buQal 226 ////////////////////////////////////////////////////////////////////
// Function: LVector3::operator / scalar
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3627 6 scalar 1 3592
643 14 Dtool_Ns0b8N5k 0 7 576 3626 2589 14 Dtool_Ns0b8N5k 291 ////////////////////////////////////////////////////////////////////
// Function: LVector3::up
// Access: Published, Static
// Description: Returns the up vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 1 2 cs 1 3529
644 14 Dtool_Ns0bI8sB 0 7 576 3626 2589 14 Dtool_Ns0bI8sB 291 ////////////////////////////////////////////////////////////////////
// Function: LVector3::up
// Access: Published, Static
// Description: Returns the up vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 0
645 14 Dtool_Ns0bQtOm 0 7 577 3626 2589 14 Dtool_Ns0bQtOm 297 ////////////////////////////////////////////////////////////////////
// Function: LVector3::right
// Access: Published, Static
// Description: Returns the right vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 1 2 cs 1 3529
646 14 Dtool_Ns0bxMXe 0 7 577 3626 2589 14 Dtool_Ns0bxMXe 297 ////////////////////////////////////////////////////////////////////
// Function: LVector3::right
// Access: Published, Static
// Description: Returns the right vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 0
647 14 Dtool_Ns0b8FXy 0 7 578 3626 2589 14 Dtool_Ns0b8FXy 301 ////////////////////////////////////////////////////////////////////
// Function: LVector3::forward
// Access: Published, Static
// Description: Returns the forward vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 1 2 cs 1 3529
648 14 Dtool_Ns0bPT7r 0 7 578 3626 2589 14 Dtool_Ns0bPT7r 301 ////////////////////////////////////////////////////////////////////
// Function: LVector3::forward
// Access: Published, Static
// Description: Returns the forward vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 0
649 14 Dtool_Ns0bgtYb 0 7 579 3626 2589 14 Dtool_Ns0bgtYb 295 ////////////////////////////////////////////////////////////////////
// Function: LVector3::down
// Access: Published, Static
// Description: Returns the down vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 1 2 cs 1 3529
650 14 Dtool_Ns0bKBKd 0 7 579 3626 2589 14 Dtool_Ns0bKBKd 295 ////////////////////////////////////////////////////////////////////
// Function: LVector3::down
// Access: Published, Static
// Description: Returns the down vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 0
651 14 Dtool_Ns0b2UWG 0 7 580 3626 2589 14 Dtool_Ns0b2UWG 295 ////////////////////////////////////////////////////////////////////
// Function: LVector3::left
// Access: Published, Static
// Description: Returns the left vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 1 2 cs 1 3529
652 14 Dtool_Ns0bcxJI 0 7 580 3626 2589 14 Dtool_Ns0bcxJI 295 ////////////////////////////////////////////////////////////////////
// Function: LVector3::left
// Access: Published, Static
// Description: Returns the left vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 0
653 14 Dtool_Ns0bWP96 0 7 581 3626 2589 14 Dtool_Ns0bWP96 295 ////////////////////////////////////////////////////////////////////
// Function: LVector3::back
// Access: Published, Static
// Description: Returns the back vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 1 2 cs 1 3529
654 14 Dtool_Ns0bMyv8 0 7 581 3626 2589 14 Dtool_Ns0bMyv8 295 ////////////////////////////////////////////////////////////////////
// Function: LVector3::back
// Access: Published, Static
// Description: Returns the back vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 0
655 14 Dtool_Ns0buPAa 0 7 582 3626 2589 14 Dtool_Ns0buPAa 453 ////////////////////////////////////////////////////////////////////
// Function: LVector3::rfu
// Access: Published, Static
// Description: Returns a vector that is described by its right,
// forward, and up components, in whatever way the
// coordinate system represents that vector.
////////////////////////////////////////////////////////////////////
//INLINE_LINMATH FLOATNAME(LVector3) &FLOATNAME(LVector3):: 4 5 right 1 3592 3 fwd 1 3592 2 up 1 3592 2 cs 1 3529
656 14 Dtool_Ns0bnVMh 0 7 582 3626 2589 14 Dtool_Ns0bnVMh 453 ////////////////////////////////////////////////////////////////////
// Function: LVector3::rfu
// Access: Published, Static
// Description: Returns a vector that is described by its right,
// forward, and up components, in whatever way the
// coordinate system represents that vector.
////////////////////////////////////////////////////////////////////
//INLINE_LINMATH FLOATNAME(LVector3) &FLOATNAME(LVector3):: 3 5 right 1 3592 3 fwd 1 3592 2 up 1 3592
657 14 Dtool_Ns0b2jes 0 4 583 3573 0 14 Dtool_Ns0b2jes 0 3 4 this 3 3627 3 out 1 3581 10 class_name 1 3576
658 14 Dtool_Ns0bH5wV 0 7 584 3588 0 14 Dtool_Ns0bH5wV 0 0
659 14 Dtool_Ns0b30Tw 0 7 587 3629 2616 14 Dtool_Ns0b30Tw 716 // Filename: lvector3_src.I
// Created by: drose (24Sep99)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector3::Default Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 0
660 14 Dtool_Ns0bEcgh 0 7 587 3629 2616 14 Dtool_Ns0bEcgh 220 ////////////////////////////////////////////////////////////////////
// Function: LVector3::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 copy 1 3594 1 z 1 3577
661 14 Dtool_Ns0bCHGW 0 7 587 3629 2616 14 Dtool_Ns0bCHGW 225 ////////////////////////////////////////////////////////////////////
// Function: LVector3::Copy Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3621
662 14 Dtool_Ns0byYJ6 0 7 587 3629 2616 14 Dtool_Ns0byYJ6 220 ////////////////////////////////////////////////////////////////////
// Function: LVector3::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 10 fill_value 1 3577
663 14 Dtool_Ns0bd32R 0 7 587 3629 2616 14 Dtool_Ns0bd32R 220 ////////////////////////////////////////////////////////////////////
// Function: LVector3::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 3 1 x 1 3577 1 y 1 3577 1 z 1 3577
664 14 Dtool_Ns0bW5he 0 6 588 3629 0 14 Dtool_Ns0bW5he 233 ////////////////////////////////////////////////////////////////////
// Function: LVector3::Copy Assignment Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3629 4 copy 1 3621
665 14 Dtool_Ns0b5_uf 0 6 588 3629 0 14 Dtool_Ns0b5_uf 227 ////////////////////////////////////////////////////////////////////
// Function: LVector3::Copy Fill Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3629 10 fill_value 1 3577
666 14 Dtool_Ns0boWRE 0 6 589 3574 0 14 Dtool_Ns0boWRE 0 2 4 this 3 3630 9 attr_name 1 3576
667 14 Dtool_Ns0bWJHO 0 6 590 3577 0 14 Dtool_Ns0bWJHO 0 4 4 this 3 3629 4 self 1 3574 9 attr_name 1 3576 6 assign 1 3574
668 14 Dtool_Ns0bRjBN 0 6 591 3630 0 14 Dtool_Ns0bRjBN 261 ////////////////////////////////////////////////////////////////////
// Function: LVector3::zero Named Constructor
// Access: Published
// Description: Returns a zero-length vector.
//////////////////////////////////////////////////////////////////// 0
669 14 Dtool_Ns0bPoJi 0 6 592 3630 0 14 Dtool_Ns0bPoJi 258 ////////////////////////////////////////////////////////////////////
// Function: LVector3::unit_x Named Constructor
// Access: Published
// Description: Returns a unit X vector.
//////////////////////////////////////////////////////////////////// 0
670 14 Dtool_Ns0bPEBn 0 6 593 3630 0 14 Dtool_Ns0bPEBn 258 ////////////////////////////////////////////////////////////////////
// Function: LVector3::unit_y Named Constructor
// Access: Published
// Description: Returns a unit Y vector.
//////////////////////////////////////////////////////////////////// 0
671 14 Dtool_Ns0bPg6r 0 6 594 3630 0 14 Dtool_Ns0bPg6r 258 ////////////////////////////////////////////////////////////////////
// Function: LVector3::unit_z Named Constructor
// Access: Published
// Description: Returns a unit Z vector.
//////////////////////////////////////////////////////////////////// 0
672 14 Dtool_Ns0b6kvm 0 7 595 3602 2257 14 Dtool_Ns0b6kvm 316 ////////////////////////////////////////////////////////////////////
// Function: LVector3::get_xy
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first two components of this vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3630
673 14 Dtool_Ns0b6Ior 0 7 596 3602 2257 14 Dtool_Ns0b6Ior 321 ////////////////////////////////////////////////////////////////////
// Function: LVector3::get_xz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first and last components of this vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3630
674 14 Dtool_Ns0bC4xr 0 7 597 3602 2257 14 Dtool_Ns0bC4xr 315 ////////////////////////////////////////////////////////////////////
// Function: LVector3::get_yz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// last two components of this vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3630
675 14 Dtool_Ns0bQv9t 0 7 598 3629 2616 14 Dtool_Ns0bQv9t 216 ////////////////////////////////////////////////////////////////////
// Function: LVector3::unary -
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3630
676 14 Dtool_Ns0bKErS 0 7 599 3620 2458 14 Dtool_Ns0bKErS 225 ////////////////////////////////////////////////////////////////////
// Function: LVector3::vector + vecbase
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3630 5 other 1 3621
677 14 Dtool_Ns0bSyLw 0 7 599 3629 2616 14 Dtool_Ns0bSyLw 224 ////////////////////////////////////////////////////////////////////
// Function: LVector3::vector + vector
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3630 5 other 1 3630
678 14 Dtool_Ns0bqHST 0 7 600 3620 2458 14 Dtool_Ns0bqHST 225 ////////////////////////////////////////////////////////////////////
// Function: LVector3::vector - vecbase
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3630 5 other 1 3621
679 14 Dtool_Ns0by1ww 0 7 600 3629 2616 14 Dtool_Ns0by1ww 224 ////////////////////////////////////////////////////////////////////
// Function: LVector3::vector - vector
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3630 5 other 1 3630
680 14 Dtool_Ns0bTBMH 0 7 601 3629 2616 14 Dtool_Ns0bTBMH 214 ////////////////////////////////////////////////////////////////////
// Function: LVector3::cross
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3630 5 other 1 3621
681 14 Dtool_Ns0b8QaY 0 7 602 3629 2616 14 Dtool_Ns0b8QaY 226 ////////////////////////////////////////////////////////////////////
// Function: LVector3::operator * scalar
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3630 6 scalar 1 3577
682 14 Dtool_Ns0bMI8Z 0 7 603 3629 2616 14 Dtool_Ns0bMI8Z 226 ////////////////////////////////////////////////////////////////////
// Function: LVector3::operator / scalar
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3630 6 scalar 1 3577
683 14 Dtool_Ns0bePpN 0 7 604 3629 2616 14 Dtool_Ns0bePpN 291 ////////////////////////////////////////////////////////////////////
// Function: LVector3::up
// Access: Published, Static
// Description: Returns the up vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 1 2 cs 1 3529
684 14 Dtool_Ns0bp_cq 0 7 604 3629 2616 14 Dtool_Ns0bp_cq 291 ////////////////////////////////////////////////////////////////////
// Function: LVector3::up
// Access: Published, Static
// Description: Returns the up vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 0
685 14 Dtool_Ns0byr_O 0 7 605 3629 2616 14 Dtool_Ns0byr_O 297 ////////////////////////////////////////////////////////////////////
// Function: LVector3::right
// Access: Published, Static
// Description: Returns the right vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 1 2 cs 1 3529
686 14 Dtool_Ns0bfNHH 0 7 605 3629 2616 14 Dtool_Ns0bfNHH 297 ////////////////////////////////////////////////////////////////////
// Function: LVector3::right
// Access: Published, Static
// Description: Returns the right vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 0
687 14 Dtool_Ns0bi7Gb 0 7 606 3629 2616 14 Dtool_Ns0bi7Gb 301 ////////////////////////////////////////////////////////////////////
// Function: LVector3::forward
// Access: Published, Static
// Description: Returns the forward vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 1 2 cs 1 3529
688 14 Dtool_Ns0btRrU 0 7 606 3629 2616 14 Dtool_Ns0btRrU 301 ////////////////////////////////////////////////////////////////////
// Function: LVector3::forward
// Access: Published, Static
// Description: Returns the forward vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 0
689 14 Dtool_Ns0bCjIE 0 7 607 3629 2616 14 Dtool_Ns0bCjIE 295 ////////////////////////////////////////////////////////////////////
// Function: LVector3::down
// Access: Published, Static
// Description: Returns the down vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 1 2 cs 1 3529
690 14 Dtool_Ns0bkG6F 0 7 607 3629 2616 14 Dtool_Ns0bkG6F 295 ////////////////////////////////////////////////////////////////////
// Function: LVector3::down
// Access: Published, Static
// Description: Returns the down vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 0
691 14 Dtool_Ns0bVTGv 0 7 608 3629 2616 14 Dtool_Ns0bVTGv 295 ////////////////////////////////////////////////////////////////////
// Function: LVector3::left
// Access: Published, Static
// Description: Returns the left vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 1 2 cs 1 3529
692 14 Dtool_Ns0bz_5w 0 7 608 3629 2616 14 Dtool_Ns0bz_5w 295 ////////////////////////////////////////////////////////////////////
// Function: LVector3::left
// Access: Published, Static
// Description: Returns the left vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 0
693 14 Dtool_Ns0b0Otj 0 7 609 3629 2616 14 Dtool_Ns0b0Otj 295 ////////////////////////////////////////////////////////////////////
// Function: LVector3::back
// Access: Published, Static
// Description: Returns the back vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 1 2 cs 1 3529
694 14 Dtool_Ns0bqzfl 0 7 609 3629 2616 14 Dtool_Ns0bqzfl 295 ////////////////////////////////////////////////////////////////////
// Function: LVector3::back
// Access: Published, Static
// Description: Returns the back vector for the given coordinate
// system.
//////////////////////////////////////////////////////////////////// 0
695 14 Dtool_Ns0b9XC0 0 7 610 3629 2616 14 Dtool_Ns0b9XC0 453 ////////////////////////////////////////////////////////////////////
// Function: LVector3::rfu
// Access: Published, Static
// Description: Returns a vector that is described by its right,
// forward, and up components, in whatever way the
// coordinate system represents that vector.
////////////////////////////////////////////////////////////////////
//INLINE_LINMATH FLOATNAME(LVector3) &FLOATNAME(LVector3):: 4 5 right 1 3577 3 fwd 1 3577 2 up 1 3577 2 cs 1 3529
696 14 Dtool_Ns0bS9Qt 0 7 610 3629 2616 14 Dtool_Ns0bS9Qt 453 ////////////////////////////////////////////////////////////////////
// Function: LVector3::rfu
// Access: Published, Static
// Description: Returns a vector that is described by its right,
// forward, and up components, in whatever way the
// coordinate system represents that vector.
////////////////////////////////////////////////////////////////////
//INLINE_LINMATH FLOATNAME(LVector3) &FLOATNAME(LVector3):: 3 5 right 1 3577 3 fwd 1 3577 2 up 1 3577
697 14 Dtool_Ns0bQhOV 0 4 611 3573 0 14 Dtool_Ns0bQhOV 0 3 4 this 3 3630 3 out 1 3581 10 class_name 1 3576
698 14 Dtool_Ns0bm_g_ 0 7 612 3588 0 14 Dtool_Ns0bm_g_ 0 0
699 14 Dtool_Ns0bz3Qe 0 7 615 3632 2639 14 Dtool_Ns0bz3Qe 711 // Filename: lpoint3_src.I
// Created by: drose (25Sep99)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint3::Default Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 0
700 14 Dtool_Ns0bL4E1 0 7 615 3632 2639 14 Dtool_Ns0bL4E1 219 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 copy 1 3569 1 z 1 3571
701 14 Dtool_Ns0bb_6E 0 7 615 3632 2639 14 Dtool_Ns0bb_6E 221 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::Copy Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3615
702 14 Dtool_Ns0bCO2W 0 7 615 3632 2639 14 Dtool_Ns0bCO2W 216 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 10 fill_value 1 3571
703 14 Dtool_Ns0bMxu6 0 7 615 3632 2639 14 Dtool_Ns0bMxu6 216 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 3 1 x 1 3571 1 y 1 3571 1 z 1 3571
704 14 Dtool_Ns0bJ6xP 0 6 616 3632 0 14 Dtool_Ns0bJ6xP 229 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::Copy Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3632 4 copy 1 3615
705 14 Dtool_Ns0bqkxL 0 6 616 3632 0 14 Dtool_Ns0bqkxL 223 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::Copy Fill Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3632 10 fill_value 1 3571
706 14 Dtool_Ns0bPEjO 0 6 617 3574 0 14 Dtool_Ns0bPEjO 0 2 4 this 3 3633 9 attr_name 1 3576
707 14 Dtool_Ns0bbPzi 0 6 618 3577 0 14 Dtool_Ns0bbPzi 0 4 4 this 3 3632 4 self 1 3574 9 attr_name 1 3576 6 assign 1 3574
708 14 Dtool_Ns0bqu74 0 6 619 3633 0 14 Dtool_Ns0bqu74 256 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::zero Named Constructor
// Access: Public
// Description: Returns a zero-length point.
//////////////////////////////////////////////////////////////////// 0
709 14 Dtool_Ns0bCPkF 0 6 620 3633 0 14 Dtool_Ns0bCPkF 253 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X point.
//////////////////////////////////////////////////////////////////// 0
710 14 Dtool_Ns0baeuF 0 6 621 3633 0 14 Dtool_Ns0baeuF 253 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y point.
//////////////////////////////////////////////////////////////////// 0
711 14 Dtool_Ns0bSp3F 0 6 622 3633 0 14 Dtool_Ns0bSp3F 253 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::unit_z Named Constructor
// Access: Public
// Description: Returns a unit Z point.
//////////////////////////////////////////////////////////////////// 0
712 14 Dtool_Ns0bxis3 0 7 623 3605 2273 14 Dtool_Ns0bxis3 315 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::get_xy
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first two components of this vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3633
713 14 Dtool_Ns0bpT23 0 7 624 3605 2273 14 Dtool_Ns0bpT23 320 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::get_xz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first and last components of this vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3633
714 14 Dtool_Ns0bLH2n 0 7 625 3605 2273 14 Dtool_Ns0bLH2n 314 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::get_yz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// last two components of this vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3633
715 14 Dtool_Ns0b0M7V 0 7 626 3632 2639 14 Dtool_Ns0b0M7V 212 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::unary -
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3633
716 14 Dtool_Ns0b_4Xx 0 7 627 3614 2314 14 Dtool_Ns0b_4Xx 220 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::point + vecbase
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3633 5 other 1 3615
717 14 Dtool_Ns0bg12J 0 7 627 3632 2639 14 Dtool_Ns0bg12J 219 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::point + vector
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3633 5 other 1 3624
718 14 Dtool_Ns0bSFwU 0 7 628 3623 2555 14 Dtool_Ns0bSFwU 218 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::point - point
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3633 5 other 1 3633
719 14 Dtool_Ns0bBLZx 0 7 628 3614 2314 14 Dtool_Ns0bBLZx 220 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::point - vecbase
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3633 5 other 1 3615
720 14 Dtool_Ns0bfn3J 0 7 628 3632 2639 14 Dtool_Ns0bfn3J 219 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::point - vector
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3633 5 other 1 3624
721 14 Dtool_Ns0b3m20 0 7 629 3632 2639 14 Dtool_Ns0b3m20 210 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::cross
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3633 5 other 1 3615
722 14 Dtool_Ns0bPmL9 0 7 630 3632 2639 14 Dtool_Ns0bPmL9 388 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::project
// Access: Published
// Description: 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 3633 4 onto 1 3615
723 14 Dtool_Ns0bUCf8 0 7 631 3632 2639 14 Dtool_Ns0bUCf8 242 // FLOATTYPE_IS_INT
////////////////////////////////////////////////////////////////////
// Function: LPoint3::operator * scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3633 6 scalar 1 3571
724 14 Dtool_Ns0brOic 0 7 632 3632 2639 14 Dtool_Ns0brOic 222 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::operator / scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3633 6 scalar 1 3571
725 14 Dtool_Ns0bVRyH 0 6 633 3633 0 14 Dtool_Ns0bVRyH 440 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::origin
// Access: Public, Static
// Description: 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 3529
726 14 Dtool_Ns0bM16_ 0 6 633 3633 0 14 Dtool_Ns0bM16_ 440 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::origin
// Access: Public, Static
// Description: 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.
//////////////////////////////////////////////////////////////////// 0
727 14 Dtool_Ns0bkaIy 0 7 634 3632 2639 14 Dtool_Ns0bkaIy 383 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::rfu
// Access: Public, Static
// Description: 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 3571 3 fwd 1 3571 2 up 1 3571 2 cs 1 3529
728 14 Dtool_Ns0b2tjk 0 7 634 3632 2639 14 Dtool_Ns0b2tjk 383 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::rfu
// Access: Public, Static
// Description: Returns a point described by right, forward, up
// displacements from the origin, wherever that maps to
// in the given coordinate system.
//////////////////////////////////////////////////////////////////// 3 5 right 1 3571 3 fwd 1 3571 2 up 1 3571
729 14 Dtool_Ns0bFpCv 0 4 635 3573 0 14 Dtool_Ns0bFpCv 0 3 4 this 3 3633 3 out 1 3581 10 class_name 1 3576
730 14 Dtool_Ns0bnkbU 0 7 636 3588 0 14 Dtool_Ns0bnkbU 0 0
731 14 Dtool_Ns0bt3tX 0 7 639 3635 2662 14 Dtool_Ns0bt3tX 711 // Filename: lpoint3_src.I
// Created by: drose (25Sep99)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint3::Default Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 0
732 14 Dtool_Ns0b9DSo 0 7 639 3635 2662 14 Dtool_Ns0b9DSo 219 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 copy 1 3590 1 z 1 3592
733 14 Dtool_Ns0bSkXG 0 7 639 3635 2662 14 Dtool_Ns0bSkXG 221 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::Copy Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3618
734 14 Dtool_Ns0b3ZYu 0 7 639 3635 2662 14 Dtool_Ns0b3ZYu 216 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 10 fill_value 1 3592
735 14 Dtool_Ns0bk1qU 0 7 639 3635 2662 14 Dtool_Ns0bk1qU 216 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 3 1 x 1 3592 1 y 1 3592 1 z 1 3592
736 14 Dtool_Ns0bLoO_ 0 6 640 3635 0 14 Dtool_Ns0bLoO_ 229 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::Copy Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3635 4 copy 1 3618
737 14 Dtool_Ns0bMIGK 0 6 640 3635 0 14 Dtool_Ns0bMIGK 223 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::Copy Fill Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3635 10 fill_value 1 3592
738 14 Dtool_Ns0bOEcA 0 6 641 3574 0 14 Dtool_Ns0bOEcA 0 2 4 this 3 3636 9 attr_name 1 3576
739 14 Dtool_Ns0baPsU 0 6 642 3577 0 14 Dtool_Ns0baPsU 0 4 4 this 3 3635 4 self 1 3574 9 attr_name 1 3576 6 assign 1 3574
740 14 Dtool_Ns0bru0q 0 6 643 3636 0 14 Dtool_Ns0bru0q 256 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::zero Named Constructor
// Access: Public
// Description: Returns a zero-length point.
//////////////////////////////////////////////////////////////////// 0
741 14 Dtool_Ns0bAPd3 0 6 644 3636 0 14 Dtool_Ns0bAPd3 253 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X point.
//////////////////////////////////////////////////////////////////// 0
742 14 Dtool_Ns0bYen3 0 6 645 3636 0 14 Dtool_Ns0bYen3 253 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y point.
//////////////////////////////////////////////////////////////////// 0
743 14 Dtool_Ns0bQpw3 0 6 646 3636 0 14 Dtool_Ns0bQpw3 253 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::unit_z Named Constructor
// Access: Public
// Description: Returns a unit Z point.
//////////////////////////////////////////////////////////////////// 0
744 14 Dtool_Ns0bOilp 0 7 647 3608 2289 14 Dtool_Ns0bOilp 315 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::get_xy
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first two components of this vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3636
745 14 Dtool_Ns0bWTvp 0 7 648 3608 2289 14 Dtool_Ns0bWTvp 320 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::get_xz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first and last components of this vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3636
746 14 Dtool_Ns0bIHvZ 0 7 649 3608 2289 14 Dtool_Ns0bIHvZ 314 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::get_yz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// last two components of this vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3636
747 14 Dtool_Ns0b1M0H 0 7 650 3635 2662 14 Dtool_Ns0b1M0H 212 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::unary -
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3636
748 14 Dtool_Ns0b9u0g 0 7 651 3617 2386 14 Dtool_Ns0b9u0g 220 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::point + vecbase
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3636 5 other 1 3618
749 14 Dtool_Ns0b6tq7 0 7 651 3635 2662 14 Dtool_Ns0b6tq7 219 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::point + vector
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3636 5 other 1 3627
750 14 Dtool_Ns0bHBoO 0 7 652 3626 2589 14 Dtool_Ns0bHBoO 218 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::point - point
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3636 5 other 1 3636
751 14 Dtool_Ns0bC51g 0 7 652 3617 2386 14 Dtool_Ns0bC51g 220 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::point - vecbase
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3636 5 other 1 3618
752 14 Dtool_Ns0b9fr7 0 7 652 3635 2662 14 Dtool_Ns0b9fr7 219 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::point - vector
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3636 5 other 1 3627
753 14 Dtool_Ns0bwvhl 0 7 653 3635 2662 14 Dtool_Ns0bwvhl 210 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::cross
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3636 5 other 1 3618
754 14 Dtool_Ns0bjmUN 0 7 654 3635 2662 14 Dtool_Ns0bjmUN 388 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::project
// Access: Published
// Description: 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 3636 4 onto 1 3618
755 14 Dtool_Ns0brZwG 0 7 655 3635 2662 14 Dtool_Ns0brZwG 242 // FLOATTYPE_IS_INT
////////////////////////////////////////////////////////////////////
// Function: LPoint3::operator * scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3636 6 scalar 1 3592
756 14 Dtool_Ns0b6cym 0 7 656 3635 2662 14 Dtool_Ns0b6cym 222 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::operator / scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3636 6 scalar 1 3592
757 14 Dtool_Ns0bXRr5 0 6 657 3636 0 14 Dtool_Ns0bXRr5 440 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::origin
// Access: Public, Static
// Description: 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 3529
758 14 Dtool_Ns0bN1zx 0 6 657 3636 0 14 Dtool_Ns0bN1zx 440 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::origin
// Access: Public, Static
// Description: 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.
//////////////////////////////////////////////////////////////////// 0
759 14 Dtool_Ns0bx8Y0 0 7 658 3635 2662 14 Dtool_Ns0bx8Y0 383 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::rfu
// Access: Public, Static
// Description: 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 3592 3 fwd 1 3592 2 up 1 3592 2 cs 1 3529
760 14 Dtool_Ns0bs_qG 0 7 658 3635 2662 14 Dtool_Ns0bs_qG 383 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::rfu
// Access: Public, Static
// Description: Returns a point described by right, forward, up
// displacements from the origin, wherever that maps to
// in the given coordinate system.
//////////////////////////////////////////////////////////////////// 3 5 right 1 3592 3 fwd 1 3592 2 up 1 3592
761 14 Dtool_Ns0bEp7g 0 4 659 3573 0 14 Dtool_Ns0bEp7g 0 3 4 this 3 3636 3 out 1 3581 10 class_name 1 3576
762 14 Dtool_Ns0bmkUG 0 7 660 3588 0 14 Dtool_Ns0bmkUG 0 0
763 14 Dtool_Ns0b8XFo 0 7 663 3638 2684 14 Dtool_Ns0b8XFo 711 // Filename: lpoint3_src.I
// Created by: drose (25Sep99)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint3::Default Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 0
764 14 Dtool_Ns0bpsqB 0 7 663 3638 2684 14 Dtool_Ns0bpsqB 219 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 copy 1 3594 1 z 1 3577
765 14 Dtool_Ns0bpsvi 0 7 663 3638 2684 14 Dtool_Ns0bpsvi 221 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::Copy Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3621
766 14 Dtool_Ns0bX_xA 0 7 663 3638 2684 14 Dtool_Ns0bX_xA 216 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 10 fill_value 1 3577
767 14 Dtool_Ns0bTdST 0 7 663 3638 2684 14 Dtool_Ns0bTdST 216 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 3 1 x 1 3577 1 y 1 3577 1 z 1 3577
768 14 Dtool_Ns0bPnmI 0 6 664 3638 0 14 Dtool_Ns0bPnmI 229 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::Copy Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3638 4 copy 1 3621
769 14 Dtool_Ns0bPNos 0 6 664 3638 0 14 Dtool_Ns0bPNos 223 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::Copy Fill Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3638 10 fill_value 1 3577
770 14 Dtool_Ns0bNktD 0 6 665 3574 0 14 Dtool_Ns0bNktD 0 2 4 this 3 3639 9 attr_name 1 3576
771 14 Dtool_Ns0bdv9X 0 6 666 3577 0 14 Dtool_Ns0bdv9X 0 4 4 this 3 3638 4 self 1 3574 9 attr_name 1 3576 6 assign 1 3574
772 14 Dtool_Ns0bkOFu 0 6 667 3639 0 14 Dtool_Ns0bkOFu 256 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::zero Named Constructor
// Access: Public
// Description: Returns a zero-length point.
//////////////////////////////////////////////////////////////////// 0
773 14 Dtool_Ns0bDvu6 0 6 668 3639 0 14 Dtool_Ns0bDvu6 253 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X point.
//////////////////////////////////////////////////////////////////// 0
774 14 Dtool_Ns0bb_46 0 6 669 3639 0 14 Dtool_Ns0bb_46 253 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y point.
//////////////////////////////////////////////////////////////////// 0
775 14 Dtool_Ns0bTJC7 0 6 670 3639 0 14 Dtool_Ns0bTJC7 253 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::unit_z Named Constructor
// Access: Public
// Description: Returns a unit Z point.
//////////////////////////////////////////////////////////////////// 0
776 14 Dtool_Ns0bzC3s 0 7 671 3611 2304 14 Dtool_Ns0bzC3s 315 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::get_xy
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first two components of this vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3639
777 14 Dtool_Ns0brzAt 0 7 672 3611 2304 14 Dtool_Ns0brzAt 320 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::get_xz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// first and last components of this vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3639
778 14 Dtool_Ns0bNnAd 0 7 673 3611 2304 14 Dtool_Ns0bNnAd 314 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::get_yz
// Access: Public
// Description: Returns a 2-component vector that shares just the
// last two components of this vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3639
779 14 Dtool_Ns0bKsFL 0 7 674 3638 2684 14 Dtool_Ns0bKsFL 212 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::unary -
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3639
780 14 Dtool_Ns0b4tMq 0 7 675 3620 2458 14 Dtool_Ns0b4tMq 220 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::point + vecbase
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3639 5 other 1 3621
781 14 Dtool_Ns0b7_I_ 0 7 675 3638 2684 14 Dtool_Ns0b7_I_ 219 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::point + vector
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3639 5 other 1 3630
782 14 Dtool_Ns0bt36d 0 7 676 3629 2616 14 Dtool_Ns0bt36d 218 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::point - point
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3639 5 other 1 3639
783 14 Dtool_Ns0bH8Nq 0 7 676 3620 2458 14 Dtool_Ns0bH8Nq 220 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::point - vecbase
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3639 5 other 1 3621
784 14 Dtool_Ns0bwoJ_ 0 7 676 3638 2684 14 Dtool_Ns0bwoJ_ 219 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::point - vector
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3639 5 other 1 3630
785 14 Dtool_Ns0bV42r 0 7 677 3638 2684 14 Dtool_Ns0bV42r 210 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::cross
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3639 5 other 1 3621
786 14 Dtool_Ns0bwZZ4 0 7 678 3638 2684 14 Dtool_Ns0bwZZ4 222 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::operator * scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3639 6 scalar 1 3577
787 14 Dtool_Ns0beebY 0 7 679 3638 2684 14 Dtool_Ns0beebY 222 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::operator / scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3639 6 scalar 1 3577
788 14 Dtool_Ns0bUx98 0 6 680 3639 0 14 Dtool_Ns0bUx98 440 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::origin
// Access: Public, Static
// Description: 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 3529
789 14 Dtool_Ns0bOVE1 0 6 680 3639 0 14 Dtool_Ns0bOVE1 440 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::origin
// Access: Public, Static
// Description: 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.
//////////////////////////////////////////////////////////////////// 0
790 14 Dtool_Ns0bShPP 0 7 681 3638 2684 14 Dtool_Ns0bShPP 383 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::rfu
// Access: Public, Static
// Description: 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 3577 3 fwd 1 3577 2 up 1 3577 2 cs 1 3529
791 14 Dtool_Ns0brQFh 0 7 681 3638 2684 14 Dtool_Ns0brQFh 383 ////////////////////////////////////////////////////////////////////
// Function: LPoint3::rfu
// Access: Public, Static
// Description: Returns a point described by right, forward, up
// displacements from the origin, wherever that maps to
// in the given coordinate system.
//////////////////////////////////////////////////////////////////// 3 5 right 1 3577 3 fwd 1 3577 2 up 1 3577
792 14 Dtool_Ns0bDJMk 0 4 682 3573 0 14 Dtool_Ns0bDJMk 0 3 4 this 3 3639 3 out 1 3581 10 class_name 1 3576
793 14 Dtool_Ns0bpElJ 0 7 683 3588 0 14 Dtool_Ns0bpElJ 0 0
794 14 Dtool_Ns0b5kRY 0 7 686 3641 2695 14 Dtool_Ns0b5kRY 718 // Filename: lvecBase4_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Default Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 0
795 14 Dtool_Ns0b1zsc 0 7 686 3641 2695 14 Dtool_Ns0b1zsc 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 copy 1 3615 1 w 1 3571
796 14 Dtool_Ns0bdTtd 0 7 686 3641 2695 14 Dtool_Ns0bdTtd 226 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Copy Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3642
797 14 Dtool_Ns0baF0L 0 7 686 3641 2695 14 Dtool_Ns0baF0L 223 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Copy Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3644
798 14 Dtool_Ns0bity7 0 7 686 3641 2695 14 Dtool_Ns0bity7 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 10 fill_value 1 3571
799 14 Dtool_Ns0bDRvG 0 7 686 3641 2695 14 Dtool_Ns0bDRvG 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 4 1 x 1 3571 1 y 1 3571 1 z 1 3571 1 w 1 3571
800 14 Dtool_Ns0bXuCG 0 6 687 3641 0 14 Dtool_Ns0bXuCG 234 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Copy Assignment Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3641 4 copy 1 3642
801 14 Dtool_Ns0bURI0 0 6 687 3641 0 14 Dtool_Ns0bURI0 231 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Copy Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3641 4 copy 1 3644
802 14 Dtool_Ns0bGYHk 0 6 687 3641 0 14 Dtool_Ns0bGYHk 234 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Fill Assignment Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3641 10 fill_value 1 3571
803 14 Dtool_Ns0bYOHd 0 4 688 3573 0 14 Dtool_Ns0bYOHd 0 2 4 this 3 3641 4 size 1 3572
804 14 Dtool_Ns0bmHPT 0 6 691 3642 0 14 Dtool_Ns0bmHPT 262 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::zero Named Constructor
// Access: Published
// Description: Returns a zero-length vector.
//////////////////////////////////////////////////////////////////// 0
805 14 Dtool_Ns0bxCF3 0 6 692 3642 0 14 Dtool_Ns0bxCF3 259 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::unit_x Named Constructor
// Access: Published
// Description: Returns a unit X vector.
//////////////////////////////////////////////////////////////////// 0
806 14 Dtool_Ns0bMdTT 0 6 693 3642 0 14 Dtool_Ns0bMdTT 259 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::unit_y Named Constructor
// Access: Published
// Description: Returns a unit Y vector.
//////////////////////////////////////////////////////////////////// 0
807 14 Dtool_Ns0bOdhv 0 6 694 3642 0 14 Dtool_Ns0bOdhv 259 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::unit_z Named Constructor
// Access: Published
// Description: Returns a unit Z vector.
//////////////////////////////////////////////////////////////////// 0
808 14 Dtool_Ns0b3C3a 0 6 695 3642 0 14 Dtool_Ns0b3C3a 259 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::unit_w Named Constructor
// Access: Published
// Description: Returns a unit W vector.
//////////////////////////////////////////////////////////////////// 0
809 14 Dtool_Ns0b2iko 0 6 697 3574 0 14 Dtool_Ns0b2iko 0 2 4 this 3 3642 4 self 1 3574
810 14 Dtool_Ns0b_QT_ 0 6 698 3574 0 14 Dtool_Ns0b_QT_ 0 2 4 this 3 3642 9 attr_name 1 3576
811 14 Dtool_Ns0buRI7 0 6 699 3577 0 14 Dtool_Ns0buRI7 0 4 4 this 3 3641 4 self 1 3574 9 attr_name 1 3576 6 assign 1 3574
812 14 Dtool_Ns0bBy34 0 4 700 3573 0 14 Dtool_Ns0bBy34 227 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Indexing Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3641 1 i 1 3577
813 14 Dtool_Ns0bTrrV 0 6 700 3571 0 14 Dtool_Ns0bTrrV 227 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Indexing Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3642 1 i 1 3577
814 14 Dtool_Ns0bWM5I 0 4 701 3573 0 14 Dtool_Ns0bWM5I 0 3 4 this 3 3641 1 i 1 3577 1 v 1 3571
815 14 Dtool_Ns0b3Z_8 0 6 702 3577 0 14 Dtool_Ns0b3Z_8 274 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::size
// Access: Published, Static
// Description: Returns 4: the number of components of a LVecBase4.
//////////////////////////////////////////////////////////////////// 0
816 14 Dtool_Ns0bx62D 0 6 703 3578 0 14 Dtool_Ns0bx62D 311 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::is_nan
// Access: Published
// Description: Returns true if any component of the vector is
// not-a-number, false otherwise.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3642
817 14 Dtool_Ns0bd_Pp 0 6 704 3571 0 14 Dtool_Ns0bd_Pp 218 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_cell
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3642 1 i 1 3577
818 14 Dtool_Ns0bJYvU 0 6 705 3571 0 14 Dtool_Ns0bJYvU 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_x
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3642
819 14 Dtool_Ns0bJ8oZ 0 6 706 3571 0 14 Dtool_Ns0bJ8oZ 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_y
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3642
820 14 Dtool_Ns0bJQge 0 6 707 3571 0 14 Dtool_Ns0bJQge 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_z
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3642
821 14 Dtool_Ns0bJE3P 0 6 708 3571 0 14 Dtool_Ns0bJE3P 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_w
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3642
822 14 Dtool_Ns0bAQHX 0 4 709 3573 0 14 Dtool_Ns0bAQHX 218 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set_cell
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3641 1 i 1 3577 5 value 1 3571
823 14 Dtool_Ns0bJuJp 0 4 710 3573 0 14 Dtool_Ns0bJuJp 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set_x
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3641 5 value 1 3571
824 14 Dtool_Ns0bJKCu 0 4 711 3573 0 14 Dtool_Ns0bJKCu 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set_y
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3641 5 value 1 3571
825 14 Dtool_Ns0bJW6y 0 4 712 3573 0 14 Dtool_Ns0bJW6y 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set_z
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3641 5 value 1 3571
826 14 Dtool_Ns0bJCRk 0 4 713 3573 0 14 Dtool_Ns0bJCRk 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set_w
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3641 5 value 1 3571
827 14 Dtool_Ns0bzyHW 0 4 714 3573 0 14 Dtool_Ns0bzyHW 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_to_cell
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3641 1 i 1 3577 5 value 1 3571
828 14 Dtool_Ns0bmmmn 0 4 715 3573 0 14 Dtool_Ns0bmmmn 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_x
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3641 5 value 1 3571
829 14 Dtool_Ns0bmCfs 0 4 716 3573 0 14 Dtool_Ns0bmCfs 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_y
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3641 5 value 1 3571
830 14 Dtool_Ns0bmuXx 0 4 717 3573 0 14 Dtool_Ns0bmuXx 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_z
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3641 5 value 1 3571
831 14 Dtool_Ns0bmaui 0 4 718 3573 0 14 Dtool_Ns0bmaui 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_w
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3641 5 value 1 3571
832 14 Dtool_Ns0bXRyH 0 4 719 3573 0 14 Dtool_Ns0bXRyH 401 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_data
// Access: Published
// Description: 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 3642
833 14 Dtool_Ns0b0F36 0 6 720 3577 0 14 Dtool_Ns0b0F36 280 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_num_components
// Access: Published
// Description: Returns the number of elements in the vector, four.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3642
834 14 Dtool_Ns0bW1HJ 0 4 721 3573 0 14 Dtool_Ns0bW1HJ 364 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::fill
// Access: Published
// Description: Sets each element of the vector to the indicated
// fill_value. This is particularly useful for
// initializing to zero.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3641 10 fill_value 1 3571
835 14 Dtool_Ns0b__rX 0 4 722 3573 0 14 Dtool_Ns0b__rX 213 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 5 4 this 3 3641 1 x 1 3571 1 y 1 3571 1 z 1 3571 1 w 1 3571
836 14 Dtool_Ns0b2052 0 6 723 3571 0 14 Dtool_Ns0b2052 213 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::dot
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3642 5 other 1 3642
837 14 Dtool_Ns0bxUcf 0 6 724 3571 0 14 Dtool_Ns0bxUcf 300 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::length_squared
// Access: Published
// Description: Returns the square of the vector's length, cheap and
// easy.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3642
838 14 Dtool_Ns0b0Yo_ 0 6 725 3571 0 14 Dtool_Ns0b0Yo_ 295 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::length
// Access: Published
// Description: Returns the length of the vector, by the Pythagorean
// theorem.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3642
839 14 Dtool_Ns0bSsCV 0 6 726 3578 0 14 Dtool_Ns0bSsCV 367 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::normalize
// Access: Published
// Description: Normalizes the vector in place. Returns true if the
// vector was normalized, false if it was a zero-length
// vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3641
840 14 Dtool_Ns0bMsWY 0 7 727 3641 2695 14 Dtool_Ns0bMsWY 390 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::project
// Access: Published
// Description: 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 3642 4 onto 1 3642
841 14 Dtool_Ns0bxlvx 0 6 728 3578 0 14 Dtool_Ns0bxlvx 518 // FLOATTYPE_IS_INT
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator <
// Access: Published
// Description: This performs a lexicographical comparison. It's of
// questionable mathematical meaning, but sometimes has
// a practical purpose for sorting unique vectors,
// especially in an STL container. Also see
// compare_to().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3642 5 other 1 3642
842 14 Dtool_Ns0bauYz 0 6 729 3578 0 14 Dtool_Ns0bauYz 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator ==
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3642 5 other 1 3642
843 14 Dtool_Ns0bmNAi 0 6 730 3578 0 14 Dtool_Ns0bmNAi 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator !=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3642 5 other 1 3642
844 14 Dtool_Ns0btXnx 0 6 731 3577 0 14 Dtool_Ns0btXnx 321 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::compare_to
// Access: Published
// Description: This flavor of compare_to uses a default threshold
// value based on the numeric type.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3642 5 other 1 3642
845 14 Dtool_Ns0bIZYW 0 6 731 3577 0 14 Dtool_Ns0bIZYW 504 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::compare_to
// Access: Published
// Description: 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 3642 5 other 1 3642 9 threshold 1 3571
846 14 Dtool_Ns0bdiZ0 0 6 732 3572 0 14 Dtool_Ns0bdiZ0 257 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3642
847 14 Dtool_Ns0bzn_6 0 6 732 3572 0 14 Dtool_Ns0bzn_6 257 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3642 9 threshold 1 3571
848 14 Dtool_Ns0br3PD 0 6 733 3572 0 14 Dtool_Ns0br3PD 257 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3642 4 hash 1 3572
849 14 Dtool_Ns0bNEBo 0 6 733 3572 0 14 Dtool_Ns0bNEBo 257 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3642 4 hash 1 3572 9 threshold 1 3571
850 14 Dtool_Ns0b1RZF 0 4 734 3573 0 14 Dtool_Ns0b1RZF 272 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::generate_hash
// Access: Published
// Description: Adds the vector to the indicated hash generator.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3642 7 hashgen 1 3579
851 14 Dtool_Ns0b9JVR 0 4 734 3573 0 14 Dtool_Ns0b9JVR 272 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::generate_hash
// Access: Published
// Description: Adds the vector to the indicated hash generator.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3642 7 hashgen 1 3579 9 threshold 1 3571
852 14 Dtool_Ns0bPOux 0 7 735 3641 2695 14 Dtool_Ns0bPOux 237 // FLOATTYPE_IS_INT
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::unary -
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3642
853 14 Dtool_Ns0bztwL 0 7 736 3641 2695 14 Dtool_Ns0bztwL 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::vector + vector
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3642 5 other 1 3642
854 14 Dtool_Ns0bzdSf 0 7 737 3641 2695 14 Dtool_Ns0bzdSf 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::vector - vector
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3642 5 other 1 3642
855 14 Dtool_Ns0breVF 0 7 738 3641 2695 14 Dtool_Ns0breVF 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::vector * scalar
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3642 6 scalar 1 3571
856 14 Dtool_Ns0br2J2 0 7 739 3641 2695 14 Dtool_Ns0br2J2 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::vector / scalar
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3642 6 scalar 1 3571
857 14 Dtool_Ns0btr3T 0 6 740 3641 0 14 Dtool_Ns0btr3T 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator +=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3641 5 other 1 3642
858 14 Dtool_Ns0btbZn 0 6 741 3641 0 14 Dtool_Ns0btbZn 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator -=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3641 5 other 1 3642
859 14 Dtool_Ns0b7ZPM 0 6 742 3641 0 14 Dtool_Ns0b7ZPM 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator *=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3641 6 scalar 1 3571
860 14 Dtool_Ns0b7hD9 0 6 743 3641 0 14 Dtool_Ns0b7hD9 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator /=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3641 6 scalar 1 3571
861 14 Dtool_Ns0bVJJO 0 7 744 3641 2695 14 Dtool_Ns0bVJJO 0 2 4 this 3 3642 8 exponent 1 3571
862 14 Dtool_Ns0bIr8N 0 6 745 3574 0 14 Dtool_Ns0bIr8N 0 3 4 this 3 3641 4 self 1 3574 8 exponent 1 3571
863 14 Dtool_Ns0bjRaJ 0 7 746 3641 2695 14 Dtool_Ns0bjRaJ 214 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::fmax
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3641 5 other 1 3642
864 14 Dtool_Ns0bBC7H 0 7 747 3641 2695 14 Dtool_Ns0bBC7H 214 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::fmin
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3641 5 other 1 3642
865 14 Dtool_Ns0byKzg 0 6 748 3578 0 14 Dtool_Ns0byKzg 342 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::almost_equal
// Access: Published
// Description: Returns true if two vectors are memberwise equal
// within a default tolerance based on the numeric type.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3642 5 other 1 3642
866 14 Dtool_Ns0b__lQ 0 6 748 3578 0 14 Dtool_Ns0b__lQ 318 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::almost_equal
// Access: Published
// Description: Returns true if two vectors are memberwise equal
// within a specified tolerance.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3642 5 other 1 3642 9 threshold 1 3571
867 14 Dtool_Ns0bQPcK 0 4 749 3573 0 14 Dtool_Ns0bQPcK 216 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::output
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3642 3 out 1 3581
868 14 Dtool_Ns0bFM3d 0 4 750 3573 0 14 Dtool_Ns0bFM3d 0 3 4 this 3 3642 3 out 1 3581 10 class_name 1 3576
869 14 Dtool_Ns0b3_B4 0 4 751 3573 0 14 Dtool_Ns0b3_B4 642 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::write_datagram_fixed
// Access: Published
// Description: 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 3642 11 destination 1 3583
870 14 Dtool_Ns0b3Ii0 0 4 752 3573 0 14 Dtool_Ns0b3Ii0 348 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::read_datagram_fixed
// Access: Published
// Description: Reads the vector from the Datagram using get_float32()
// or get_float64(). See write_datagram_fixed().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3641 6 source 1 3585
871 14 Dtool_Ns0bZM70 0 4 753 3573 0 14 Dtool_Ns0bZM70 464 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::write_datagram
// Access: Published
// Description: 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 3642 11 destination 1 3583
872 14 Dtool_Ns0bec8G 0 4 754 3573 0 14 Dtool_Ns0bec8G 280 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::read_datagram
// Access: Published
// Description: Reads the vector from the Datagram using get_stdfloat().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3641 6 source 1 3585
873 14 Dtool_Ns0bhKuD 0 7 755 3588 0 14 Dtool_Ns0bhKuD 0 0
874 14 Dtool_Ns0bfbHX 0 7 757 3646 2764 14 Dtool_Ns0bfbHX 235 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Default Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 0
875 14 Dtool_Ns0bVhK6 0 7 757 3646 2764 14 Dtool_Ns0bVhK6 232 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Copy Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3642
876 14 Dtool_Ns0bgd2S 0 7 757 3646 2764 14 Dtool_Ns0bgd2S 232 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Copy Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3644
877 14 Dtool_Ns0bl_vc 0 7 757 3646 2764 14 Dtool_Ns0bl_vc 227 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 4 1 x 1 3571 1 y 1 3571 1 z 1 3571 1 w 1 3571
878 14 Dtool_Ns0beh2_ 0 6 758 3646 0 14 Dtool_Ns0beh2_ 240 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Copy Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3646 4 copy 1 3642
879 14 Dtool_Ns0bL5oF 0 6 758 3646 0 14 Dtool_Ns0bL5oF 240 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Copy Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3646 4 copy 1 3644
880 14 Dtool_Ns0bDDFq 0 4 759 3573 0 14 Dtool_Ns0bDDFq 222 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::set
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 5 4 this 3 3646 1 x 1 3571 1 y 1 3571 1 z 1 3571 1 w 1 3571
881 14 Dtool_Ns0b_xRe 0 4 760 3573 0 14 Dtool_Ns0b_xRe 233 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Indexing Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3646 1 i 1 3577
882 14 Dtool_Ns0b2P3h 0 6 760 3571 0 14 Dtool_Ns0b2P3h 233 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Indexing Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3644 1 i 1 3577
883 14 Dtool_Ns0bU4PA 0 4 761 3573 0 14 Dtool_Ns0bU4PA 0 3 4 this 3 3646 1 i 1 3577 1 v 1 3571
884 14 Dtool_Ns0btqyW 0 6 762 3577 0 14 Dtool_Ns0btqyW 280 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::size
// Access: Public, Static
// Description: Returns 4: the number of components of a LVecBase4.
//////////////////////////////////////////////////////////////////// 0
885 14 Dtool_Ns0b7GHI 0 4 763 3573 0 14 Dtool_Ns0b7GHI 408 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::get_data
// Access: Public
// Description: 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 3644
886 14 Dtool_Ns0bfmbG 0 6 764 3577 0 14 Dtool_Ns0bfmbG 283 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::get_num_components
// Access: Public
// Description: Returns the number of elements in the vector, 4.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3644
887 14 Dtool_Ns0bIBnP 0 7 765 3588 0 14 Dtool_Ns0bIBnP 0 0
888 14 Dtool_Ns0bfAuU 0 7 768 3647 2775 14 Dtool_Ns0bfAuU 718 // Filename: lvecBase4_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Default Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 0
889 14 Dtool_Ns0bqJxo 0 7 768 3647 2775 14 Dtool_Ns0bqJxo 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 copy 1 3618 1 w 1 3592
890 14 Dtool_Ns0bKfrW 0 7 768 3647 2775 14 Dtool_Ns0bKfrW 226 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Copy Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3648
891 14 Dtool_Ns0b6Q3P 0 7 768 3647 2775 14 Dtool_Ns0b6Q3P 223 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Copy Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3650
892 14 Dtool_Ns0b5BJ_ 0 7 768 3647 2775 14 Dtool_Ns0b5BJ_ 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 10 fill_value 1 3592
893 14 Dtool_Ns0bGENf 0 7 768 3647 2775 14 Dtool_Ns0bGENf 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 4 1 x 1 3592 1 y 1 3592 1 z 1 3592 1 w 1 3592
894 14 Dtool_Ns0be6iS 0 6 769 3647 0 14 Dtool_Ns0be6iS 234 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Copy Assignment Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3647 4 copy 1 3648
895 14 Dtool_Ns0by8tL 0 6 769 3647 0 14 Dtool_Ns0by8tL 231 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Copy Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3647 4 copy 1 3650
896 14 Dtool_Ns0bIM_5 0 6 769 3647 0 14 Dtool_Ns0bIM_5 234 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Fill Assignment Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3647 10 fill_value 1 3592
897 14 Dtool_Ns0b26Ht 0 4 770 3573 0 14 Dtool_Ns0b26Ht 0 2 4 this 3 3647 4 size 1 3572
898 14 Dtool_Ns0bYrPj 0 6 773 3648 0 14 Dtool_Ns0bYrPj 262 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::zero Named Constructor
// Access: Published
// Description: Returns a zero-length vector.
//////////////////////////////////////////////////////////////////// 0
899 14 Dtool_Ns0bQxFH 0 6 774 3648 0 14 Dtool_Ns0bQxFH 259 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::unit_x Named Constructor
// Access: Published
// Description: Returns a unit X vector.
//////////////////////////////////////////////////////////////////// 0
900 14 Dtool_Ns0bSxTj 0 6 775 3648 0 14 Dtool_Ns0bSxTj 259 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::unit_y Named Constructor
// Access: Published
// Description: Returns a unit Y vector.
//////////////////////////////////////////////////////////////////// 0
901 14 Dtool_Ns0bsxh_ 0 6 776 3648 0 14 Dtool_Ns0bsxh_ 259 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::unit_z Named Constructor
// Access: Published
// Description: Returns a unit Z vector.
//////////////////////////////////////////////////////////////////// 0
902 14 Dtool_Ns0bVx3q 0 6 777 3648 0 14 Dtool_Ns0bVx3q 259 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::unit_w Named Constructor
// Access: Published
// Description: Returns a unit W vector.
//////////////////////////////////////////////////////////////////// 0
903 14 Dtool_Ns0bQxk4 0 6 779 3574 0 14 Dtool_Ns0bQxk4 0 2 4 this 3 3648 4 self 1 3574
904 14 Dtool_Ns0bQeSO 0 6 780 3574 0 14 Dtool_Ns0bQeSO 0 2 4 this 3 3648 9 attr_name 1 3576
905 14 Dtool_Ns0bQMJL 0 6 781 3577 0 14 Dtool_Ns0bQMJL 0 4 4 this 3 3647 4 self 1 3574 9 attr_name 1 3576 6 assign 1 3574
906 14 Dtool_Ns0bmm3I 0 4 782 3573 0 14 Dtool_Ns0bmm3I 227 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Indexing Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3647 1 i 1 3577
907 14 Dtool_Ns0b1Hrl 0 6 782 3592 0 14 Dtool_Ns0b1Hrl 227 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Indexing Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3648 1 i 1 3577
908 14 Dtool_Ns0bglMR 0 4 783 3573 0 14 Dtool_Ns0bglMR 0 3 4 this 3 3647 1 i 1 3577 1 v 1 3592
909 14 Dtool_Ns0bWK_M 0 6 784 3577 0 14 Dtool_Ns0bWK_M 274 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::size
// Access: Published, Static
// Description: Returns 4: the number of components of a LVecBase4.
//////////////////////////////////////////////////////////////////// 0
910 14 Dtool_Ns0bPu2T 0 6 785 3578 0 14 Dtool_Ns0bPu2T 311 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::is_nan
// Access: Published
// Description: Returns true if any component of the vector is
// not-a-number, false otherwise.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3648
911 14 Dtool_Ns0b_qP5 0 6 786 3592 0 14 Dtool_Ns0b_qP5 218 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_cell
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3648 1 i 1 3577
912 14 Dtool_Ns0brtvk 0 6 787 3592 0 14 Dtool_Ns0brtvk 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_x
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3648
913 14 Dtool_Ns0brJop 0 6 788 3592 0 14 Dtool_Ns0brJop 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_y
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3648
914 14 Dtool_Ns0brlgu 0 6 789 3592 0 14 Dtool_Ns0brlgu 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_z
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3648
915 14 Dtool_Ns0brx3f 0 6 790 3592 0 14 Dtool_Ns0brx3f 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_w
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3648
916 14 Dtool_Ns0bf_AA 0 4 791 3573 0 14 Dtool_Ns0bf_AA 218 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set_cell
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3647 1 i 1 3577 5 value 1 3592
917 14 Dtool_Ns0bjGFc 0 4 792 3573 0 14 Dtool_Ns0bjGFc 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set_x
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3647 5 value 1 3592
918 14 Dtool_Ns0bji9g 0 4 793 3573 0 14 Dtool_Ns0bji9g 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set_y
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3647 5 value 1 3592
919 14 Dtool_Ns0bje2l 0 4 794 3573 0 14 Dtool_Ns0bje2l 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set_z
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3647 5 value 1 3592
920 14 Dtool_Ns0bjqMX 0 4 795 3573 0 14 Dtool_Ns0bjqMX 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set_w
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3647 5 value 1 3592
921 14 Dtool_Ns0bfMae 0 4 796 3573 0 14 Dtool_Ns0bfMae 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_to_cell
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3647 1 i 1 3577 5 value 1 3592
922 14 Dtool_Ns0bARia 0 4 797 3573 0 14 Dtool_Ns0bARia 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_x
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3647 5 value 1 3592
923 14 Dtool_Ns0bA1af 0 4 798 3573 0 14 Dtool_Ns0bA1af 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_y
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3647 5 value 1 3592
924 14 Dtool_Ns0bAZTk 0 4 799 3573 0 14 Dtool_Ns0bAZTk 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_z
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3647 5 value 1 3592
925 14 Dtool_Ns0bANqV 0 4 800 3573 0 14 Dtool_Ns0bANqV 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_w
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3647 5 value 1 3592
926 14 Dtool_Ns0bx8zX 0 4 801 3573 0 14 Dtool_Ns0bx8zX 401 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_data
// Access: Published
// Description: 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 3648
927 14 Dtool_Ns0bXx2K 0 6 802 3577 0 14 Dtool_Ns0bXx2K 280 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_num_components
// Access: Published
// Description: Returns the number of elements in the vector, four.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3648
928 14 Dtool_Ns0bFbMg 0 4 803 3573 0 14 Dtool_Ns0bFbMg 364 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::fill
// Access: Published
// Description: Sets each element of the vector to the indicated
// fill_value. This is particularly useful for
// initializing to zero.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3647 10 fill_value 1 3592
929 14 Dtool_Ns0bdT7O 0 4 804 3573 0 14 Dtool_Ns0bdT7O 213 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 5 4 this 3 3647 1 x 1 3592 1 y 1 3592 1 z 1 3592 1 w 1 3592
930 14 Dtool_Ns0bVfrF 0 6 805 3592 0 14 Dtool_Ns0bVfrF 213 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::dot
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3648 5 other 1 3648
931 14 Dtool_Ns0bTIcv 0 6 806 3592 0 14 Dtool_Ns0bTIcv 300 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::length_squared
// Access: Published
// Description: Returns the square of the vector's length, cheap and
// easy.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3648
932 14 Dtool_Ns0bVEoP 0 6 807 3592 0 14 Dtool_Ns0bVEoP 295 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::length
// Access: Published
// Description: Returns the length of the vector, by the Pythagorean
// theorem.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3648
933 14 Dtool_Ns0bwBCl 0 6 808 3578 0 14 Dtool_Ns0bwBCl 367 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::normalize
// Access: Published
// Description: Normalizes the vector in place. Returns true if the
// vector was normalized, false if it was a zero-length
// vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3647
934 14 Dtool_Ns0bO3Ro 0 7 809 3647 2775 14 Dtool_Ns0bO3Ro 390 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::project
// Access: Published
// Description: 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 3648 4 onto 1 3648
935 14 Dtool_Ns0bzfP_ 0 6 810 3578 0 14 Dtool_Ns0bzfP_ 518 // FLOATTYPE_IS_INT
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator <
// Access: Published
// Description: This performs a lexicographical comparison. It's of
// questionable mathematical meaning, but sometimes has
// a practical purpose for sorting unique vectors,
// especially in an STL container. Also see
// compare_to().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3648 5 other 1 3648
936 14 Dtool_Ns0beFYT 0 6 811 3578 0 14 Dtool_Ns0beFYT 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator ==
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3648 5 other 1 3648
937 14 Dtool_Ns0balAC 0 6 812 3578 0 14 Dtool_Ns0balAC 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator !=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3648 5 other 1 3648
938 14 Dtool_Ns0b0LH_ 0 6 813 3577 0 14 Dtool_Ns0b0LH_ 321 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::compare_to
// Access: Published
// Description: This flavor of compare_to uses a default threshold
// value based on the numeric type.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3648 5 other 1 3648
939 14 Dtool_Ns0b319I 0 6 813 3577 0 14 Dtool_Ns0b319I 504 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::compare_to
// Access: Published
// Description: 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 3648 5 other 1 3648 9 threshold 1 3592
940 14 Dtool_Ns0b8_ZE 0 6 814 3572 0 14 Dtool_Ns0b8_ZE 257 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3648
941 14 Dtool_Ns0bSwXj 0 6 814 3572 0 14 Dtool_Ns0bSwXj 257 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3648 9 threshold 1 3592
942 14 Dtool_Ns0bJoPT 0 6 815 3572 0 14 Dtool_Ns0bJoPT 257 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3648 4 hash 1 3572
943 14 Dtool_Ns0bXZGe 0 6 815 3572 0 14 Dtool_Ns0bXZGe 257 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3648 4 hash 1 3572 9 threshold 1 3592
944 14 Dtool_Ns0brlZV 0 4 816 3573 0 14 Dtool_Ns0brlZV 272 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::generate_hash
// Access: Published
// Description: Adds the vector to the indicated hash generator.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3648 7 hashgen 1 3579
945 14 Dtool_Ns0bMhf5 0 4 816 3573 0 14 Dtool_Ns0bMhf5 272 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::generate_hash
// Access: Published
// Description: Adds the vector to the indicated hash generator.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3648 7 hashgen 1 3579 9 threshold 1 3592
946 14 Dtool_Ns0bQyvB 0 7 817 3647 2775 14 Dtool_Ns0bQyvB 237 // FLOATTYPE_IS_INT
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::unary -
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3648
947 14 Dtool_Ns0btXQY 0 7 818 3647 2775 14 Dtool_Ns0btXQY 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::vector + vector
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3648 5 other 1 3648
948 14 Dtool_Ns0btnyr 0 7 819 3647 2775 14 Dtool_Ns0btnyr 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::vector - vector
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3648 5 other 1 3648
949 14 Dtool_Ns0bW_WY 0 7 820 3647 2775 14 Dtool_Ns0bW_WY 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::vector * scalar
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3648 6 scalar 1 3592
950 14 Dtool_Ns0bXWNJ 0 7 821 3647 2775 14 Dtool_Ns0bXWNJ 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::vector / scalar
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3648 6 scalar 1 3592
951 14 Dtool_Ns0bhw2z 0 6 822 3647 0 14 Dtool_Ns0bhw2z 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator +=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3647 5 other 1 3648
952 14 Dtool_Ns0biAYH 0 6 823 3647 0 14 Dtool_Ns0biAYH 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator -=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3647 5 other 1 3648
953 14 Dtool_Ns0b5DXY 0 6 824 3647 0 14 Dtool_Ns0b5DXY 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator *=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3647 6 scalar 1 3592
954 14 Dtool_Ns0b_7LJ 0 6 825 3647 0 14 Dtool_Ns0b_7LJ 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator /=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3647 6 scalar 1 3592
955 14 Dtool_Ns0bDO5y 0 7 826 3647 2775 14 Dtool_Ns0bDO5y 0 2 4 this 3 3648 8 exponent 1 3592
956 14 Dtool_Ns0bnpc1 0 6 827 3574 0 14 Dtool_Ns0bnpc1 0 3 4 this 3 3647 4 self 1 3574 8 exponent 1 3592
957 14 Dtool_Ns0b_0Xy 0 7 828 3647 2775 14 Dtool_Ns0b_0Xy 214 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::fmax
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3647 5 other 1 3648
958 14 Dtool_Ns0bdn2w 0 7 829 3647 2775 14 Dtool_Ns0bdn2w 214 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::fmin
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3647 5 other 1 3648
959 14 Dtool_Ns0bcoqw 0 6 830 3578 0 14 Dtool_Ns0bcoqw 342 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::almost_equal
// Access: Published
// Description: Returns true if two vectors are memberwise equal
// within a default tolerance based on the numeric type.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3648 5 other 1 3648
960 14 Dtool_Ns0b9ILB 0 6 830 3578 0 14 Dtool_Ns0b9ILB 318 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::almost_equal
// Access: Published
// Description: Returns true if two vectors are memberwise equal
// within a specified tolerance.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3648 5 other 1 3648 9 threshold 1 3592
961 14 Dtool_Ns0b1Bda 0 4 831 3573 0 14 Dtool_Ns0b1Bda 216 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::output
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3648 3 out 1 3581
962 14 Dtool_Ns0beB2t 0 4 832 3573 0 14 Dtool_Ns0beB2t 0 3 4 this 3 3648 3 out 1 3581 10 class_name 1 3576
963 14 Dtool_Ns0bQsBI 0 4 833 3573 0 14 Dtool_Ns0bQsBI 642 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::write_datagram_fixed
// Access: Published
// Description: 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 3648 11 destination 1 3583
964 14 Dtool_Ns0bUkiE 0 4 834 3573 0 14 Dtool_Ns0bUkiE 348 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::read_datagram_fixed
// Access: Published
// Description: Reads the vector from the Datagram using get_float32()
// or get_float64(). See write_datagram_fixed().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3647 6 source 1 3585
965 14 Dtool_Ns0bjJ6E 0 4 835 3573 0 14 Dtool_Ns0bjJ6E 464 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::write_datagram
// Access: Published
// Description: 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 3648 11 destination 1 3583
966 14 Dtool_Ns0b4P8W 0 4 836 3573 0 14 Dtool_Ns0b4P8W 280 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::read_datagram
// Access: Published
// Description: Reads the vector from the Datagram using get_stdfloat().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3647 6 source 1 3585
967 14 Dtool_Ns0bGAvT 0 7 837 3588 0 14 Dtool_Ns0bGAvT 0 0
968 14 Dtool_Ns0bj4zI 0 7 839 3652 2844 14 Dtool_Ns0bj4zI 235 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Default Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 0
969 14 Dtool_Ns0bKsyE 0 7 839 3652 2844 14 Dtool_Ns0bKsyE 232 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Copy Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3648
970 14 Dtool_Ns0b1Rq_ 0 7 839 3652 2844 14 Dtool_Ns0b1Rq_ 232 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Copy Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3650
971 14 Dtool_Ns0bKT22 0 7 839 3652 2844 14 Dtool_Ns0bKT22 227 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 4 1 x 1 3592 1 y 1 3592 1 z 1 3592 1 w 1 3592
972 14 Dtool_Ns0b5na5 0 6 840 3652 0 14 Dtool_Ns0b5na5 240 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Copy Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3652 4 copy 1 3648
973 14 Dtool_Ns0b0fkQ 0 6 840 3652 0 14 Dtool_Ns0b0fkQ 240 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Copy Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3652 4 copy 1 3650
974 14 Dtool_Ns0bB49g 0 4 841 3573 0 14 Dtool_Ns0bB49g 222 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::set
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 5 4 this 3 3652 1 x 1 3592 1 y 1 3592 1 z 1 3592 1 w 1 3592
975 14 Dtool_Ns0bT8QQ 0 4 842 3573 0 14 Dtool_Ns0bT8QQ 233 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Indexing Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3652 1 i 1 3577
976 14 Dtool_Ns0bSI3T 0 6 842 3592 0 14 Dtool_Ns0bSI3T 233 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Indexing Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3650 1 i 1 3577
977 14 Dtool_Ns0bsMSh 0 4 843 3573 0 14 Dtool_Ns0bsMSh 0 3 4 this 3 3652 1 i 1 3577 1 v 1 3592
978 14 Dtool_Ns0bYnzI 0 6 844 3577 0 14 Dtool_Ns0bYnzI 280 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::size
// Access: Public, Static
// Description: Returns 4: the number of components of a LVecBase4.
//////////////////////////////////////////////////////////////////// 0
979 14 Dtool_Ns0bY7H6 0 4 845 3573 0 14 Dtool_Ns0bY7H6 408 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::get_data
// Access: Public
// Description: 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 3650
980 14 Dtool_Ns0bihb4 0 6 846 3577 0 14 Dtool_Ns0bihb4 283 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::get_num_components
// Access: Public
// Description: Returns the number of elements in the vector, 4.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3650
981 14 Dtool_Ns0bkDnB 0 7 847 3588 0 14 Dtool_Ns0bkDnB 0 0
982 14 Dtool_Ns0bUNkd 0 7 850 3653 2855 14 Dtool_Ns0bUNkd 718 // Filename: lvecBase4_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Default Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 0
983 14 Dtool_Ns0bauLi 0 7 850 3653 2855 14 Dtool_Ns0bauLi 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 copy 1 3621 1 w 1 3577
984 14 Dtool_Ns0bTpRI 0 7 850 3653 2855 14 Dtool_Ns0bTpRI 226 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Copy Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3654
985 14 Dtool_Ns0b7tyl 0 7 850 3653 2855 14 Dtool_Ns0b7tyl 223 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Copy Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3656
986 14 Dtool_Ns0bqeHH 0 7 850 3653 2855 14 Dtool_Ns0bqeHH 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 10 fill_value 1 3577
987 14 Dtool_Ns0bdcHP 0 7 850 3653 2855 14 Dtool_Ns0bdcHP 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 4 1 x 1 3577 1 y 1 3577 1 z 1 3577 1 w 1 3577
988 14 Dtool_Ns0bz5UT 0 6 851 3653 0 14 Dtool_Ns0bz5UT 234 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Copy Assignment Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3653 4 copy 1 3654
989 14 Dtool_Ns0bgz0w 0 6 851 3653 0 14 Dtool_Ns0bgz0w 231 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Copy Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3653 4 copy 1 3656
990 14 Dtool_Ns0b4iIS 0 6 851 3653 0 14 Dtool_Ns0b4iIS 234 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Fill Assignment Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3653 10 fill_value 1 3577
991 14 Dtool_Ns0bMjJF 0 4 852 3573 0 14 Dtool_Ns0bMjJF 0 2 4 this 3 3653 4 size 1 3572
992 14 Dtool_Ns0bmER7 0 6 855 3654 0 14 Dtool_Ns0bmER7 262 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::zero Named Constructor
// Access: Published
// Description: Returns a zero-length vector.
//////////////////////////////////////////////////////////////////// 0
993 14 Dtool_Ns0bD2Hf 0 6 856 3654 0 14 Dtool_Ns0bD2Hf 259 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::unit_x Named Constructor
// Access: Published
// Description: Returns a unit X vector.
//////////////////////////////////////////////////////////////////// 0
994 14 Dtool_Ns0bB2V7 0 6 857 3654 0 14 Dtool_Ns0bB2V7 259 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::unit_y Named Constructor
// Access: Published
// Description: Returns a unit Y vector.
//////////////////////////////////////////////////////////////////// 0
995 14 Dtool_Ns0bG2jX 0 6 858 3654 0 14 Dtool_Ns0bG2jX 259 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::unit_z Named Constructor
// Access: Published
// Description: Returns a unit Z vector.
//////////////////////////////////////////////////////////////////// 0
996 14 Dtool_Ns0bd25C 0 6 859 3654 0 14 Dtool_Ns0bd25C 259 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::unit_w Named Constructor
// Access: Published
// Description: Returns a unit W vector.
//////////////////////////////////////////////////////////////////// 0
997 14 Dtool_Ns0brdlQ 0 6 861 3574 0 14 Dtool_Ns0brdlQ 0 2 4 this 3 3654 4 self 1 3574
998 14 Dtool_Ns0bWBUm 0 6 862 3574 0 14 Dtool_Ns0bWBUm 0 2 4 this 3 3654 9 attr_name 1 3576
999 14 Dtool_Ns0b2gJj 0 6 863 3577 0 14 Dtool_Ns0b2gJj 0 4 4 this 3 3653 4 self 1 3574 9 attr_name 1 3576 6 assign 1 3574
1000 14 Dtool_Ns0bcX4g 0 4 864 3573 0 14 Dtool_Ns0bcX4g 227 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Indexing Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3653 1 i 1 3577
1001 14 Dtool_Ns0bxos9 0 6 864 3577 0 14 Dtool_Ns0bxos9 227 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::Indexing Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3654 1 i 1 3577
1002 14 Dtool_Ns0b3gWx 0 4 865 3573 0 14 Dtool_Ns0b3gWx 0 3 4 this 3 3653 1 i 1 3577 1 v 1 3577
1003 14 Dtool_Ns0b06Al 0 6 866 3577 0 14 Dtool_Ns0b06Al 274 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::size
// Access: Published, Static
// Description: Returns 4: the number of components of a LVecBase4.
//////////////////////////////////////////////////////////////////// 0
1004 14 Dtool_Ns0bzf3r 0 6 867 3578 0 14 Dtool_Ns0bzf3r 311 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::is_nan
// Access: Published
// Description: Returns true if any component of the vector is
// not-a-number, false otherwise.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3654
1005 14 Dtool_Ns0bqdQR 0 6 868 3577 0 14 Dtool_Ns0bqdQR 218 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_cell
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3654 1 i 1 3577
1006 14 Dtool_Ns0bMJw8 0 6 869 3577 0 14 Dtool_Ns0bMJw8 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_x
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3654
1007 14 Dtool_Ns0bPloB 0 6 870 3577 0 14 Dtool_Ns0bPloB 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_y
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3654
1008 14 Dtool_Ns0bPBjG 0 6 871 3577 0 14 Dtool_Ns0bPBjG 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_z
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3654
1009 14 Dtool_Ns0bMt53 0 6 872 3577 0 14 Dtool_Ns0bMt53 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_w
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3654
1010 14 Dtool_Ns0bj8iW 0 4 873 3573 0 14 Dtool_Ns0bj8iW 218 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set_cell
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3653 1 i 1 3577 5 value 1 3577
1011 14 Dtool_Ns0bQVL0 0 4 874 3573 0 14 Dtool_Ns0bQVL0 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set_x
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3653 5 value 1 3577
1012 14 Dtool_Ns0bQxD5 0 4 875 3573 0 14 Dtool_Ns0bQxD5 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set_y
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3653 5 value 1 3577
1013 14 Dtool_Ns0bQd89 0 4 876 3573 0 14 Dtool_Ns0bQd89 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set_z
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3653 5 value 1 3577
1014 14 Dtool_Ns0bQJTv 0 4 877 3573 0 14 Dtool_Ns0bQJTv 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set_w
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3653 5 value 1 3577
1015 14 Dtool_Ns0baSk_ 0 4 878 3573 0 14 Dtool_Ns0baSk_ 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_to_cell
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3653 1 i 1 3577 5 value 1 3577
1016 14 Dtool_Ns0bvvoy 0 4 879 3573 0 14 Dtool_Ns0bvvoy 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_x
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3653 5 value 1 3577
1017 14 Dtool_Ns0bvLh3 0 4 880 3573 0 14 Dtool_Ns0bvLh3 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_y
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3653 5 value 1 3577
1018 14 Dtool_Ns0bvXZ8 0 4 881 3573 0 14 Dtool_Ns0bvXZ8 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_z
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3653 5 value 1 3577
1019 14 Dtool_Ns0bvDwt 0 4 882 3573 0 14 Dtool_Ns0bvDwt 215 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_w
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3653 5 value 1 3577
1020 14 Dtool_Ns0bJQ0v 0 4 883 3573 0 14 Dtool_Ns0bJQ0v 401 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_data
// Access: Published
// Description: 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 3654
1021 14 Dtool_Ns0bTa3i 0 6 884 3577 0 14 Dtool_Ns0bTa3i 280 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_num_components
// Access: Published
// Description: Returns the number of elements in the vector, four.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3654
1022 14 Dtool_Ns0baaPs 0 4 885 3573 0 14 Dtool_Ns0baaPs 364 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::fill
// Access: Published
// Description: Sets each element of the vector to the indicated
// fill_value. This is particularly useful for
// initializing to zero.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3653 10 fill_value 1 3577
1023 14 Dtool_Ns0bb_Ku 0 4 886 3573 0 14 Dtool_Ns0bb_Ku 213 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::set
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 5 4 this 3 3653 1 x 1 3577 1 y 1 3577 1 z 1 3577 1 w 1 3577
1024 14 Dtool_Ns0bOIvg 0 6 887 3577 0 14 Dtool_Ns0bOIvg 213 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::dot
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3654 5 other 1 3654
1025 14 Dtool_Ns0bHldH 0 6 888 3577 0 14 Dtool_Ns0bHldH 300 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::length_squared
// Access: Published
// Description: Returns the square of the vector's length, cheap and
// easy.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3654
1026 14 Dtool_Ns0bJtA_ 0 6 889 3578 0 14 Dtool_Ns0bJtA_ 498 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator <
// Access: Published
// Description: This performs a lexicographical comparison. It's of
// questionable mathematical meaning, but sometimes has
// a practical purpose for sorting unique vectors,
// especially in an STL container. Also see
// compare_to().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3654 5 other 1 3654
1027 14 Dtool_Ns0bOUaD 0 6 890 3578 0 14 Dtool_Ns0bOUaD 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator ==
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3654 5 other 1 3654
1028 14 Dtool_Ns0bD0Dy 0 6 891 3578 0 14 Dtool_Ns0bD0Dy 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator !=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3654 5 other 1 3654
1029 14 Dtool_Ns0bli4_ 0 6 892 3577 0 14 Dtool_Ns0bli4_ 321 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::compare_to
// Access: Published
// Description: This flavor of compare_to uses a default threshold
// value based on the numeric type.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3654 5 other 1 3654
1030 14 Dtool_Ns0bz9bc 0 6 893 3572 0 14 Dtool_Ns0bz9bc 257 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3654
1031 14 Dtool_Ns0bkLQr 0 6 894 3572 0 14 Dtool_Ns0bkLQr 257 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3654 4 hash 1 3572
1032 14 Dtool_Ns0buCat 0 4 895 3573 0 14 Dtool_Ns0buCat 272 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::generate_hash
// Access: Published
// Description: Adds the vector to the indicated hash generator.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3654 7 hashgen 1 3579
1033 14 Dtool_Ns0baJwZ 0 7 896 3653 2855 14 Dtool_Ns0baJwZ 217 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::unary -
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3654
1034 14 Dtool_Ns0b3lBZ 0 7 897 3653 2855 14 Dtool_Ns0b3lBZ 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::vector + vector
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3654 5 other 1 3654
1035 14 Dtool_Ns0b31js 0 7 898 3653 2855 14 Dtool_Ns0b31js 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::vector - vector
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3654 5 other 1 3654
1036 14 Dtool_Ns0bHEhp 0 7 899 3653 2855 14 Dtool_Ns0bHEhp 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::vector * scalar
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3654 6 scalar 1 3577
1037 14 Dtool_Ns0bG8Wa 0 7 900 3653 2855 14 Dtool_Ns0bG8Wa 225 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::vector / scalar
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3654 6 scalar 1 3577
1038 14 Dtool_Ns0b1q5j 0 6 901 3653 0 14 Dtool_Ns0b1q5j 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator +=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3653 5 other 1 3654
1039 14 Dtool_Ns0b1aa3 0 6 902 3653 0 14 Dtool_Ns0b1aa3 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator -=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3653 5 other 1 3654
1040 14 Dtool_Ns0bgcd0 0 6 903 3653 0 14 Dtool_Ns0bgcd0 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator *=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3653 6 scalar 1 3577
1041 14 Dtool_Ns0bh0Rl 0 6 904 3653 0 14 Dtool_Ns0bh0Rl 221 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::operator /=
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3653 6 scalar 1 3577
1042 14 Dtool_Ns0bAdXI 0 7 905 3653 2855 14 Dtool_Ns0bAdXI 0 2 4 this 3 3654 8 exponent 1 3577
1043 14 Dtool_Ns0bbMBO 0 6 906 3574 0 14 Dtool_Ns0bbMBO 0 3 4 this 3 3653 4 self 1 3574 8 exponent 1 3577
1044 14 Dtool_Ns0bpRAs 0 7 907 3653 2855 14 Dtool_Ns0bpRAs 214 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::fmax
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3653 5 other 1 3654
1045 14 Dtool_Ns0bLFhq 0 7 908 3653 2855 14 Dtool_Ns0bLFhq 214 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::fmin
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3653 5 other 1 3654
1046 14 Dtool_Ns0bBiDJ 0 6 909 3578 0 14 Dtool_Ns0bBiDJ 342 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::almost_equal
// Access: Published
// Description: Returns true if two vectors are memberwise equal
// within a default tolerance based on the numeric type.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3654 5 other 1 3654
1047 14 Dtool_Ns0bxq33 0 6 909 3578 0 14 Dtool_Ns0bxq33 318 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::almost_equal
// Access: Published
// Description: Returns true if two vectors are memberwise equal
// within a specified tolerance.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3654 5 other 1 3654 9 threshold 1 3577
1048 14 Dtool_Ns0bt6dy 0 4 910 3573 0 14 Dtool_Ns0bt6dy 216 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::output
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3654 3 out 1 3581
1049 14 Dtool_Ns0bT94F 0 4 911 3573 0 14 Dtool_Ns0bT94F 0 3 4 this 3 3654 3 out 1 3581 10 class_name 1 3576
1050 14 Dtool_Ns0bKZCg 0 4 912 3573 0 14 Dtool_Ns0bKZCg 642 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::write_datagram_fixed
// Access: Published
// Description: 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 3654 11 destination 1 3583
1051 14 Dtool_Ns0byLkc 0 4 913 3573 0 14 Dtool_Ns0byLkc 348 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::read_datagram_fixed
// Access: Published
// Description: Reads the vector from the Datagram using get_float32()
// or get_float64(). See write_datagram_fixed().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3653 6 source 1 3585
1052 14 Dtool_Ns0bH98c 0 4 914 3573 0 14 Dtool_Ns0bH98c 464 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::write_datagram
// Access: Published
// Description: 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 3654 11 destination 1 3583
1053 14 Dtool_Ns0bns9u 0 4 915 3573 0 14 Dtool_Ns0bns9u 280 ////////////////////////////////////////////////////////////////////
// Function: LVecBase4::read_datagram
// Access: Published
// Description: Reads the vector from the Datagram using get_stdfloat().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3653 6 source 1 3585
1054 14 Dtool_Ns0b09vr 0 7 916 3588 0 14 Dtool_Ns0b09vr 0 0
1055 14 Dtool_Ns0bN2ks 0 7 918 3658 2921 14 Dtool_Ns0bN2ks 235 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Default Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 0
1056 14 Dtool_Ns0bRANK 0 7 918 3658 2921 14 Dtool_Ns0bRANK 232 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Copy Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3654
1057 14 Dtool_Ns0bidov 0 7 918 3658 2921 14 Dtool_Ns0bidov 232 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Copy Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3656
1058 14 Dtool_Ns0bdkQA 0 7 918 3658 2921 14 Dtool_Ns0bdkQA 227 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 4 1 x 1 3577 1 y 1 3577 1 z 1 3577 1 w 1 3577
1059 14 Dtool_Ns0b1vhp 0 6 919 3658 0 14 Dtool_Ns0b1vhp 240 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Copy Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3658 4 copy 1 3654
1060 14 Dtool_Ns0b8VMV 0 6 919 3658 0 14 Dtool_Ns0b8VMV 240 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Copy Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3658 4 copy 1 3656
1061 14 Dtool_Ns0b8b3k 0 4 920 3573 0 14 Dtool_Ns0b8b3k 222 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::set
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 5 4 this 3 3658 1 x 1 3577 1 y 1 3577 1 z 1 3577 1 w 1 3577
1062 14 Dtool_Ns0bU0Rz 0 4 921 3573 0 14 Dtool_Ns0bU0Rz 233 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Indexing Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3658 1 i 1 3577
1063 14 Dtool_Ns0bcC32 0 6 921 3577 0 14 Dtool_Ns0bcC32 233 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::Indexing Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3656 1 i 1 3577
1064 14 Dtool_Ns0beaUF 0 4 922 3573 0 14 Dtool_Ns0beaUF 0 3 4 this 3 3658 1 i 1 3577 1 v 1 3577
1065 14 Dtool_Ns0bXvyr 0 6 923 3577 0 14 Dtool_Ns0bXvyr 280 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::size
// Access: Public, Static
// Description: Returns 4: the number of components of a LVecBase4.
//////////////////////////////////////////////////////////////////// 0
1066 14 Dtool_Ns0bBFHd 0 4 924 3573 0 14 Dtool_Ns0bBFHd 408 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::get_data
// Access: Public
// Description: 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 3656
1067 14 Dtool_Ns0bl7bb 0 6 925 3577 0 14 Dtool_Ns0bl7bb 283 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLVecBase4::get_num_components
// Access: Public
// Description: Returns the number of elements in the vector, 4.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3656
1068 14 Dtool_Ns0beNnk 0 7 926 3588 0 14 Dtool_Ns0beNnk 0 0
1069 14 Dtool_Ns0b2hGZ 0 7 929 3659 2939 14 Dtool_Ns0b2hGZ 713 // Filename: lvector4_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector4::Default Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 0
1070 14 Dtool_Ns0bMmmu 0 7 929 3659 2939 14 Dtool_Ns0bMmmu 220 ////////////////////////////////////////////////////////////////////
// Function: LVector4::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 copy 1 3615 1 w 1 3571
1071 14 Dtool_Ns0b55R7 0 7 929 3659 2939 14 Dtool_Ns0b55R7 222 ////////////////////////////////////////////////////////////////////
// Function: LVector4::Copy Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3642
1072 14 Dtool_Ns0bIgP3 0 7 929 3659 2939 14 Dtool_Ns0bIgP3 217 ////////////////////////////////////////////////////////////////////
// Function: LVector4::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 10 fill_value 1 3571
1073 14 Dtool_Ns0bGLX9 0 7 929 3659 2939 14 Dtool_Ns0bGLX9 217 ////////////////////////////////////////////////////////////////////
// Function: LVector4::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 4 1 x 1 3571 1 y 1 3571 1 z 1 3571 1 w 1 3571
1074 14 Dtool_Ns0bq2Ys 0 6 930 3659 0 14 Dtool_Ns0bq2Ys 230 ////////////////////////////////////////////////////////////////////
// Function: LVector4::Copy Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3659 4 copy 1 3642
1075 14 Dtool_Ns0bRfUr 0 6 930 3659 0 14 Dtool_Ns0bRfUr 224 ////////////////////////////////////////////////////////////////////
// Function: LVector4::Copy Fill Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3659 10 fill_value 1 3571
1076 14 Dtool_Ns0bu3EG 0 6 931 3574 0 14 Dtool_Ns0bu3EG 0 2 4 this 3 3660 9 attr_name 1 3576
1077 14 Dtool_Ns0boq7P 0 6 932 3577 0 14 Dtool_Ns0boq7P 0 4 4 this 3 3659 4 self 1 3574 9 attr_name 1 3576 6 assign 1 3574
1078 14 Dtool_Ns0bPC0O 0 6 933 3660 0 14 Dtool_Ns0bPC0O 258 ////////////////////////////////////////////////////////////////////
// Function: LVector4::zero Named Constructor
// Access: Public
// Description: Returns a zero-length vector.
//////////////////////////////////////////////////////////////////// 0
1079 14 Dtool_Ns0bxI8j 0 6 934 3660 0 14 Dtool_Ns0bxI8j 255 ////////////////////////////////////////////////////////////////////
// Function: LVector4::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X vector.
//////////////////////////////////////////////////////////////////// 0
1080 14 Dtool_Ns0bxk1o 0 6 935 3660 0 14 Dtool_Ns0bxk1o 255 ////////////////////////////////////////////////////////////////////
// Function: LVector4::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y vector.
//////////////////////////////////////////////////////////////////// 0
1081 14 Dtool_Ns0bxAtt 0 6 936 3660 0 14 Dtool_Ns0bxAtt 255 ////////////////////////////////////////////////////////////////////
// Function: LVector4::unit_z Named Constructor
// Access: Public
// Description: Returns a unit Z vector.
//////////////////////////////////////////////////////////////////// 0
1082 14 Dtool_Ns0bxsEf 0 6 937 3660 0 14 Dtool_Ns0bxsEf 255 ////////////////////////////////////////////////////////////////////
// Function: LVector4::unit_w Named Constructor
// Access: Public
// Description: Returns a unit W vector.
//////////////////////////////////////////////////////////////////// 0
1083 14 Dtool_Ns0bWMwv 0 7 938 3659 2939 14 Dtool_Ns0bWMwv 213 ////////////////////////////////////////////////////////////////////
// Function: LVector4::unary -
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3660
1084 14 Dtool_Ns0bWUig 0 7 939 3641 2695 14 Dtool_Ns0bWUig 222 ////////////////////////////////////////////////////////////////////
// Function: LVector4::vector + vecbase
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3660 5 other 1 3642
1085 14 Dtool_Ns0bOmWu 0 7 939 3659 2939 14 Dtool_Ns0bOmWu 221 ////////////////////////////////////////////////////////////////////
// Function: LVector4::vector + vector
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3660 5 other 1 3660
1086 14 Dtool_Ns0b2RJh 0 7 940 3641 2695 14 Dtool_Ns0b2RJh 222 ////////////////////////////////////////////////////////////////////
// Function: LVector4::vector - vecbase
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3660 5 other 1 3642
1087 14 Dtool_Ns0buj9u 0 7 940 3659 2939 14 Dtool_Ns0buj9u 221 ////////////////////////////////////////////////////////////////////
// Function: LVector4::vector - vector
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3660 5 other 1 3660
1088 14 Dtool_Ns0bTPWC 0 7 941 3659 2939 14 Dtool_Ns0bTPWC 223 ////////////////////////////////////////////////////////////////////
// Function: LVector4::operator * scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3660 6 scalar 1 3571
1089 14 Dtool_Ns0bjn4D 0 7 942 3659 2939 14 Dtool_Ns0bjn4D 223 ////////////////////////////////////////////////////////////////////
// Function: LVector4::operator / scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3660 6 scalar 1 3571
1090 14 Dtool_Ns0bGh8I 0 7 943 3659 2939 14 Dtool_Ns0bGh8I 389 ////////////////////////////////////////////////////////////////////
// Function: LVector4::project
// Access: Published
// Description: 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 3660 4 onto 1 3642
1091 14 Dtool_Ns0beACX 0 4 944 3573 0 14 Dtool_Ns0beACX 0 3 4 this 3 3660 3 out 1 3581 10 class_name 1 3576
1092 14 Dtool_Ns0bvYTA 0 7 945 3588 0 14 Dtool_Ns0bvYTA 0 0
1093 14 Dtool_Ns0bSTkV 0 7 948 3662 2957 14 Dtool_Ns0bSTkV 713 // Filename: lvector4_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector4::Default Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 0
1094 14 Dtool_Ns0bZALA 0 7 948 3662 2957 14 Dtool_Ns0bZALA 220 ////////////////////////////////////////////////////////////////////
// Function: LVector4::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 copy 1 3618 1 w 1 3592
1095 14 Dtool_Ns0brcU1 0 7 948 3662 2957 14 Dtool_Ns0brcU1 222 ////////////////////////////////////////////////////////////////////
// Function: LVector4::Copy Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3648
1096 14 Dtool_Ns0b8AKA 0 7 948 3662 2957 14 Dtool_Ns0b8AKA 217 ////////////////////////////////////////////////////////////////////
// Function: LVector4::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 10 fill_value 1 3592
1097 14 Dtool_Ns0b72XI 0 7 948 3662 2957 14 Dtool_Ns0b72XI 217 ////////////////////////////////////////////////////////////////////
// Function: LVector4::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 4 1 x 1 3592 1 y 1 3592 1 z 1 3592 1 w 1 3592
1098 14 Dtool_Ns0by3xa 0 6 949 3662 0 14 Dtool_Ns0by3xa 230 ////////////////////////////////////////////////////////////////////
// Function: LVector4::Copy Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3662 4 copy 1 3648
1099 14 Dtool_Ns0bp_A2 0 6 949 3662 0 14 Dtool_Ns0bp_A2 224 ////////////////////////////////////////////////////////////////////
// Function: LVector4::Copy Fill Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3662 10 fill_value 1 3592
1100 14 Dtool_Ns0bJ0kC 0 6 950 3574 0 14 Dtool_Ns0bJ0kC 0 2 4 this 3 3663 9 attr_name 1 3576
1101 14 Dtool_Ns0bxrbM 0 6 951 3577 0 14 Dtool_Ns0bxrbM 0 4 4 this 3 3662 4 self 1 3574 9 attr_name 1 3576 6 assign 1 3574
1102 14 Dtool_Ns0b2FUL 0 6 952 3663 0 14 Dtool_Ns0b2FUL 258 ////////////////////////////////////////////////////////////////////
// Function: LVector4::zero Named Constructor
// Access: Public
// Description: Returns a zero-length vector.
//////////////////////////////////////////////////////////////////// 0
1103 14 Dtool_Ns0boXcg 0 6 953 3663 0 14 Dtool_Ns0boXcg 255 ////////////////////////////////////////////////////////////////////
// Function: LVector4::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X vector.
//////////////////////////////////////////////////////////////////// 0
1104 14 Dtool_Ns0bo7Vl 0 6 954 3663 0 14 Dtool_Ns0bo7Vl 255 ////////////////////////////////////////////////////////////////////
// Function: LVector4::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y vector.
//////////////////////////////////////////////////////////////////// 0
1105 14 Dtool_Ns0bofNq 0 6 955 3663 0 14 Dtool_Ns0bofNq 255 ////////////////////////////////////////////////////////////////////
// Function: LVector4::unit_z Named Constructor
// Access: Public
// Description: Returns a unit Z vector.
//////////////////////////////////////////////////////////////////// 0
1106 14 Dtool_Ns0bozkb 0 6 956 3663 0 14 Dtool_Ns0bozkb 255 ////////////////////////////////////////////////////////////////////
// Function: LVector4::unit_w Named Constructor
// Access: Public
// Description: Returns a unit W vector.
//////////////////////////////////////////////////////////////////// 0
1107 14 Dtool_Ns0bPNQs 0 7 957 3662 2957 14 Dtool_Ns0bPNQs 213 ////////////////////////////////////////////////////////////////////
// Function: LVector4::unary -
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3663
1108 14 Dtool_Ns0buV7O 0 7 958 3647 2775 14 Dtool_Ns0buV7O 222 ////////////////////////////////////////////////////////////////////
// Function: LVector4::vector + vecbase
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3663 5 other 1 3648
1109 14 Dtool_Ns0bh1ao 0 7 958 3662 2957 14 Dtool_Ns0bh1ao 221 ////////////////////////////////////////////////////////////////////
// Function: LVector4::vector + vector
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3663 5 other 1 3663
1110 14 Dtool_Ns0bOQiP 0 7 959 3647 2775 14 Dtool_Ns0bOQiP 222 ////////////////////////////////////////////////////////////////////
// Function: LVector4::vector - vecbase
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3663 5 other 1 3648
1111 14 Dtool_Ns0bBwBp 0 7 959 3662 2957 14 Dtool_Ns0bBwBp 221 ////////////////////////////////////////////////////////////////////
// Function: LVector4::vector - vector
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3663 5 other 1 3663
1112 14 Dtool_Ns0b9Z8K 0 7 960 3662 2957 14 Dtool_Ns0b9Z8K 223 ////////////////////////////////////////////////////////////////////
// Function: LVector4::operator * scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3663 6 scalar 1 3592
1113 14 Dtool_Ns0btwdM 0 7 961 3662 2957 14 Dtool_Ns0btwdM 223 ////////////////////////////////////////////////////////////////////
// Function: LVector4::operator / scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3663 6 scalar 1 3592
1114 14 Dtool_Ns0b1mdN 0 7 962 3662 2957 14 Dtool_Ns0b1mdN 389 ////////////////////////////////////////////////////////////////////
// Function: LVector4::project
// Access: Published
// Description: 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 3663 4 onto 1 3648
1115 14 Dtool_Ns0bxDiT 0 4 963 3573 0 14 Dtool_Ns0bxDiT 0 3 4 this 3 3663 3 out 1 3581 10 class_name 1 3576
1116 14 Dtool_Ns0bHZz8 0 7 964 3588 0 14 Dtool_Ns0bHZz8 0 0
1117 14 Dtool_Ns0bmVXe 0 7 967 3665 2974 14 Dtool_Ns0bmVXe 713 // Filename: lvector4_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LVector4::Default Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 0
1118 14 Dtool_Ns0bHRmP 0 7 967 3665 2974 14 Dtool_Ns0bHRmP 220 ////////////////////////////////////////////////////////////////////
// Function: LVector4::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 copy 1 3621 1 w 1 3577
1119 14 Dtool_Ns0b_CME 0 7 967 3665 2974 14 Dtool_Ns0b_CME 222 ////////////////////////////////////////////////////////////////////
// Function: LVector4::Copy Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3654
1120 14 Dtool_Ns0bB_No 0 7 967 3665 2974 14 Dtool_Ns0bB_No 217 ////////////////////////////////////////////////////////////////////
// Function: LVector4::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 10 fill_value 1 3577
1121 14 Dtool_Ns0bxpif 0 7 967 3665 2974 14 Dtool_Ns0bxpif 217 ////////////////////////////////////////////////////////////////////
// Function: LVector4::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 4 1 x 1 3577 1 y 1 3577 1 z 1 3577 1 w 1 3577
1122 14 Dtool_Ns0bVWyG 0 6 968 3665 0 14 Dtool_Ns0bVWyG 230 ////////////////////////////////////////////////////////////////////
// Function: LVector4::Copy Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3665 4 copy 1 3654
1123 14 Dtool_Ns0b6exG 0 6 968 3665 0 14 Dtool_Ns0b6exG 224 ////////////////////////////////////////////////////////////////////
// Function: LVector4::Copy Fill Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3665 10 fill_value 1 3577
1124 14 Dtool_Ns0bo2Ur 0 6 969 3574 0 14 Dtool_Ns0bo2Ur 0 2 4 this 3 3666 9 attr_name 1 3576
1125 14 Dtool_Ns0bWpL1 0 6 970 3577 0 14 Dtool_Ns0bWpL1 0 4 4 this 3 3665 4 self 1 3574 9 attr_name 1 3576 6 assign 1 3574
1126 14 Dtool_Ns0bRDE0 0 6 971 3666 0 14 Dtool_Ns0bRDE0 258 ////////////////////////////////////////////////////////////////////
// Function: LVector4::zero Named Constructor
// Access: Public
// Description: Returns a zero-length vector.
//////////////////////////////////////////////////////////////////// 0
1127 14 Dtool_Ns0bOIMJ 0 6 972 3666 0 14 Dtool_Ns0bOIMJ 255 ////////////////////////////////////////////////////////////////////
// Function: LVector4::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X vector.
//////////////////////////////////////////////////////////////////// 0
1128 14 Dtool_Ns0bOkFO 0 6 973 3666 0 14 Dtool_Ns0bOkFO 255 ////////////////////////////////////////////////////////////////////
// Function: LVector4::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y vector.
//////////////////////////////////////////////////////////////////// 0
1129 14 Dtool_Ns0bOA9S 0 6 974 3666 0 14 Dtool_Ns0bOA9S 255 ////////////////////////////////////////////////////////////////////
// Function: LVector4::unit_z Named Constructor
// Access: Public
// Description: Returns a unit Z vector.
//////////////////////////////////////////////////////////////////// 0
1130 14 Dtool_Ns0bOsUE 0 6 975 3666 0 14 Dtool_Ns0bOsUE 255 ////////////////////////////////////////////////////////////////////
// Function: LVector4::unit_w Named Constructor
// Access: Public
// Description: Returns a unit W vector.
//////////////////////////////////////////////////////////////////// 0
1131 14 Dtool_Ns0bRPAV 0 7 976 3665 2974 14 Dtool_Ns0bRPAV 213 ////////////////////////////////////////////////////////////////////
// Function: LVector4::unary -
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3666
1132 14 Dtool_Ns0bK796 0 7 977 3653 2855 14 Dtool_Ns0bK796 222 ////////////////////////////////////////////////////////////////////
// Function: LVector4::vector + vecbase
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3666 5 other 1 3654
1133 14 Dtool_Ns0bDuRX 0 7 977 3665 2974 14 Dtool_Ns0bDuRX 221 ////////////////////////////////////////////////////////////////////
// Function: LVector4::vector + vector
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3666 5 other 1 3666
1134 14 Dtool_Ns0bq_k7 0 7 978 3653 2855 14 Dtool_Ns0bq_k7 222 ////////////////////////////////////////////////////////////////////
// Function: LVector4::vector - vecbase
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3666 5 other 1 3654
1135 14 Dtool_Ns0bjx2X 0 7 978 3665 2974 14 Dtool_Ns0bjx2X 221 ////////////////////////////////////////////////////////////////////
// Function: LVector4::vector - vector
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3666 5 other 1 3666
1136 14 Dtool_Ns0b8wf_ 0 7 979 3665 2974 14 Dtool_Ns0b8wf_ 223 ////////////////////////////////////////////////////////////////////
// Function: LVector4::operator * scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3666 6 scalar 1 3577
1137 14 Dtool_Ns0bNoBB 0 7 980 3665 2974 14 Dtool_Ns0bNoBB 223 ////////////////////////////////////////////////////////////////////
// Function: LVector4::operator / scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3666 6 scalar 1 3577
1138 14 Dtool_Ns0bQBS8 0 4 981 3573 0 14 Dtool_Ns0bQBS8 0 3 4 this 3 3666 3 out 1 3581 10 class_name 1 3576
1139 14 Dtool_Ns0blfjl 0 7 982 3588 0 14 Dtool_Ns0blfjl 0 0
1140 14 Dtool_Ns0bzUXk 0 7 985 3668 2992 14 Dtool_Ns0bzUXk 711 // Filename: lpoint4_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint4::Default Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 0
1141 14 Dtool_Ns0b9aCs 0 7 985 3668 2992 14 Dtool_Ns0b9aCs 219 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 copy 1 3615 1 w 1 3571
1142 14 Dtool_Ns0bSD57 0 7 985 3668 2992 14 Dtool_Ns0bSD57 221 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::Copy Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3642
1143 14 Dtool_Ns0bCj8c 0 7 985 3668 2992 14 Dtool_Ns0bCj8c 216 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 10 fill_value 1 3571
1144 14 Dtool_Ns0bzr8M 0 7 985 3668 2992 14 Dtool_Ns0bzr8M 216 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 4 1 x 1 3571 1 y 1 3571 1 z 1 3571 1 w 1 3571
1145 14 Dtool_Ns0bbZBR 0 6 986 3668 0 14 Dtool_Ns0bbZBR 229 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::Copy Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3668 4 copy 1 3642
1146 14 Dtool_Ns0bqdAN 0 6 986 3668 0 14 Dtool_Ns0bqdAN 223 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::Copy Fill Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3668 10 fill_value 1 3571
1147 14 Dtool_Ns0bPNxP 0 6 987 3574 0 14 Dtool_Ns0bPNxP 0 2 4 this 3 3669 9 attr_name 1 3576
1148 14 Dtool_Ns0bbWBk 0 6 988 3577 0 14 Dtool_Ns0bbWBk 0 4 4 this 3 3668 4 self 1 3574 9 attr_name 1 3576 6 assign 1 3574
1149 14 Dtool_Ns0bq1J6 0 6 989 3669 0 14 Dtool_Ns0bq1J6 256 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::zero Named Constructor
// Access: Public
// Description: Returns a zero-length point.
//////////////////////////////////////////////////////////////////// 0
1150 14 Dtool_Ns0bC0yG 0 6 990 3669 0 14 Dtool_Ns0bC0yG 253 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X point.
//////////////////////////////////////////////////////////////////// 0
1151 14 Dtool_Ns0baH8G 0 6 991 3669 0 14 Dtool_Ns0baH8G 253 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y point.
//////////////////////////////////////////////////////////////////// 0
1152 14 Dtool_Ns0bSWGH 0 6 992 3669 0 14 Dtool_Ns0bSWGH 253 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::unit_z Named Constructor
// Access: Public
// Description: Returns a unit Z point.
//////////////////////////////////////////////////////////////////// 0
1153 14 Dtool_Ns0bKloG 0 6 993 3669 0 14 Dtool_Ns0bKloG 253 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::unit_w Named Constructor
// Access: Public
// Description: Returns a unit W point.
//////////////////////////////////////////////////////////////////// 0
1154 14 Dtool_Ns0b0LJX 0 7 994 3668 2992 14 Dtool_Ns0b0LJX 212 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::unary -
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3669
1155 14 Dtool_Ns0bIcoy 0 7 995 3641 2695 14 Dtool_Ns0bIcoy 220 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::point + vecbase
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3669 5 other 1 3642
1156 14 Dtool_Ns0bopEn 0 7 995 3668 2992 14 Dtool_Ns0bopEn 219 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::point + vector
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3669 5 other 1 3660
1157 14 Dtool_Ns0bMM2G 0 7 996 3659 2939 14 Dtool_Ns0bMM2G 218 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::point - point
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3669 5 other 1 3669
1158 14 Dtool_Ns0bTupy 0 7 996 3641 2695 14 Dtool_Ns0bTupy 220 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::point - vecbase
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3669 5 other 1 3642
1159 14 Dtool_Ns0bXbFn 0 7 996 3668 2992 14 Dtool_Ns0bXbFn 219 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::point - vector
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3669 5 other 1 3660
1160 14 Dtool_Ns0bUdt9 0 7 997 3668 2992 14 Dtool_Ns0bUdt9 222 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::operator * scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3669 6 scalar 1 3571
1161 14 Dtool_Ns0brXwd 0 7 998 3668 2992 14 Dtool_Ns0brXwd 222 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::operator / scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3669 6 scalar 1 3571
1162 14 Dtool_Ns0bIt7R 0 7 999 3668 2992 14 Dtool_Ns0bIt7R 388 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::project
// Access: Published
// Description: 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 3669 4 onto 1 3642
1163 14 Dtool_Ns0bFwQw 0 4 1000 3573 0 14 Dtool_Ns0bFwQw 0 3 4 this 3 3669 3 out 1 3581 10 class_name 1 3576
1164 14 Dtool_Ns0bnbpV 0 7 1001 3588 0 14 Dtool_Ns0bnbpV 0 0
1165 14 Dtool_Ns0btU0d 0 7 1004 3671 3010 14 Dtool_Ns0btU0d 711 // Filename: lpoint4_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint4::Default Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 0
1166 14 Dtool_Ns0bzkRf 0 7 1004 3671 3010 14 Dtool_Ns0bzkRf 219 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 copy 1 3618 1 w 1 3592
1167 14 Dtool_Ns0bJZW9 0 7 1004 3671 3010 14 Dtool_Ns0bJZW9 221 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::Copy Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3648
1168 14 Dtool_Ns0b36e0 0 7 1004 3671 3010 14 Dtool_Ns0b36e0 216 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 10 fill_value 1 3592
1169 14 Dtool_Ns0bCpeG 0 7 1004 3671 3010 14 Dtool_Ns0bCpeG 216 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 4 1 x 1 3592 1 y 1 3592 1 z 1 3592 1 w 1 3592
1170 14 Dtool_Ns0bYHeA 0 6 1005 3671 0 14 Dtool_Ns0bYHeA 229 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::Copy Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3671 4 copy 1 3648
1171 14 Dtool_Ns0bMxVL 0 6 1005 3671 0 14 Dtool_Ns0bMxVL 223 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::Copy Fill Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3671 10 fill_value 1 3592
1172 14 Dtool_Ns0bONqB 0 6 1006 3574 0 14 Dtool_Ns0bONqB 0 2 4 this 3 3672 9 attr_name 1 3576
1173 14 Dtool_Ns0baW6V 0 6 1007 3577 0 14 Dtool_Ns0baW6V 0 4 4 this 3 3671 4 self 1 3574 9 attr_name 1 3576 6 assign 1 3574
1174 14 Dtool_Ns0br1Cs 0 6 1008 3672 0 14 Dtool_Ns0br1Cs 256 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::zero Named Constructor
// Access: Public
// Description: Returns a zero-length point.
//////////////////////////////////////////////////////////////////// 0
1175 14 Dtool_Ns0bA0r4 0 6 1009 3672 0 14 Dtool_Ns0bA0r4 253 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X point.
//////////////////////////////////////////////////////////////////// 0
1176 14 Dtool_Ns0bYH14 0 6 1010 3672 0 14 Dtool_Ns0bYH14 253 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y point.
//////////////////////////////////////////////////////////////////// 0
1177 14 Dtool_Ns0bQW_4 0 6 1011 3672 0 14 Dtool_Ns0bQW_4 253 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::unit_z Named Constructor
// Access: Public
// Description: Returns a unit Z point.
//////////////////////////////////////////////////////////////////// 0
1178 14 Dtool_Ns0bIlh4 0 6 1012 3672 0 14 Dtool_Ns0bIlh4 253 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::unit_w Named Constructor
// Access: Public
// Description: Returns a unit W point.
//////////////////////////////////////////////////////////////////// 0
1179 14 Dtool_Ns0b1LCJ 0 7 1013 3671 3010 14 Dtool_Ns0b1LCJ 212 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::unary -
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3672
1180 14 Dtool_Ns0bLSFi 0 7 1014 3647 2775 14 Dtool_Ns0bLSFi 220 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::point + vecbase
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3672 5 other 1 3648
1181 14 Dtool_Ns0bzh4Y 0 7 1014 3671 3010 14 Dtool_Ns0bzh4Y 219 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::point + vector
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3672 5 other 1 3663
1182 14 Dtool_Ns0bxIuA 0 7 1015 3662 2957 14 Dtool_Ns0bxIuA 218 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::point - point
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3672 5 other 1 3672
1183 14 Dtool_Ns0bQcGi 0 7 1015 3647 2775 14 Dtool_Ns0bQcGi 220 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::point - vecbase
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3672 5 other 1 3648
1184 14 Dtool_Ns0b0T5Y 0 7 1015 3671 3010 14 Dtool_Ns0b0T5Y 219 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::point - vector
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3672 5 other 1 3663
1185 14 Dtool_Ns0bre_H 0 7 1016 3671 3010 14 Dtool_Ns0bre_H 222 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::operator * scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3672 6 scalar 1 3592
1186 14 Dtool_Ns0b6DAo 0 7 1017 3671 3010 14 Dtool_Ns0b6DAo 222 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::operator / scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3672 6 scalar 1 3592
1187 14 Dtool_Ns0bjtEi 0 7 1018 3671 3010 14 Dtool_Ns0bjtEi 388 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::project
// Access: Published
// Description: 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 3648
1188 14 Dtool_Ns0bEwJi 0 4 1019 3573 0 14 Dtool_Ns0bEwJi 0 3 4 this 3 3672 3 out 1 3581 10 class_name 1 3576
1189 14 Dtool_Ns0bmbiH 0 7 1020 3588 0 14 Dtool_Ns0bmbiH 0 0
1190 14 Dtool_Ns0b80Lu 0 7 1023 3674 3027 14 Dtool_Ns0b80Lu 711 // Filename: lpoint4_src.I
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LPoint4::Default Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 0
1191 14 Dtool_Ns0bwJp4 0 7 1023 3674 3027 14 Dtool_Ns0bwJp4 219 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 copy 1 3621 1 w 1 3577
1192 14 Dtool_Ns0bnRtZ 0 7 1023 3674 3027 14 Dtool_Ns0bnRtZ 221 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::Copy Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3654
1193 14 Dtool_Ns0bXc4G 0 7 1023 3674 3027 14 Dtool_Ns0bXc4G 216 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 10 fill_value 1 3577
1194 14 Dtool_Ns0bl_bH 0 7 1023 3674 3027 14 Dtool_Ns0bl_bH 216 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 4 1 x 1 3577 1 y 1 3577 1 z 1 3577 1 w 1 3577
1195 14 Dtool_Ns0bdC2J 0 6 1024 3674 0 14 Dtool_Ns0bdC2J 229 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::Copy Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3674 4 copy 1 3654
1196 14 Dtool_Ns0bPC2t 0 6 1024 3674 0 14 Dtool_Ns0bPC2t 223 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::Copy Fill Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3674 10 fill_value 1 3577
1197 14 Dtool_Ns0bNt7E 0 6 1025 3574 0 14 Dtool_Ns0bNt7E 0 2 4 this 3 3675 9 attr_name 1 3576
1198 14 Dtool_Ns0bd2LZ 0 6 1026 3577 0 14 Dtool_Ns0bd2LZ 0 4 4 this 3 3674 4 self 1 3574 9 attr_name 1 3576 6 assign 1 3574
1199 14 Dtool_Ns0bkVTv 0 6 1027 3675 0 14 Dtool_Ns0bkVTv 256 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::zero Named Constructor
// Access: Public
// Description: Returns a zero-length point.
//////////////////////////////////////////////////////////////////// 0
1200 14 Dtool_Ns0bDU97 0 6 1028 3675 0 14 Dtool_Ns0bDU97 253 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::unit_x Named Constructor
// Access: Public
// Description: Returns a unit X point.
//////////////////////////////////////////////////////////////////// 0
1201 14 Dtool_Ns0bbnG8 0 6 1029 3675 0 14 Dtool_Ns0bbnG8 253 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::unit_y Named Constructor
// Access: Public
// Description: Returns a unit Y point.
//////////////////////////////////////////////////////////////////// 0
1202 14 Dtool_Ns0bT2Q8 0 6 1030 3675 0 14 Dtool_Ns0bT2Q8 253 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::unit_z Named Constructor
// Access: Public
// Description: Returns a unit Z point.
//////////////////////////////////////////////////////////////////// 0
1203 14 Dtool_Ns0bLFz7 0 6 1031 3675 0 14 Dtool_Ns0bLFz7 253 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::unit_w Named Constructor
// Access: Public
// Description: Returns a unit W point.
//////////////////////////////////////////////////////////////////// 0
1204 14 Dtool_Ns0bKrTM 0 7 1032 3674 3027 14 Dtool_Ns0bKrTM 212 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::unary -
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3675
1205 14 Dtool_Ns0bORdr 0 7 1033 3653 2855 14 Dtool_Ns0bORdr 220 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::point + vecbase
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3675 5 other 1 3654
1206 14 Dtool_Ns0bw0Wc 0 7 1033 3674 3027 14 Dtool_Ns0bw0Wc 219 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::point + vector
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3675 5 other 1 3666
1207 14 Dtool_Ns0bn_AQ 0 7 1034 3665 2974 14 Dtool_Ns0bn_AQ 218 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::point - point
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3675 5 other 1 3675
1208 14 Dtool_Ns0bVjer 0 7 1034 3653 2855 14 Dtool_Ns0bVjer 220 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::point - vecbase
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3675 5 other 1 3654
1209 14 Dtool_Ns0b7mXc 0 7 1034 3674 3027 14 Dtool_Ns0b7mXc 219 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::point - vector
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3675 5 other 1 3666
1210 14 Dtool_Ns0bwQn5 0 7 1035 3674 3027 14 Dtool_Ns0bwQn5 222 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::operator * scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3675 6 scalar 1 3577
1211 14 Dtool_Ns0beHpZ 0 7 1036 3674 3027 14 Dtool_Ns0beHpZ 222 ////////////////////////////////////////////////////////////////////
// Function: LPoint4::operator / scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3675 6 scalar 1 3577
1212 14 Dtool_Ns0bDQal 0 4 1037 3573 0 14 Dtool_Ns0bDQal 0 3 4 this 3 3675 3 out 1 3581 10 class_name 1 3576
1213 14 Dtool_Ns0bp70K 0 7 1038 3588 0 14 Dtool_Ns0bp70K 0 0
1214 14 Dtool_Ns0bl0PU 0 7 1050 3677 3108 14 Dtool_Ns0bl0PU 228 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Default Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 0
1215 14 Dtool_Ns0bsN2u 0 7 1050 3677 3108 14 Dtool_Ns0bsN2u 225 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Copy Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 5 other 1 3678
1216 14 Dtool_Ns0bQz8c 0 7 1050 3677 3108 14 Dtool_Ns0bQz8c 220 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 9 3 e00 1 3571 3 e01 1 3571 3 e02 1 3571 3 e10 1 3571 3 e11 1 3571 3 e12 1 3571 3 e20 1 3571 3 e21 1 3571 3 e22 1 3571
1217 14 Dtool_Ns0bWGVN 0 6 1051 3677 0 14 Dtool_Ns0bWGVN 233 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Copy Assignment Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3677 5 other 1 3678
1218 14 Dtool_Ns0bOZp_ 0 6 1051 3677 0 14 Dtool_Ns0bOZp_ 233 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Fill Assignment Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3677 10 fill_value 1 3571
1219 14 Dtool_Ns0bxIaw 0 4 1052 3573 0 14 Dtool_Ns0bxIaw 0 2 4 this 3 3677 4 size 1 3572
1220 14 Dtool_Ns0b74w_ 0 6 1055 3574 0 14 Dtool_Ns0b74w_ 0 2 4 this 3 3678 4 self 1 3574
1221 14 Dtool_Ns0bgH0z 0 4 1056 3573 0 14 Dtool_Ns0bgH0z 391 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::fill
// Access: Published
// Description: 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 3677 10 fill_value 1 3571
1222 14 Dtool_Ns0bz3qU 0 4 1057 3573 0 14 Dtool_Ns0bz3qU 212 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::set
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 10 4 this 3 3677 3 e00 1 3571 3 e01 1 3571 3 e02 1 3571 3 e10 1 3571 3 e11 1 3571 3 e12 1 3571 3 e20 1 3571 3 e21 1 3571 3 e22 1 3571
1223 14 Dtool_Ns0bN5w9 0 4 1058 3573 0 14 Dtool_Ns0bN5w9 329 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::set_row
// Access: Published
// Description: Replaces the indicated row of the matrix from a
// two-component vector, ignoring the last column.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3677 3 row 1 3577 1 v 1 3569
1224 14 Dtool_Ns0b55gf 0 4 1058 3573 0 14 Dtool_Ns0b55gf 305 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::set_row
// Access: Published
// Description: Replaces the indicated row of the matrix from a
// three-component vector.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3677 3 row 1 3577 1 v 1 3615
1225 14 Dtool_Ns0bvDEF 0 4 1059 3573 0 14 Dtool_Ns0bvDEF 332 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::set_column
// Access: Published
// Description: Replaces the indicated column of the matrix from a
// two-component vector, ignoring the last row.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3677 3 col 1 3577 1 v 1 3569
1226 14 Dtool_Ns0bac0m 0 4 1059 3573 0 14 Dtool_Ns0bac0m 311 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::set_column
// Access: Published
// Description: Replaces the indicated column of the matrix from a
// three-component vector.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3677 3 col 1 3577 1 v 1 3615
1227 14 Dtool_Ns0bdfDX 0 4 1060 3573 0 14 Dtool_Ns0bdfDX 301 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_row
// Access: Published
// Description: Stores the indicated row of the matrix as a
// three-component vector.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3678 10 result_vec 1 3614 3 row 1 3577
1228 14 Dtool_Ns0bwROZ 0 7 1060 3614 2314 14 Dtool_Ns0bwROZ 302 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_row
// Access: Published
// Description: Returns the indicated row of the matrix as a
// three-component vector.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3678 3 row 1 3577
1229 14 Dtool_Ns0bFuhg 0 7 1061 3614 2314 14 Dtool_Ns0bFuhg 305 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_col
// Access: Published
// Description: Returns the indicated column of the matrix as a
// three-component vector.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3678 3 col 1 3577
1230 14 Dtool_Ns0b7qSI 0 7 1062 3568 2032 14 Dtool_Ns0b7qSI 327 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_row2
// Access: Published
// Description: Returns the indicated row of the matrix as a
// two-component vector, ignoring the last column.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3678 3 row 1 3577
1231 14 Dtool_Ns0bWJmP 0 7 1063 3568 2032 14 Dtool_Ns0bWJmP 327 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_col2
// Access: Published
// Description: Returns the indicated column of the matrix as a
// two-component vector, ignoring the last row.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3678 3 col 1 3577
1232 14 Dtool_Ns0bHBvR 0 4 1064 3573 0 14 Dtool_Ns0bHBvR 226 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Indexing operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3677 3 row 1 3577 3 col 1 3577
1233 14 Dtool_Ns0b_Fgz 0 6 1064 3571 0 14 Dtool_Ns0b_Fgz 226 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Indexing operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3678 3 row 1 3577 3 col 1 3577
1234 14 Dtool_Ns0bn3T3 0 7 1065 3680 3031 14 Dtool_Ns0bn3T3 226 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Indexing Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3677 1 i 1 3577
1235 14 Dtool_Ns0bcUMI 0 7 1065 3681 3034 14 Dtool_Ns0bcUMI 226 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Indexing Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3678 1 i 1 3577
1236 14 Dtool_Ns0bkTdF 0 6 1066 3577 0 14 Dtool_Ns0bkTdF 266 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::size
// Access: Published, Static
// Description: Returns 3: the number of rows of a LMatrix3.
//////////////////////////////////////////////////////////////////// 0
1237 14 Dtool_Ns0bR3pT 0 6 1067 3578 0 14 Dtool_Ns0bR3pT 310 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::is_nan
// Access: Published
// Description: Returns true if any component of the matrix is
// not-a-number, false otherwise.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3678
1238 14 Dtool_Ns0bH4Zy 0 6 1068 3571 0 14 Dtool_Ns0bH4Zy 261 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_cell
// Access: Published
// Description: Returns a particular element of the matrix.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3678 3 row 1 3577 3 col 1 3577
1239 14 Dtool_Ns0bl0_H 0 4 1069 3573 0 14 Dtool_Ns0bl0_H 261 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::set_cell
// Access: Published
// Description: Changes a particular element of the matrix.
//////////////////////////////////////////////////////////////////// 4 4 this 3 3677 3 row 1 3577 3 col 1 3577 5 value 1 3571
1240 14 Dtool_Ns0bWvxR 0 4 1070 3573 0 14 Dtool_Ns0bWvxR 401 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_data
// Access: Published
// Description: 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 3678
1241 14 Dtool_Ns0bbMUR 0 6 1071 3577 0 14 Dtool_Ns0bbMUR 279 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_num_components
// Access: Published
// Description: Returns the number of elements in the matrix, nine.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3678
1242 14 Dtool_Ns0bvhzu 0 6 1072 3578 0 14 Dtool_Ns0bvhzu 504 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Ordering Operator
// Access: Published
// Description: This performs a lexicographical comparison. It's of
// questionable mathematical meaning, but sometimes has
// a practical purpose for sorting unique vectors,
// especially in an STL container. Also see
// compare_to().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3678 5 other 1 3678
1243 14 Dtool_Ns0bJQr_ 0 6 1073 3578 0 14 Dtool_Ns0bJQr_ 226 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Equality Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3678 5 other 1 3678
1244 14 Dtool_Ns0bJhJ3 0 6 1074 3578 0 14 Dtool_Ns0bJhJ3 228 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Inequality Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3678 5 other 1 3678
1245 14 Dtool_Ns0bKM0m 0 6 1075 3577 0 14 Dtool_Ns0bKM0m 320 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::compare_to
// Access: Published
// Description: This flavor of compare_to uses a default threshold
// value based on the numeric type.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3678 5 other 1 3678
1246 14 Dtool_Ns0bxCZj 0 6 1075 3577 0 14 Dtool_Ns0bxCZj 504 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::compare_to
// Access: Published
// Description: 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 3678 5 other 1 3678 9 threshold 1 3571
1247 14 Dtool_Ns0bW4In 0 6 1076 3572 0 14 Dtool_Ns0bW4In 256 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3678
1248 14 Dtool_Ns0bG8W5 0 6 1076 3572 0 14 Dtool_Ns0bG8W5 256 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3678 9 threshold 1 3571
1249 14 Dtool_Ns0bpcnj 0 6 1077 3572 0 14 Dtool_Ns0bpcnj 256 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3678 4 hash 1 3572
1250 14 Dtool_Ns0bGmv2 0 6 1077 3572 0 14 Dtool_Ns0bGmv2 256 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3678 4 hash 1 3572 9 threshold 1 3571
1251 14 Dtool_Ns0bHzw6 0 7 1078 3614 2314 14 Dtool_Ns0bHzw6 256 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform
// Access: Published
// Description: 3-component vector or point times matrix.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3678 1 v 1 3615
1252 14 Dtool_Ns0bE0BQ 0 7 1079 3568 2032 14 Dtool_Ns0bE0BQ 403 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_point
// Access: Published
// Description: 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 3678 1 v 1 3569
1253 14 Dtool_Ns0bI3MJ 0 7 1080 3568 2032 14 Dtool_Ns0bI3MJ 400 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_vec
// Access: Published
// Description: 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 3678 1 v 1 3569
1254 14 Dtool_Ns0babOJ 0 7 1080 3614 2314 14 Dtool_Ns0babOJ 447 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_vec
// Access: Published
// Description: 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 3678 1 v 1 3615
1255 14 Dtool_Ns0bJ0pj 0 7 1081 3614 2314 14 Dtool_Ns0bJ0pj 389 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_vec_general
// Access: Published
// Description: The matrix transforms a 3-component vector (without
// translation component) and returns the result, as a
// fully general operation.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3678 1 v 1 3615
1256 14 Dtool_Ns0bBsdm 0 4 1082 3573 0 14 Dtool_Ns0bBsdm 265 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_in_place
// Access: Published
// Description: 3-component vector or point times matrix.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3678 1 v 1 3614
1257 14 Dtool_Ns0bWmBi 0 4 1083 3573 0 14 Dtool_Ns0bWmBi 389 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_point_in_place
// Access: Published
// Description: The matrix transforms a 2-component point (including
// translation component). This assumes the matrix is
// an affine transform.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3678 1 v 1 3568
1258 14 Dtool_Ns0b3Y53 0 4 1084 3573 0 14 Dtool_Ns0b3Y53 386 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_vec_in_place
// Access: Published
// Description: The matrix transforms a 2-component vector (without
// translation component). This assumes the matrix is
// an affine transform.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3678 1 v 1 3568
1259 14 Dtool_Ns0bV04n 0 4 1084 3573 0 14 Dtool_Ns0bV04n 416 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_vec_in_place
// Access: Published
// Description: 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 3678 1 v 1 3614
1260 14 Dtool_Ns0bYYwa 0 4 1085 3573 0 14 Dtool_Ns0bYYwa 358 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_vec_general_in_place
// Access: Published
// Description: The matrix transforms a 3-component vector (without
// translation component), as a fully general operation.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3678 1 v 1 3614
1261 14 Dtool_Ns0bSR6_ 0 4 1086 3573 0 14 Dtool_Ns0bSR6_ 25 // this = other1 * other2 3 4 this 3 3677 6 other1 1 3678 6 other2 1 3678
1262 14 Dtool_Ns0bPBTp 0 7 1087 3677 3108 14 Dtool_Ns0bPBTp 224 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::matrix * matrix
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3678 5 other 1 3678
1263 14 Dtool_Ns0bcFqV 0 7 1087 3677 3108 14 Dtool_Ns0bcFqV 224 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::matrix * scalar
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3678 6 scalar 1 3571
1264 14 Dtool_Ns0bMqMX 0 7 1088 3677 3108 14 Dtool_Ns0bMqMX 224 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::matrix / scalar
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3678 6 scalar 1 3571
1265 14 Dtool_Ns0bE0iA 0 6 1089 3677 0 14 Dtool_Ns0bE0iA 278 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::matrix += matrix
// Access: Published
// Description: Performs a memberwise addition between two matrices.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3677 5 other 1 3678
1266 14 Dtool_Ns0bkIJB 0 6 1090 3677 0 14 Dtool_Ns0bkIJB 281 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::matrix -= matrix
// Access: Published
// Description: Performs a memberwise subtraction between two matrices.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3677 5 other 1 3678
1267 14 Dtool_Ns0b0XOA 0 6 1091 3677 0 14 Dtool_Ns0b0XOA 225 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::matrix *= matrix
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3677 5 other 1 3678
1268 14 Dtool_Ns0bMH5p 0 6 1091 3677 0 14 Dtool_Ns0bMH5p 254 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::matrix *= scalar
// Access: Published
// Description: Performs a memberwise scale.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3677 6 scalar 1 3571
1269 14 Dtool_Ns0bc8ar 0 6 1092 3677 0 14 Dtool_Ns0bc8ar 254 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::matrix /= scalar
// Access: Published
// Description: Performs a memberwise scale.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3677 6 scalar 1 3571
1270 14 Dtool_Ns0b3zlL 0 6 1093 3571 0 14 Dtool_Ns0b3zlL 259 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::determinant
// Access: Published
// Description: Returns the determinant of the matrix.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3678
1271 14 Dtool_Ns0blS3s 0 4 1094 3573 0 14 Dtool_Ns0blS3s 223 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::transpose_from
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3677 5 other 1 3678
1272 14 Dtool_Ns0b8Ojo 0 4 1095 3573 0 14 Dtool_Ns0b8Ojo 227 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::transpose_in_place
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3677
1273 14 Dtool_Ns0bUKZ2 0 6 1096 3578 0 14 Dtool_Ns0bUKZ2 808 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::invert_from
// Access: Published
// Description: 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 3677 5 other 1 3678
1274 14 Dtool_Ns0bhuLY 0 6 1097 3578 0 14 Dtool_Ns0bhuLY 364 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::invert_in_place
// Access: Published
// Description: Inverts the current matrix. Returns true if the
// inverse is successful, false if the matrix was
// singular.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3677
1275 14 Dtool_Ns0bKfCp 0 6 1098 3578 0 14 Dtool_Ns0bKfCp 348 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::invert_transpose_from
// Access: Published
// Description: Simultaneously computes the inverse of the indicated
// matrix, and then the transpose of that inverse.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3677 5 other 1 3678
1276 14 Dtool_Ns0bKD6t 0 6 1098 3578 0 14 Dtool_Ns0bKD6t 348 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::invert_transpose_from
// Access: Published
// Description: Simultaneously computes the inverse of the indicated
// matrix, and then the transpose of that inverse.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3677 5 other 1 3682
1277 14 Dtool_Ns0bq8vo 0 6 1099 3678 0 14 Dtool_Ns0bq8vo 391 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::ident_mat
// Access: Published, Static
// Description: Returns an identity matrix.
//
// This function definition must appear first, since
// some inline functions below take advantage of it.
//////////////////////////////////////////////////////////////////// 0
1278 14 Dtool_Ns0boByR 0 4 1100 3573 0 14 Dtool_Ns0boByR 306 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_translate_mat
// Access: Published
// Description: Fills mat with a matrix that applies the indicated
// translation.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3677 5 trans 1 3569
1279 14 Dtool_Ns0bd4J2 0 4 1101 3573 0 14 Dtool_Ns0bd4J2 324 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_rotate_mat
// Access: Published
// Description: Fills mat with a matrix that rotates by the given
// angle in degrees counterclockwise.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3677 5 angle 1 3571
1280 14 Dtool_Ns0bPymL 0 4 1101 3573 0 14 Dtool_Ns0bPymL 368 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_rotate_mat
// Access: Published
// Description: Fills mat with a matrix that rotates by the given
// angle in degrees counterclockwise about the indicated
// vector.
//////////////////////////////////////////////////////////////////// 4 4 this 3 3677 5 angle 1 3571 4 axis 1 3615 2 cs 1 3529
1281 14 Dtool_Ns0bdiBV 0 4 1101 3573 0 14 Dtool_Ns0bdiBV 368 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_rotate_mat
// Access: Published
// Description: Fills mat with a matrix that rotates by the given
// angle in degrees counterclockwise about the indicated
// vector.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3677 5 angle 1 3571 4 axis 1 3615
1282 14 Dtool_Ns0bSAXQ 0 4 1102 3573 0 14 Dtool_Ns0bSAXQ 320 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_scale_mat
// Access: Published
// Description: Fills mat with a matrix that applies the indicated
// scale in each of the two axes.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3677 5 scale 1 3569
1283 14 Dtool_Ns0bB2WI 0 4 1102 3573 0 14 Dtool_Ns0bB2WI 322 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_scale_mat
// Access: Published
// Description: Fills mat with a matrix that applies the indicated
// scale in each of the three axes.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3677 5 scale 1 3615
1284 14 Dtool_Ns0b9Yv7 0 7 1103 3677 3108 14 Dtool_Ns0b9Yv7 303 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::translate_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// translation.
//////////////////////////////////////////////////////////////////// 1 5 trans 1 3569
1285 14 Dtool_Ns0b1aHR 0 7 1103 3677 3108 14 Dtool_Ns0b1aHR 303 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::translate_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// translation.
//////////////////////////////////////////////////////////////////// 2 2 tx 1 3571 2 ty 1 3571
1286 14 Dtool_Ns0bwS2A 0 7 1104 3677 3108 14 Dtool_Ns0bwS2A 321 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::rotate_mat
// Access: Published, Static
// Description: Returns a matrix that rotates by the given angle in
// degrees counterclockwise.
//////////////////////////////////////////////////////////////////// 1 5 angle 1 3571
1287 14 Dtool_Ns0bzgNZ 0 7 1104 3677 3108 14 Dtool_Ns0bzgNZ 348 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::rotate_mat
// Access: Published, Static
// Description: Returns a matrix that rotates by the given angle in
// degrees counterclockwise about the indicated vector.
//////////////////////////////////////////////////////////////////// 3 5 angle 1 3571 4 axis 1 3615 2 cs 1 3529
1288 14 Dtool_Ns0by0rv 0 7 1104 3677 3108 14 Dtool_Ns0by0rv 348 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::rotate_mat
// Access: Published, Static
// Description: Returns a matrix that rotates by the given angle in
// degrees counterclockwise about the indicated vector.
//////////////////////////////////////////////////////////////////// 2 5 angle 1 3571 4 axis 1 3615
1289 14 Dtool_Ns0bfF2k 0 7 1105 3677 3108 14 Dtool_Ns0bfF2k 317 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// scale in each of the two axes.
//////////////////////////////////////////////////////////////////// 1 5 scale 1 3569
1290 14 Dtool_Ns0bNp4k 0 7 1105 3677 3108 14 Dtool_Ns0bNp4k 319 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// scale in each of the three axes.
//////////////////////////////////////////////////////////////////// 1 5 scale 1 3615
1291 14 Dtool_Ns0bKKk6 0 7 1105 3677 3108 14 Dtool_Ns0bKKk6 317 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// scale in each of the two axes.
//////////////////////////////////////////////////////////////////// 2 2 sx 1 3571 2 sy 1 3571
1292 14 Dtool_Ns0bx6ng 0 7 1105 3677 3108 14 Dtool_Ns0bx6ng 319 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// scale in each of the three axes.
//////////////////////////////////////////////////////////////////// 3 2 sx 1 3571 2 sy 1 3571 2 sz 1 3571
1293 14 Dtool_Ns0bA7ca 0 4 1106 3573 0 14 Dtool_Ns0bA7ca 412 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_rotate_mat_normaxis
// Access: Published
// Description: 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 3677 5 angle 1 3571 4 axis 1 3615 2 cs 1 3529
1294 14 Dtool_Ns0biLqT 0 4 1106 3573 0 14 Dtool_Ns0biLqT 412 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_rotate_mat_normaxis
// Access: Published
// Description: Fills mat with a matrix that rotates by the given
// angle in degrees counterclockwise about the indicated
// vector. Assumes axis has been normalized.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3677 5 angle 1 3571 4 axis 1 3615
1295 14 Dtool_Ns0bSl9G 0 7 1107 3677 3108 14 Dtool_Ns0bSl9G 408 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::rotate_mat_normaxis
// Access: Published, Static
// Description: 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 3571 4 axis 1 3615 2 cs 1 3529
1296 14 Dtool_Ns0bif2Z 0 7 1107 3677 3108 14 Dtool_Ns0bif2Z 408 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::rotate_mat_normaxis
// Access: Published, Static
// Description: Returns a matrix that rotates by the given angle in
// degrees counterclockwise about the indicated vector.
// Assumes axis has been normalized.
//////////////////////////////////////////////////////////////////// 2 5 angle 1 3571 4 axis 1 3615
1297 14 Dtool_Ns0b_oI_ 0 4 1108 3573 0 14 Dtool_Ns0b_oI_ 324 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_shear_mat
// Access: Published
// Description: Fills mat with a matrix that applies the indicated
// shear in each of the three planes.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3677 5 shear 1 3615 2 cs 1 3529
1298 14 Dtool_Ns0b5pyk 0 4 1108 3573 0 14 Dtool_Ns0b5pyk 324 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_shear_mat
// Access: Published
// Description: Fills mat with a matrix that applies the indicated
// shear in each of the three planes.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3677 5 shear 1 3615
1299 14 Dtool_Ns0b4aMC 0 7 1109 3677 3108 14 Dtool_Ns0b4aMC 321 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::shear_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// shear in each of the three planes.
//////////////////////////////////////////////////////////////////// 2 5 shear 1 3615 2 cs 1 3529
1300 14 Dtool_Ns0bKUWr 0 7 1109 3677 3108 14 Dtool_Ns0bKUWr 321 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::shear_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// shear in each of the three planes.
//////////////////////////////////////////////////////////////////// 1 5 shear 1 3615
1301 14 Dtool_Ns0biw5Z 0 7 1109 3677 3108 14 Dtool_Ns0biw5Z 321 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::shear_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// shear in each of the three planes.
//////////////////////////////////////////////////////////////////// 4 4 shxy 1 3571 4 shxz 1 3571 4 shyz 1 3571 2 cs 1 3529
1302 14 Dtool_Ns0bwRFn 0 7 1109 3677 3108 14 Dtool_Ns0bwRFn 321 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::shear_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// shear in each of the three planes.
//////////////////////////////////////////////////////////////////// 3 4 shxy 1 3571 4 shxz 1 3571 4 shyz 1 3571
1303 14 Dtool_Ns0bZjM_ 0 4 1110 3573 0 14 Dtool_Ns0bZjM_ 312 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_scale_shear_mat
// Access: Published
// Description: Fills mat with a matrix that applies the indicated
// scale and shear.
//////////////////////////////////////////////////////////////////// 4 4 this 3 3677 5 scale 1 3615 5 shear 1 3615 2 cs 1 3529
1304 14 Dtool_Ns0bFn4k 0 4 1110 3573 0 14 Dtool_Ns0bFn4k 312 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_scale_shear_mat
// Access: Published
// Description: Fills mat with a matrix that applies the indicated
// scale and shear.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3677 5 scale 1 3615 5 shear 1 3615
1305 14 Dtool_Ns0baF0T 0 7 1111 3677 3108 14 Dtool_Ns0baF0T 309 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_shear_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// scale and shear.
//////////////////////////////////////////////////////////////////// 3 5 scale 1 3615 5 shear 1 3615 2 cs 1 3529
1306 14 Dtool_Ns0b_Jjt 0 7 1111 3677 3108 14 Dtool_Ns0b_Jjt 309 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_shear_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// scale and shear.
//////////////////////////////////////////////////////////////////// 2 5 scale 1 3615 5 shear 1 3615
1307 14 Dtool_Ns0biFf9 0 7 1111 3677 3108 14 Dtool_Ns0biFf9 309 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_shear_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// scale and shear.
//////////////////////////////////////////////////////////////////// 7 2 sx 1 3571 2 sy 1 3571 2 sz 1 3571 4 shxy 1 3571 4 shxz 1 3571 4 shyz 1 3571 2 cs 1 3529
1308 14 Dtool_Ns0bie6G 0 7 1111 3677 3108 14 Dtool_Ns0bie6G 309 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_shear_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// scale and shear.
//////////////////////////////////////////////////////////////////// 6 2 sx 1 3571 2 sy 1 3571 2 sz 1 3571 4 shxy 1 3571 4 shxz 1 3571 4 shyz 1 3571
1309 14 Dtool_Ns0bjv0p 0 6 1112 3678 0 14 Dtool_Ns0bjv0p 350 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::convert_mat
// Access: Published, Static
// Description: Returns a matrix that transforms from the indicated
// coordinate system to the indicated coordinate system.
//////////////////////////////////////////////////////////////////// 2 4 from 1 3529 2 to 1 3529
1310 14 Dtool_Ns0b5LZV 0 6 1113 3578 0 14 Dtool_Ns0b5LZV 342 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::almost_equal
// Access: Published
// Description: Returns true if two matrices are memberwise equal
// within a default tolerance based on the numeric type.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3678 5 other 1 3678
1311 14 Dtool_Ns0bjSL6 0 6 1113 3578 0 14 Dtool_Ns0bjSL6 318 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::almost_equal
// Access: Published
// Description: Returns true if two matrices are memberwise equal
// within a specified tolerance.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3678 5 other 1 3678 9 threshold 1 3571
1312 14 Dtool_Ns0bzE1n 0 4 1114 3573 0 14 Dtool_Ns0bzE1n 215 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::output
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3678 3 out 1 3581
1313 14 Dtool_Ns0bxi6e 0 4 1115 3573 0 14 Dtool_Ns0bxi6e 214 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::write
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3678 3 out 1 3581 12 indent_level 1 3577
1314 14 Dtool_Ns0bt5Vo 0 4 1115 3573 0 14 Dtool_Ns0bt5Vo 214 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::write
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3678 3 out 1 3581
1315 14 Dtool_Ns0bf4Xq 0 4 1116 3573 0 14 Dtool_Ns0bf4Xq 0 3 4 this 3 3678 3 out 1 3581 10 class_name 1 3576
1316 14 Dtool_Ns0bOVov 0 4 1117 3573 0 14 Dtool_Ns0bOVov 271 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::generate_hash
// Access: Published
// Description: Adds the vector to the indicated hash generator.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3678 7 hashgen 1 3579
1317 14 Dtool_Ns0bm__V 0 4 1117 3573 0 14 Dtool_Ns0bm__V 271 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::generate_hash
// Access: Published
// Description: Adds the vector to the indicated hash generator.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3678 7 hashgen 1 3579 9 threshold 1 3571
1318 14 Dtool_Ns0brNOZ 0 4 1118 3573 0 14 Dtool_Ns0brNOZ 641 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::write_datagram_fixed
// Access: Published
// Description: 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 3678 11 destination 1 3583
1319 14 Dtool_Ns0bhdF9 0 4 1119 3573 0 14 Dtool_Ns0bhdF9 347 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::read_datagram_fixed
// Access: Published
// Description: Reads the matrix from the Datagram using get_float32()
// or get_float64(). See write_datagram_fixed().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3677 4 scan 1 3585
1320 14 Dtool_Ns0bZmJJ 0 4 1120 3573 0 14 Dtool_Ns0bZmJJ 463 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::write_datagram
// Access: Published
// Description: 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 3678 11 destination 1 3583
1321 14 Dtool_Ns0b4drJ 0 4 1121 3573 0 14 Dtool_Ns0b4drJ 279 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::read_datagram
// Access: Published
// Description: Reads the matrix from the Datagram using get_stdfloat().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3677 6 source 1 3585
1322 14 Dtool_Ns0bIXnT 0 7 1122 3588 0 14 Dtool_Ns0bIXnT 0 0
1323 14 Dtool_Ns0bsICl 0 4 1042 3573 0 14 Dtool_Ns0bsICl 226 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Row::operator []
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3680 1 i 1 3577
1324 14 Dtool_Ns0bUN1G 0 6 1042 3571 0 14 Dtool_Ns0bUN1G 226 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Row::operator []
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3684 1 i 1 3577
1325 14 Dtool_Ns0bg9AW 0 4 1043 3573 0 14 Dtool_Ns0bg9AW 0 3 4 this 3 3680 1 i 1 3577 1 v 1 3571
1326 14 Dtool_Ns0bOlSB 0 6 1044 3577 0 14 Dtool_Ns0bOlSB 274 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Row::size
// Access: Published, Static
// Description: Returns 3: the number of columns of a LMatrix3.
//////////////////////////////////////////////////////////////////// 0
1327 14 Dtool_Ns0bKWHJ 0 6 1047 3571 0 14 Dtool_Ns0bKWHJ 227 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::CRow::operator []
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3686 1 i 1 3577
1328 14 Dtool_Ns0bS_uX 0 6 1048 3577 0 14 Dtool_Ns0bS_uX 275 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::CRow::size
// Access: Published, Static
// Description: Returns 3: the number of columns of a LMatrix3.
//////////////////////////////////////////////////////////////////// 0
1329 14 Dtool_Ns0b0VSC 0 7 1136 3688 3201 14 Dtool_Ns0b0VSC 225 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Default Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 0
1330 14 Dtool_Ns0bfs5c 0 7 1136 3688 3201 14 Dtool_Ns0bfs5c 228 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Constructor, upper 3x3
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 6 upper3 1 3678
1331 14 Dtool_Ns0b6_z9 0 7 1136 3688 3201 14 Dtool_Ns0b6_z9 245 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Constructor, upper 3x3 plus translation
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 6 upper3 1 3678 5 trans 1 3615
1332 14 Dtool_Ns0bX354 0 7 1136 3688 3201 14 Dtool_Ns0bX354 222 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Copy Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 5 other 1 3682
1333 14 Dtool_Ns0b2Ai0 0 7 1136 3688 3201 14 Dtool_Ns0b2Ai0 225 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Copy Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 5 other 1 3689
1334 14 Dtool_Ns0bkfiq 0 7 1136 3688 3201 14 Dtool_Ns0bkfiq 217 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 16 3 e00 1 3571 3 e01 1 3571 3 e02 1 3571 3 e03 1 3571 3 e10 1 3571 3 e11 1 3571 3 e12 1 3571 3 e13 1 3571 3 e20 1 3571 3 e21 1 3571 3 e22 1 3571 3 e23 1 3571 3 e30 1 3571 3 e31 1 3571 3 e32 1 3571 3 e33 1 3571
1335 14 Dtool_Ns0bkLb0 0 6 1137 3688 0 14 Dtool_Ns0bkLb0 230 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Copy Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3688 5 other 1 3682
1336 14 Dtool_Ns0b2l3p 0 6 1137 3688 0 14 Dtool_Ns0b2l3p 233 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Copy Assignment Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3688 5 other 1 3689
1337 14 Dtool_Ns0bJ5tl 0 6 1137 3688 0 14 Dtool_Ns0bJ5tl 230 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Fill Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3688 10 fill_value 1 3571
1338 14 Dtool_Ns0b2oeX 0 4 1138 3573 0 14 Dtool_Ns0b2oeX 0 2 4 this 3 3688 4 size 1 3572
1339 14 Dtool_Ns0b4Yzl 0 6 1141 3574 0 14 Dtool_Ns0b4Yzl 0 2 4 this 3 3682 4 self 1 3574
1340 14 Dtool_Ns0bhn3a 0 4 1142 3573 0 14 Dtool_Ns0bhn3a 388 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::fill
// Access: Public
// Description: 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 3688 10 fill_value 1 3571
1341 14 Dtool_Ns0bb_Gk 0 4 1143 3573 0 14 Dtool_Ns0bb_Gk 209 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::set
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 17 4 this 3 3688 3 e00 1 3571 3 e01 1 3571 3 e02 1 3571 3 e03 1 3571 3 e10 1 3571 3 e11 1 3571 3 e12 1 3571 3 e13 1 3571 3 e20 1 3571 3 e21 1 3571 3 e22 1 3571 3 e23 1 3571 3 e30 1 3571 3 e31 1 3571 3 e32 1 3571 3 e33 1 3571
1342 14 Dtool_Ns0bQITa 0 4 1144 3573 0 14 Dtool_Ns0bQITa 247 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::set_upper_3
// Access: Public
// Description: Sets the upper 3x3 submatrix.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3688 6 upper3 1 3678
1343 14 Dtool_Ns0b1ZhQ 0 7 1145 3677 3108 14 Dtool_Ns0b1ZhQ 252 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_upper_3
// Access: Public
// Description: Retrieves the upper 3x3 submatrix.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3682
1344 14 Dtool_Ns0b2ZkG 0 4 1146 3573 0 14 Dtool_Ns0b2ZkG 353 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::set_row
// Access: Public
// Description: Replaces the indicated row of the matrix with the
// indicated 3-component vector, ignoring the last
// column.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3688 3 row 1 3577 1 v 1 3615
1345 14 Dtool_Ns0blZUo 0 4 1146 3573 0 14 Dtool_Ns0blZUo 255 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::set_row
// Access: Public
// Description: Replaces the indicated row of the matrix.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3688 3 row 1 3577 1 v 1 3642
1346 14 Dtool_Ns0bb83N 0 4 1147 3573 0 14 Dtool_Ns0bb83N 353 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::set_col
// Access: Public
// Description: Replaces the indicated column of the matrix with the
// indicated 3-component vector, ignoring the last
// row.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3688 3 col 1 3577 1 v 1 3615
1347 14 Dtool_Ns0b28nv 0 4 1147 3573 0 14 Dtool_Ns0b28nv 258 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::set_col
// Access: Public
// Description: Replaces the indicated column of the matrix.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3688 3 col 1 3577 1 v 1 3642
1348 14 Dtool_Ns0bn__u 0 4 1148 3573 0 14 Dtool_Ns0bn__u 294 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_row
// Access: Public
// Description: Stores the indicated row of the matrix as a
// 4-component vector.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3682 10 result_vec 1 3641 3 row 1 3577
1349 14 Dtool_Ns0bxxRA 0 7 1148 3641 2695 14 Dtool_Ns0bxxRA 297 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_row
// Access: Public
// Description: Retrieves the indicated row of the matrix as a
// 4-component vector.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3682 3 row 1 3577
1350 14 Dtool_Ns0bCOlH 0 7 1149 3641 2695 14 Dtool_Ns0bCOlH 300 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_col
// Access: Public
// Description: Retrieves the indicated column of the matrix as a
// 4-component vector.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3682 3 col 1 3577
1351 14 Dtool_Ns0bdF7x 0 4 1150 3573 0 14 Dtool_Ns0bdF7x 318 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_row3
// Access: Public
// Description: Stores the row column of the matrix as a
// 3-component vector, ignoring the last column.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3682 10 result_vec 1 3614 3 row 1 3577
1352 14 Dtool_Ns0bJMW2 0 7 1150 3614 2314 14 Dtool_Ns0bJMW2 321 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_row3
// Access: Public
// Description: Retrieves the row column of the matrix as a
// 3-component vector, ignoring the last column.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3682 3 row 1 3577
1353 14 Dtool_Ns0bkop9 0 7 1151 3614 2314 14 Dtool_Ns0bkop9 324 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_col3
// Access: Public
// Description: Retrieves the indicated column of the matrix as a
// 3-component vector, ignoring the last row.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3682 3 col 1 3577
1354 14 Dtool_Ns0bHhy4 0 4 1152 3573 0 14 Dtool_Ns0bHhy4 223 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Indexing operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3688 3 row 1 3577 3 col 1 3577
1355 14 Dtool_Ns0b_lka 0 6 1152 3571 0 14 Dtool_Ns0b_lka 223 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Indexing operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3682 3 row 1 3577 3 col 1 3577
1356 14 Dtool_Ns0bkXWe 0 7 1153 3691 3114 14 Dtool_Ns0bkXWe 223 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Indexing Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3688 1 i 1 3577
1357 14 Dtool_Ns0bc0Pv 0 7 1153 3692 3117 14 Dtool_Ns0bc0Pv 223 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Indexing Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3682 1 i 1 3577
1358 14 Dtool_Ns0bkzgs 0 6 1154 3577 0 14 Dtool_Ns0bkzgs 263 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::size
// Access: Public, Static
// Description: Returns 4: the number of rows of a LMatrix4.
//////////////////////////////////////////////////////////////////// 0
1359 14 Dtool_Ns0bRXs6 0 6 1155 3578 0 14 Dtool_Ns0bRXs6 307 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::is_nan
// Access: Public
// Description: Returns true if any component of the matrix is
// not-a-number, false otherwise.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3682
1360 14 Dtool_Ns0bGYcZ 0 6 1156 3571 0 14 Dtool_Ns0bGYcZ 258 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_cell
// Access: Public
// Description: Returns a particular element of the matrix.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3682 3 row 1 3577 3 col 1 3577
1361 14 Dtool_Ns0blUBv 0 4 1157 3573 0 14 Dtool_Ns0blUBv 258 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::set_cell
// Access: Public
// Description: Changes a particular element of the matrix.
//////////////////////////////////////////////////////////////////// 4 4 this 3 3688 3 row 1 3577 3 col 1 3577 5 value 1 3571
1362 14 Dtool_Ns0bWP14 0 4 1158 3573 0 14 Dtool_Ns0bWP14 398 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_data
// Access: Public
// Description: 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 3682
1363 14 Dtool_Ns0bbsX4 0 6 1159 3577 0 14 Dtool_Ns0bbsX4 274 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_num_components
// Access: Public
// Description: Returns the number of elements in the matrix, 16.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3682
1364 14 Dtool_Ns0bKK3S 0 4 1160 3573 0 14 Dtool_Ns0bKK3S 316 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::begin
// Access: Public
// Description: Returns an iterator that may be used to traverse the
// elements of the matrix, STL-style.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3688
1365 14 Dtool_Ns0bBQDa 0 4 1160 3573 0 14 Dtool_Ns0bBQDa 316 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::begin
// Access: Public
// Description: Returns an iterator that may be used to traverse the
// elements of the matrix, STL-style.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3682
1366 14 Dtool_Ns0bm_kL 0 4 1161 3573 0 14 Dtool_Ns0bm_kL 314 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::end
// Access: Public
// Description: Returns an iterator that may be used to traverse the
// elements of the matrix, STL-style.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3688
1367 14 Dtool_Ns0bgxNr 0 4 1161 3573 0 14 Dtool_Ns0bgxNr 314 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::end
// Access: Public
// Description: Returns an iterator that may be used to traverse the
// elements of the matrix, STL-style.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3682
1368 14 Dtool_Ns0b8l5V 0 6 1162 3578 0 14 Dtool_Ns0b8l5V 501 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Ordering Operator
// Access: Public
// Description: This performs a lexicographical comparison. It's of
// questionable mathematical meaning, but sometimes has
// a practical purpose for sorting unique vectors,
// especially in an STL container. Also see
// compare_to().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3682 5 other 1 3682
1369 14 Dtool_Ns0bI59n 0 6 1163 3578 0 14 Dtool_Ns0bI59n 223 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Equality Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3682 5 other 1 3682
1370 14 Dtool_Ns0bIOaf 0 6 1164 3578 0 14 Dtool_Ns0bIOaf 225 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Inequality Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3682 5 other 1 3682
1371 14 Dtool_Ns0bzB6N 0 6 1165 3577 0 14 Dtool_Ns0bzB6N 317 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::compare_to
// Access: Public
// Description: This flavor of compare_to uses a default threshold
// value based on the numeric type.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3682 5 other 1 3682
1372 14 Dtool_Ns0bmOfK 0 6 1165 3577 0 14 Dtool_Ns0bmOfK 501 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::compare_to
// Access: Public
// Description: 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 3682 5 other 1 3682 9 threshold 1 3571
1373 14 Dtool_Ns0bVYMO 0 6 1166 3572 0 14 Dtool_Ns0bVYMO 253 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_hash
// Access: Public
// Description: Returns a suitable hash for phash_map.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3682
1374 14 Dtool_Ns0bFcZg 0 6 1166 3572 0 14 Dtool_Ns0bFcZg 253 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_hash
// Access: Public
// Description: Returns a suitable hash for phash_map.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3682 9 threshold 1 3571
1375 14 Dtool_Ns0bo8oK 0 6 1167 3572 0 14 Dtool_Ns0bo8oK 253 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::add_hash
// Access: Public
// Description: Adds the vector into the running hash.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3682 4 hash 1 3572
1376 14 Dtool_Ns0bJGyd 0 6 1167 3572 0 14 Dtool_Ns0bJGyd 253 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::add_hash
// Access: Public
// Description: Adds the vector into the running hash.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3682 4 hash 1 3572 9 threshold 1 3571
1377 14 Dtool_Ns0bmWbi 0 7 1168 3641 2695 14 Dtool_Ns0bmWbi 306 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform
// Access: Public
// Description: 4-component vector or point times matrix. This is a
// fully general operation.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3682 1 v 1 3642
1378 14 Dtool_Ns0bF0Ie 0 7 1169 3614 2314 14 Dtool_Ns0bF0Ie 400 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_point
// Access: Public
// Description: 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 3682 1 v 1 3615
1379 14 Dtool_Ns0bSxet 0 7 1170 3614 2314 14 Dtool_Ns0bSxet 389 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_point_general
// Access: Public
// Description: The matrix transforms a 3-component point (including
// translation component) and returns the result, as a
// fully general operation.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3682 1 v 1 3615
1380 14 Dtool_Ns0ba7Sw 0 7 1171 3614 2314 14 Dtool_Ns0ba7Sw 402 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_vec
// Access: Public
// Description: 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 3682 1 v 1 3615
1381 14 Dtool_Ns0bIUtK 0 7 1172 3614 2314 14 Dtool_Ns0bIUtK 386 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_vec_general
// Access: Public
// Description: The matrix transforms a 3-component vector (without
// translation component) and returns the result, as a
// fully general operation.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3682 1 v 1 3615
1382 14 Dtool_Ns0buEmN 0 4 1173 3573 0 14 Dtool_Ns0buEmN 315 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_in_place
// Access: Public
// Description: 4-component vector or point times matrix. This is a
// fully general operation.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3682 1 v 1 3641
1383 14 Dtool_Ns0bXa9N 0 4 1174 3573 0 14 Dtool_Ns0bXa9N 386 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_point_in_place
// Access: Public
// Description: The matrix transforms a 3-component point (including
// translation component). This assumes the matrix is
// an affine transform.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3682 1 v 1 3614
1384 14 Dtool_Ns0b9QYo 0 4 1175 3573 0 14 Dtool_Ns0b9QYo 358 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_point_general_in_place
// Access: Public
// Description: The matrix transforms a 3-component point (including
// translation component), as a fully general operation.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3682 1 v 1 3614
1385 14 Dtool_Ns0bUU8O 0 4 1176 3573 0 14 Dtool_Ns0bUU8O 388 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_vec_in_place
// Access: Public
// Description: The matrix transforms a 3-component vector (without
// translation component). This assumes the matrix is
// an orthonormal transform.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3682 1 v 1 3614
1386 14 Dtool_Ns0bf4zB 0 4 1177 3573 0 14 Dtool_Ns0bf4zB 355 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_vec_general_in_place
// Access: Public
// Description: The matrix transforms a 3-component vector (without
// translation component), as a fully general operation.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3682 1 v 1 3614
1387 14 Dtool_Ns0bcv3G 0 4 1178 3573 0 14 Dtool_Ns0bcv3G 25 // this = other1 * other2 3 4 this 3 3688 6 other1 1 3682 6 other2 1 3682
1388 14 Dtool_Ns0bcFZQ 0 7 1179 3688 3201 14 Dtool_Ns0bcFZQ 221 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::matrix * matrix
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3682 5 other 1 3682
1389 14 Dtool_Ns0bclu8 0 7 1179 3688 3201 14 Dtool_Ns0bclu8 221 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::matrix * scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3682 6 scalar 1 3571
1390 14 Dtool_Ns0bMKP_ 0 7 1180 3688 3201 14 Dtool_Ns0bMKP_ 221 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::matrix / scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3682 6 scalar 1 3571
1391 14 Dtool_Ns0bEv0o 0 6 1181 3688 0 14 Dtool_Ns0bEv0o 275 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::matrix += matrix
// Access: Public
// Description: Performs a memberwise addition between two matrices.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3688 5 other 1 3682
1392 14 Dtool_Ns0bkjbp 0 6 1182 3688 0 14 Dtool_Ns0bkjbp 275 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::matrix -= matrix
// Access: Public
// Description: Performs a memberwise addition between two matrices.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3688 5 other 1 3682
1393 14 Dtool_Ns0b0Ogo 0 6 1183 3688 0 14 Dtool_Ns0b0Ogo 222 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::matrix *= matrix
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3688 5 other 1 3682
1394 14 Dtool_Ns0bNn8Q 0 6 1183 3688 0 14 Dtool_Ns0bNn8Q 222 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::matrix *= scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3688 6 scalar 1 3571
1395 14 Dtool_Ns0bdceS 0 6 1184 3688 0 14 Dtool_Ns0bdceS 222 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::matrix /= scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3688 6 scalar 1 3571
1396 14 Dtool_Ns0brI6L 0 4 1185 3573 0 14 Dtool_Ns0brI6L 220 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::transpose_from
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3688 5 other 1 3682
1397 14 Dtool_Ns0b9umP 0 4 1186 3573 0 14 Dtool_Ns0b9umP 224 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::transpose_in_place
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3688
1398 14 Dtool_Ns0bVtqe 0 6 1187 3578 0 14 Dtool_Ns0bVtqe 803 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::invert_from
// Access: Public
// Description: 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 3688 5 other 1 3682
1399 14 Dtool_Ns0bKvHn 0 6 1188 3578 0 14 Dtool_Ns0bKvHn 931 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::invert_affine_from
// Access: Public
// Description: Performs an invert of the indicated matrix, storing
// the result in this matrix. The calculation is only
// correct of the other matrix represents an affine
// transform.
//
// 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.
////////////////////////////////////////////////////////////////////
// bugbug: we could optimize this for rotation/scale/translation matrices
// (transpose upper 3x3 and take negative of translation component) 2 4 this 3 3688 5 other 1 3682
1400 14 Dtool_Ns0bhOP_ 0 6 1189 3578 0 14 Dtool_Ns0bhOP_ 361 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::invert_in_place
// Access: Public
// Description: Inverts the current matrix. Returns true if the
// inverse is successful, false if the matrix was
// singular.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3688
1401 14 Dtool_Ns0bWTTf 0 4 1190 3573 0 14 Dtool_Ns0bWTTf 252 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::accumulate
// Access: Public
// Description: Computes (*this) += other * weight.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3688 5 other 1 3682 6 weight 1 3571
1402 14 Dtool_Ns0brczP 0 6 1191 3682 0 14 Dtool_Ns0brczP 388 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::ident_mat
// Access: Public, Static
// Description: Returns an identity matrix.
//
// This function definition must appear first, since
// some inline functions below take advantage of it.
//////////////////////////////////////////////////////////////////// 0
1403 14 Dtool_Ns0bmxV_ 0 6 1192 3682 0 14 Dtool_Ns0bmxV_ 258 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::ones_mat
// Access: Public, Static
// Description: Returns an matrix filled with ones.
//////////////////////////////////////////////////////////////////// 0
1404 14 Dtool_Ns0bLEvk 0 6 1193 3682 0 14 Dtool_Ns0bLEvk 260 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::zeros_mat
// Access: Public, Static
// Description: Returns an matrix filled with zeros.
//////////////////////////////////////////////////////////////////// 0
1405 14 Dtool_Ns0bTiW8 0 4 1194 3573 0 14 Dtool_Ns0bTiW8 303 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_translate_mat
// Access: Public
// Description: Fills mat with a matrix that applies the indicated
// translation.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3688 5 trans 1 3615
1406 14 Dtool_Ns0bPSpy 0 4 1195 3573 0 14 Dtool_Ns0bPSpy 362 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_rotate_mat
// Access: Public
// Description: Sets mat to a matrix that rotates by the given angle
// in degrees counterclockwise about the indicated
// vector.
//////////////////////////////////////////////////////////////////// 4 4 this 3 3688 5 angle 1 3571 4 axis 1 3615 2 cs 1 3529
1407 14 Dtool_Ns0bdCF8 0 4 1195 3573 0 14 Dtool_Ns0bdCF8 362 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_rotate_mat
// Access: Public
// Description: Sets mat to a matrix that rotates by the given angle
// in degrees counterclockwise about the indicated
// vector.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3688 5 angle 1 3571 4 axis 1 3615
1408 14 Dtool_Ns0bBbgB 0 4 1196 3573 0 14 Dtool_Ns0bBbgB 412 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_rotate_mat_normaxis
// Access: Public
// Description: 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 3688 5 angle 1 3571 4 axis 1 3615 2 cs 1 3529
1409 14 Dtool_Ns0biru6 0 4 1196 3573 0 14 Dtool_Ns0biru6 412 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_rotate_mat_normaxis
// Access: Public
// Description: Fills mat with a matrix that rotates by the given
// angle in degrees counterclockwise about the indicated
// vector. Assumes axis has been prenormalized.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3688 5 angle 1 3571 4 axis 1 3615
1410 14 Dtool_Ns0bBWav 0 4 1197 3573 0 14 Dtool_Ns0bBWav 319 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_scale_mat
// Access: Public
// Description: Fills mat with a matrix that applies the indicated
// scale in each of the three axes.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3688 5 scale 1 3615
1411 14 Dtool_Ns0b_IMl 0 4 1198 3573 0 14 Dtool_Ns0b_IMl 321 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_shear_mat
// Access: Public
// Description: Fills mat with a matrix that applies the indicated
// shear in each of the three planes.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3688 5 shear 1 3615 2 cs 1 3529
1412 14 Dtool_Ns0b6J2L 0 4 1198 3573 0 14 Dtool_Ns0b6J2L 321 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_shear_mat
// Access: Public
// Description: Fills mat with a matrix that applies the indicated
// shear in each of the three planes.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3688 5 shear 1 3615
1413 14 Dtool_Ns0baDQm 0 4 1199 3573 0 14 Dtool_Ns0baDQm 317 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_scale_shear_mat
// Access: Public, Static
// Description: Fills mat with a matrix that applies the indicated
// scale and shear.
//////////////////////////////////////////////////////////////////// 4 4 this 3 3688 5 scale 1 3615 5 shear 1 3615 2 cs 1 3529
1414 14 Dtool_Ns0bCH7L 0 4 1199 3573 0 14 Dtool_Ns0bCH7L 317 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_scale_shear_mat
// Access: Public, Static
// Description: Fills mat with a matrix that applies the indicated
// scale and shear.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3688 5 scale 1 3615 5 shear 1 3615
1415 14 Dtool_Ns0bjyza 0 7 1200 3688 3201 14 Dtool_Ns0bjyza 300 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::translate_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// translation.
//////////////////////////////////////////////////////////////////// 1 5 trans 1 3615
1416 14 Dtool_Ns0bQ9hS 0 7 1200 3688 3201 14 Dtool_Ns0bQ9hS 300 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::translate_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// translation.
//////////////////////////////////////////////////////////////////// 3 2 tx 1 3571 2 ty 1 3571 2 tz 1 3571
1417 14 Dtool_Ns0b8AQA 0 7 1201 3688 3201 14 Dtool_Ns0b8AQA 345 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::rotate_mat
// Access: Public, Static
// Description: Returns a matrix that rotates by the given angle in
// degrees counterclockwise about the indicated vector.
//////////////////////////////////////////////////////////////////// 3 5 angle 1 3571 4 axis 1 3615 2 cs 1 3529
1418 14 Dtool_Ns0bzUuW 0 7 1201 3688 3201 14 Dtool_Ns0bzUuW 345 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::rotate_mat
// Access: Public, Static
// Description: Returns a matrix that rotates by the given angle in
// degrees counterclockwise about the indicated vector.
//////////////////////////////////////////////////////////////////// 2 5 angle 1 3571 4 axis 1 3615
1419 14 Dtool_Ns0bSFBu 0 7 1202 3688 3201 14 Dtool_Ns0bSFBu 408 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::rotate_mat_normaxis
// Access: Public, Static
// Description: 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 3571 4 axis 1 3615 2 cs 1 3529
1420 14 Dtool_Ns0bl_5A 0 7 1202 3688 3201 14 Dtool_Ns0bl_5A 408 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::rotate_mat_normaxis
// Access: Public, Static
// Description: Returns a matrix that rotates by the given angle in
// degrees counterclockwise about the indicated vector.
// Assumes axis has been prenormalized.
//////////////////////////////////////////////////////////////////// 2 5 angle 1 3571 4 axis 1 3615
1421 14 Dtool_Ns0bOJ8L 0 7 1203 3688 3201 14 Dtool_Ns0bOJ8L 316 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// scale in each of the three axes.
//////////////////////////////////////////////////////////////////// 1 5 scale 1 3615
1422 14 Dtool_Ns0bgj9H 0 7 1203 3688 3201 14 Dtool_Ns0bgj9H 298 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// uniform scale.
//////////////////////////////////////////////////////////////////// 1 5 scale 1 3571
1423 14 Dtool_Ns0bwaqH 0 7 1203 3688 3201 14 Dtool_Ns0bwaqH 316 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// scale in each of the three axes.
//////////////////////////////////////////////////////////////////// 3 2 sx 1 3571 2 sy 1 3571 2 sz 1 3571
1424 14 Dtool_Ns0b46Pp 0 7 1204 3688 3201 14 Dtool_Ns0b46Pp 318 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::shear_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// shear in each of the three planes.
//////////////////////////////////////////////////////////////////// 2 5 shear 1 3615 2 cs 1 3529
1425 14 Dtool_Ns0bJ0aS 0 7 1204 3688 3201 14 Dtool_Ns0bJ0aS 318 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::shear_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// shear in each of the three planes.
//////////////////////////////////////////////////////////////////// 1 5 shear 1 3615
1426 14 Dtool_Ns0blQ9A 0 7 1204 3688 3201 14 Dtool_Ns0blQ9A 318 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::shear_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// shear in each of the three planes.
//////////////////////////////////////////////////////////////////// 4 4 shxy 1 3571 4 shxz 1 3571 4 shyz 1 3571 2 cs 1 3529
1427 14 Dtool_Ns0bxxJO 0 7 1204 3688 3201 14 Dtool_Ns0bxxJO 318 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::shear_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// shear in each of the three planes.
//////////////////////////////////////////////////////////////////// 3 4 shxy 1 3571 4 shxz 1 3571 4 shyz 1 3571
1428 14 Dtool_Ns0bal56 0 7 1205 3688 3201 14 Dtool_Ns0bal56 306 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_shear_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// scale and shear.
//////////////////////////////////////////////////////////////////// 3 5 scale 1 3615 5 shear 1 3615 2 cs 1 3529
1429 14 Dtool_Ns0bgpnU 0 7 1205 3688 3201 14 Dtool_Ns0bgpnU 306 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_shear_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// scale and shear.
//////////////////////////////////////////////////////////////////// 2 5 scale 1 3615 5 shear 1 3615
1430 14 Dtool_Ns0b9lik 0 7 1205 3688 3201 14 Dtool_Ns0b9lik 306 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_shear_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// scale and shear.
//////////////////////////////////////////////////////////////////// 7 2 sx 1 3571 2 sy 1 3571 2 sz 1 3571 4 shxy 1 3571 4 shxz 1 3571 4 shyz 1 3571 2 cs 1 3529
1431 14 Dtool_Ns0bi__t 0 7 1205 3688 3201 14 Dtool_Ns0bi__t 306 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_shear_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// scale and shear.
//////////////////////////////////////////////////////////////////// 6 2 sx 1 3571 2 sy 1 3571 2 sz 1 3571 4 shxy 1 3571 4 shxz 1 3571 4 shyz 1 3571
1432 14 Dtool_Ns0blIST 0 6 1206 3682 0 14 Dtool_Ns0blIST 339 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::y_to_z_up_mat
// Access: Public, Static
// Description: Returns a matrix that transforms from the Y-up
// coordinate system to the Z-up coordinate system.
//////////////////////////////////////////////////////////////////// 0
1433 14 Dtool_Ns0blG2Q 0 6 1207 3682 0 14 Dtool_Ns0blG2Q 339 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::z_to_y_up_mat
// Access: Public, Static
// Description: Returns a matrix that transforms from the Y-up
// coordinate system to the Z-up coordinate system.
//////////////////////////////////////////////////////////////////// 0
1434 14 Dtool_Ns0bgP4Q 0 6 1208 3682 0 14 Dtool_Ns0bgP4Q 347 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::convert_mat
// Access: Public, Static
// Description: Returns a matrix that transforms from the indicated
// coordinate system to the indicated coordinate system.
//////////////////////////////////////////////////////////////////// 2 4 from 1 3529 2 to 1 3529
1435 14 Dtool_Ns0b4Lgj 0 6 1209 3578 0 14 Dtool_Ns0b4Lgj 339 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::almost_equal
// Access: Public
// Description: Returns true if two matrices are memberwise equal
// within a default tolerance based on the numeric type.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3682 5 other 1 3682
1436 14 Dtool_Ns0b9SSI 0 6 1209 3578 0 14 Dtool_Ns0b9SSI 315 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::almost_equal
// Access: Public
// Description: Returns true if two matrices are memberwise equal
// within a specified tolerance.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3682 5 other 1 3682 9 threshold 1 3571
1437 14 Dtool_Ns0b0k4O 0 4 1210 3573 0 14 Dtool_Ns0b0k4O 212 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::output
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3682 3 out 1 3581
1438 14 Dtool_Ns0bwC_F 0 4 1211 3573 0 14 Dtool_Ns0bwC_F 211 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::write
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3682 3 out 1 3581 12 indent_level 1 3577
1439 14 Dtool_Ns0bsZZP 0 4 1211 3573 0 14 Dtool_Ns0bsZZP 211 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::write
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3682 3 out 1 3581
1440 14 Dtool_Ns0beYaR 0 4 1212 3573 0 14 Dtool_Ns0beYaR 0 3 4 this 3 3682 3 out 1 3581 10 class_name 1 3576
1441 14 Dtool_Ns0bJ1rW 0 4 1213 3573 0 14 Dtool_Ns0bJ1rW 268 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::generate_hash
// Access: Public
// Description: Adds the vector to the indicated hash generator.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3682 7 hashgen 1 3579
1442 14 Dtool_Ns0bmfB9 0 4 1213 3573 0 14 Dtool_Ns0bmfB9 268 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::generate_hash
// Access: Public
// Description: Adds the vector to the indicated hash generator.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3682 7 hashgen 1 3579 5 scale 1 3571
1443 14 Dtool_Ns0bstRA 0 4 1214 3573 0 14 Dtool_Ns0bstRA 641 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::write_datagram_fixed
// Access: Published
// Description: 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 3682 11 destination 1 3583
1444 14 Dtool_Ns0bg9Jk 0 4 1215 3573 0 14 Dtool_Ns0bg9Jk 347 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::read_datagram_fixed
// Access: Published
// Description: Reads the matrix from the Datagram using get_float32()
// or get_float64(). See write_datagram_fixed().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3688 4 scan 1 3585
1445 14 Dtool_Ns0bZGNw 0 4 1216 3573 0 14 Dtool_Ns0bZGNw 463 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::write_datagram
// Access: Published
// Description: 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 3682 11 destination 1 3583
1446 14 Dtool_Ns0b49vw 0 4 1217 3573 0 14 Dtool_Ns0b49vw 279 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::read_datagram
// Access: Published
// Description: Reads the matrix from the Datagram using get_stdfloat().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3688 6 source 1 3585
1447 14 Dtool_Ns0bI3r6 0 7 1218 3588 0 14 Dtool_Ns0bI3r6 0 0
1448 14 Dtool_Ns0broGM 0 4 1128 3573 0 14 Dtool_Ns0broGM 226 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Row::operator []
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3691 1 i 1 3577
1449 14 Dtool_Ns0bUt2t 0 6 1128 3571 0 14 Dtool_Ns0bUt2t 226 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Row::operator []
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3693 1 i 1 3577
1450 14 Dtool_Ns0bgdD9 0 4 1129 3573 0 14 Dtool_Ns0bgdD9 0 3 4 this 3 3691 1 i 1 3577 1 v 1 3571
1451 14 Dtool_Ns0bOFWo 0 6 1130 3577 0 14 Dtool_Ns0bOFWo 271 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Row::size
// Access: Public, Static
// Description: Returns 4: the number of columns of a LMatrix4.
//////////////////////////////////////////////////////////////////// 0
1452 14 Dtool_Ns0bK2Kw 0 6 1133 3571 0 14 Dtool_Ns0bK2Kw 227 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::CRow::operator []
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3695 1 i 1 3577
1453 14 Dtool_Ns0bSfy_ 0 6 1134 3577 0 14 Dtool_Ns0bSfy_ 272 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::CRow::size
// Access: Public, Static
// Description: Returns 4: the number of columns of a LMatrix4.
//////////////////////////////////////////////////////////////////// 0
1454 14 Dtool_Ns0bcyhV 0 7 1221 3697 3209 14 Dtool_Ns0bcyhV 234 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::Default Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 0
1455 14 Dtool_Ns0b7kWw 0 7 1221 3697 3209 14 Dtool_Ns0b7kWw 231 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::Copy Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3682
1456 14 Dtool_Ns0bFuRt 0 7 1221 3697 3209 14 Dtool_Ns0bFuRt 231 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::Copy Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3689
1457 14 Dtool_Ns0bS52S 0 7 1221 3697 3209 14 Dtool_Ns0bS52S 226 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 16 3 e00 1 3571 3 e01 1 3571 3 e02 1 3571 3 e03 1 3571 3 e10 1 3571 3 e11 1 3571 3 e12 1 3571 3 e13 1 3571 3 e20 1 3571 3 e21 1 3571 3 e22 1 3571 3 e23 1 3571 3 e30 1 3571 3 e31 1 3571 3 e32 1 3571 3 e33 1 3571
1458 14 Dtool_Ns0bs_r9 0 6 1222 3697 0 14 Dtool_Ns0bs_r9 239 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::Copy Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3697 4 copy 1 3682
1459 14 Dtool_Ns0bdaVs 0 6 1222 3697 0 14 Dtool_Ns0bdaVs 239 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::Copy Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3697 4 copy 1 3689
1460 14 Dtool_Ns0bkKYz 0 4 1223 3573 0 14 Dtool_Ns0bkKYz 221 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::set
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 17 4 this 3 3697 3 e00 1 3571 3 e01 1 3571 3 e02 1 3571 3 e03 1 3571 3 e10 1 3571 3 e11 1 3571 3 e12 1 3571 3 e13 1 3571 3 e20 1 3571 3 e21 1 3571 3 e22 1 3571 3 e23 1 3571 3 e30 1 3571 3 e31 1 3571 3 e32 1 3571 3 e33 1 3571
1461 14 Dtool_Ns0biXNG 0 4 1224 3573 0 14 Dtool_Ns0biXNG 235 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::Indexing operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3697 3 row 1 3577 3 col 1 3577
1462 14 Dtool_Ns0b6Ka6 0 6 1224 3571 0 14 Dtool_Ns0b6Ka6 235 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::Indexing operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3689 3 row 1 3577 3 col 1 3577
1463 14 Dtool_Ns0bk_OW 0 4 1225 3573 0 14 Dtool_Ns0bk_OW 410 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::get_data
// Access: Published
// Description: 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 3689
1464 14 Dtool_Ns0biJJW 0 6 1226 3577 0 14 Dtool_Ns0biJJW 291 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::get_num_components
// Access: Published
// Description: Returns the number of elements in the matrix, sixteen.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3689
1465 14 Dtool_Ns0bX_d_ 0 7 1227 3588 0 14 Dtool_Ns0bX_d_ 0 0
1466 14 Dtool_Ns0bHKtQ 0 7 1239 3698 3290 14 Dtool_Ns0bHKtQ 228 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Default Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 0
1467 14 Dtool_Ns0bgwPr 0 7 1239 3698 3290 14 Dtool_Ns0bgwPr 225 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Copy Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 5 other 1 3699
1468 14 Dtool_Ns0b1oPv 0 7 1239 3698 3290 14 Dtool_Ns0b1oPv 220 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 9 3 e00 1 3592 3 e01 1 3592 3 e02 1 3592 3 e10 1 3592 3 e11 1 3592 3 e12 1 3592 3 e20 1 3592 3 e21 1 3592 3 e22 1 3592
1469 14 Dtool_Ns0b9QZH 0 6 1240 3698 0 14 Dtool_Ns0b9QZH 233 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Copy Assignment Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3698 5 other 1 3699
1470 14 Dtool_Ns0bByUJ 0 6 1240 3698 0 14 Dtool_Ns0bByUJ 233 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Fill Assignment Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3698 10 fill_value 1 3592
1471 14 Dtool_Ns0beI6s 0 4 1241 3573 0 14 Dtool_Ns0beI6s 0 2 4 this 3 3698 4 size 1 3572
1472 14 Dtool_Ns0bQ4Q7 0 6 1244 3574 0 14 Dtool_Ns0bQ4Q7 0 2 4 this 3 3699 4 self 1 3574
1473 14 Dtool_Ns0btMiW 0 4 1245 3573 0 14 Dtool_Ns0btMiW 391 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::fill
// Access: Published
// Description: 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 3698 10 fill_value 1 3592
1474 14 Dtool_Ns0bYSjO 0 4 1246 3573 0 14 Dtool_Ns0bYSjO 212 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::set
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 10 4 this 3 3698 3 e00 1 3592 3 e01 1 3592 3 e02 1 3592 3 e10 1 3592 3 e11 1 3592 3 e12 1 3592 3 e20 1 3592 3 e21 1 3592 3 e22 1 3592
1475 14 Dtool_Ns0bMjRK 0 4 1247 3573 0 14 Dtool_Ns0bMjRK 329 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::set_row
// Access: Published
// Description: Replaces the indicated row of the matrix from a
// two-component vector, ignoring the last column.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3698 3 row 1 3577 1 v 1 3590
1476 14 Dtool_Ns0b7jBs 0 4 1247 3573 0 14 Dtool_Ns0b7jBs 305 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::set_row
// Access: Published
// Description: Replaces the indicated row of the matrix from a
// three-component vector.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3698 3 row 1 3577 1 v 1 3618
1477 14 Dtool_Ns0bhFlR 0 4 1248 3573 0 14 Dtool_Ns0bhFlR 332 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::set_column
// Access: Published
// Description: Replaces the indicated column of the matrix from a
// two-component vector, ignoring the last row.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3698 3 col 1 3577 1 v 1 3590
1478 14 Dtool_Ns0bcGVz 0 4 1248 3573 0 14 Dtool_Ns0bcGVz 311 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::set_column
// Access: Published
// Description: Replaces the indicated column of the matrix from a
// three-component vector.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3698 3 col 1 3577 1 v 1 3618
1479 14 Dtool_Ns0bFRjb 0 4 1249 3573 0 14 Dtool_Ns0bFRjb 301 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_row
// Access: Published
// Description: Stores the indicated row of the matrix as a
// three-component vector.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3699 10 result_vec 1 3617 3 row 1 3577
1480 14 Dtool_Ns0bpQuV 0 7 1249 3617 2386 14 Dtool_Ns0bpQuV 302 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_row
// Access: Published
// Description: Returns the indicated row of the matrix as a
// three-component vector.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3699 3 row 1 3577
1481 14 Dtool_Ns0bqvBd 0 7 1250 3617 2386 14 Dtool_Ns0bqvBd 305 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_col
// Access: Published
// Description: Returns the indicated column of the matrix as a
// three-component vector.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3699 3 col 1 3577
1482 14 Dtool_Ns0bCqyE 0 7 1251 3589 2094 14 Dtool_Ns0bCqyE 327 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_row2
// Access: Published
// Description: Returns the indicated row of the matrix as a
// two-component vector, ignoring the last column.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3699 3 row 1 3577
1483 14 Dtool_Ns0bxKGM 0 7 1252 3589 2094 14 Dtool_Ns0bxKGM 327 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_col2
// Access: Published
// Description: Returns the indicated column of the matrix as a
// two-component vector, ignoring the last row.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3699 3 col 1 3577
1484 14 Dtool_Ns0bYAPO 0 4 1253 3573 0 14 Dtool_Ns0bYAPO 226 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Indexing operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3698 3 row 1 3577 3 col 1 3577
1485 14 Dtool_Ns0bnEAw 0 6 1253 3592 0 14 Dtool_Ns0bnEAw 226 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Indexing operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3699 3 row 1 3577 3 col 1 3577
1486 14 Dtool_Ns0b80zz 0 7 1254 3701 3213 14 Dtool_Ns0b80zz 226 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Indexing Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3698 1 i 1 3577
1487 14 Dtool_Ns0b1LsE 0 7 1254 3702 3216 14 Dtool_Ns0b1LsE 226 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Indexing Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3699 1 i 1 3577
1488 14 Dtool_Ns0bDT9B 0 6 1255 3577 0 14 Dtool_Ns0bDT9B 266 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::size
// Access: Published, Static
// Description: Returns 3: the number of rows of a LMatrix3.
//////////////////////////////////////////////////////////////////// 0
1489 14 Dtool_Ns0bu3JQ 0 6 1256 3578 0 14 Dtool_Ns0bu3JQ 310 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::is_nan
// Access: Published
// Description: Returns true if any component of the matrix is
// not-a-number, false otherwise.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3699
1490 14 Dtool_Ns0bu75u 0 6 1257 3592 0 14 Dtool_Ns0bu75u 261 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_cell
// Access: Published
// Description: Returns a particular element of the matrix.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3699 3 row 1 3577 3 col 1 3577
1491 14 Dtool_Ns0bYWBO 0 4 1258 3573 0 14 Dtool_Ns0bYWBO 261 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::set_cell
// Access: Published
// Description: Changes a particular element of the matrix.
//////////////////////////////////////////////////////////////////// 4 4 this 3 3698 3 row 1 3577 3 col 1 3577 5 value 1 3592
1492 14 Dtool_Ns0btvRO 0 4 1259 3573 0 14 Dtool_Ns0btvRO 401 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_data
// Access: Published
// Description: 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 3699
1493 14 Dtool_Ns0bwP0N 0 6 1260 3577 0 14 Dtool_Ns0bwP0N 279 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_num_components
// Access: Published
// Description: Returns the number of elements in the matrix, nine.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3699
1494 14 Dtool_Ns0bGv3o 0 6 1261 3578 0 14 Dtool_Ns0bGv3o 504 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Ordering Operator
// Access: Published
// Description: This performs a lexicographical comparison. It's of
// questionable mathematical meaning, but sometimes has
// a practical purpose for sorting unique vectors,
// especially in an STL container. Also see
// compare_to().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3699 5 other 1 3699
1495 14 Dtool_Ns0bRREu 0 6 1262 3578 0 14 Dtool_Ns0bRREu 226 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Equality Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3699 5 other 1 3699
1496 14 Dtool_Ns0bRgil 0 6 1263 3578 0 14 Dtool_Ns0bRgil 228 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Inequality Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3699 5 other 1 3699
1497 14 Dtool_Ns0bt_3g 0 6 1264 3577 0 14 Dtool_Ns0bt_3g 320 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::compare_to
// Access: Published
// Description: This flavor of compare_to uses a default threshold
// value based on the numeric type.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3699 5 other 1 3699
1498 14 Dtool_Ns0bSbnp 0 6 1264 3577 0 14 Dtool_Ns0bSbnp 504 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::compare_to
// Access: Published
// Description: 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 3699 5 other 1 3699 9 threshold 1 3592
1499 14 Dtool_Ns0bt7oj 0 6 1265 3572 0 14 Dtool_Ns0bt7oj 256 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3699
1500 14 Dtool_Ns0bACnK 0 6 1265 3572 0 14 Dtool_Ns0bACnK 256 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::get_hash
// Access: Published
// Description: Returns a suitable hash for phash_map.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3699 9 threshold 1 3592
1501 14 Dtool_Ns0bQfHg 0 6 1266 3572 0 14 Dtool_Ns0bQfHg 256 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3699 4 hash 1 3572
1502 14 Dtool_Ns0be2a4 0 6 1266 3572 0 14 Dtool_Ns0be2a4 256 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::add_hash
// Access: Published
// Description: Adds the vector into the running hash.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3699 4 hash 1 3572 9 threshold 1 3592
1503 14 Dtool_Ns0buQNQ 0 7 1267 3617 2386 14 Dtool_Ns0buQNQ 256 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform
// Access: Published
// Description: 3-component vector or point times matrix.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3699 1 v 1 3618
1504 14 Dtool_Ns0bS1BJ 0 7 1268 3589 2094 14 Dtool_Ns0bS1BJ 403 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_point
// Access: Published
// Description: 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 3699 1 v 1 3590
1505 14 Dtool_Ns0bRGPD 0 7 1269 3589 2094 14 Dtool_Ns0bRGPD 400 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_vec
// Access: Published
// Description: 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 3699 1 v 1 3590
1506 14 Dtool_Ns0bDiSD 0 7 1269 3617 2386 14 Dtool_Ns0bDiSD 447 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_vec
// Access: Published
// Description: 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 3699 1 v 1 3618
1507 14 Dtool_Ns0bsKJA 0 7 1270 3617 2386 14 Dtool_Ns0bsKJA 389 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_vec_general
// Access: Published
// Description: The matrix transforms a 3-component vector (without
// translation component) and returns the result, as a
// fully general operation.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3699 1 v 1 3618
1508 14 Dtool_Ns0bqJFe 0 4 1271 3573 0 14 Dtool_Ns0bqJFe 265 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_in_place
// Access: Published
// Description: 3-component vector or point times matrix.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3699 1 v 1 3617
1509 14 Dtool_Ns0bqhFm 0 4 1272 3573 0 14 Dtool_Ns0bqhFm 389 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_point_in_place
// Access: Published
// Description: The matrix transforms a 2-component point (including
// translation component). This assumes the matrix is
// an affine transform.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3699 1 v 1 3589
1510 14 Dtool_Ns0bu6G0 0 4 1273 3573 0 14 Dtool_Ns0bu6G0 386 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_vec_in_place
// Access: Published
// Description: The matrix transforms a 2-component vector (without
// translation component). This assumes the matrix is
// an affine transform.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3699 1 v 1 3589
1511 14 Dtool_Ns0bMVHk 0 4 1273 3573 0 14 Dtool_Ns0bMVHk 416 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_vec_in_place
// Access: Published
// Description: 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 3699 1 v 1 3617
1512 14 Dtool_Ns0bhQR7 0 4 1274 3573 0 14 Dtool_Ns0bhQR7 358 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::xform_vec_general_in_place
// Access: Published
// Description: The matrix transforms a 3-component vector (without
// translation component), as a fully general operation.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3699 1 v 1 3617
1513 14 Dtool_Ns0bZ5GD 0 4 1275 3573 0 14 Dtool_Ns0bZ5GD 25 // this = other1 * other2 3 4 this 3 3698 6 other1 1 3699 6 other2 1 3699
1514 14 Dtool_Ns0bmPXj 0 7 1276 3698 3290 14 Dtool_Ns0bmPXj 224 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::matrix * matrix
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3699 5 other 1 3699
1515 14 Dtool_Ns0b_fQe 0 7 1276 3698 3290 14 Dtool_Ns0b_fQe 224 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::matrix * scalar
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3699 6 scalar 1 3592
1516 14 Dtool_Ns0bOoxf 0 7 1277 3698 3290 14 Dtool_Ns0bOoxf 224 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::matrix / scalar
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3699 6 scalar 1 3592
1517 14 Dtool_Ns0b_07u 0 6 1278 3698 0 14 Dtool_Ns0b_07u 278 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::matrix += matrix
// Access: Published
// Description: Performs a memberwise addition between two matrices.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3698 5 other 1 3699
1518 14 Dtool_Ns0bfIiv 0 6 1279 3698 0 14 Dtool_Ns0bfIiv 281 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::matrix -= matrix
// Access: Published
// Description: Performs a memberwise subtraction between two matrices.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3698 5 other 1 3699
1519 14 Dtool_Ns0bPXnu 0 6 1280 3698 0 14 Dtool_Ns0bPXnu 225 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::matrix *= matrix
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3698 5 other 1 3699
1520 14 Dtool_Ns0bX0Qs 0 6 1280 3698 0 14 Dtool_Ns0bX0Qs 254 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::matrix *= scalar
// Access: Published
// Description: Performs a memberwise scale.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3698 6 scalar 1 3592
1521 14 Dtool_Ns0bndyt 0 6 1281 3698 0 14 Dtool_Ns0bndyt 254 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::matrix /= scalar
// Access: Published
// Description: Performs a memberwise scale.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3698 6 scalar 1 3592
1522 14 Dtool_Ns0bsyFI 0 6 1282 3592 0 14 Dtool_Ns0bsyFI 259 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::determinant
// Access: Published
// Description: Returns the determinant of the matrix.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3699
1523 14 Dtool_Ns0baONp 0 4 1283 3573 0 14 Dtool_Ns0baONp 223 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::transpose_from
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3698 5 other 1 3699
1524 14 Dtool_Ns0blPDl 0 4 1284 3573 0 14 Dtool_Ns0blPDl 227 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::transpose_in_place
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3698
1525 14 Dtool_Ns0bMJyk 0 6 1285 3578 0 14 Dtool_Ns0bMJyk 808 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::invert_from
// Access: Published
// Description: 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 3698 5 other 1 3699
1526 14 Dtool_Ns0bIurU 0 6 1286 3578 0 14 Dtool_Ns0bIurU 364 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::invert_in_place
// Access: Published
// Description: Inverts the current matrix. Returns true if the
// inverse is successful, false if the matrix was
// singular.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3698
1527 14 Dtool_Ns0bmeGt 0 6 1287 3578 0 14 Dtool_Ns0bmeGt 348 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::invert_transpose_from
// Access: Published
// Description: Simultaneously computes the inverse of the indicated
// matrix, and then the transpose of that inverse.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3698 5 other 1 3699
1528 14 Dtool_Ns0bmC_x 0 6 1287 3578 0 14 Dtool_Ns0bmC_x 348 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::invert_transpose_from
// Access: Published
// Description: Simultaneously computes the inverse of the indicated
// matrix, and then the transpose of that inverse.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3698 5 other 1 3703
1529 14 Dtool_Ns0bD_Pl 0 6 1288 3699 0 14 Dtool_Ns0bD_Pl 391 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::ident_mat
// Access: Published, Static
// Description: Returns an identity matrix.
//
// This function definition must appear first, since
// some inline functions below take advantage of it.
//////////////////////////////////////////////////////////////////// 0
1530 14 Dtool_Ns0b9pSu 0 4 1289 3573 0 14 Dtool_Ns0b9pSu 306 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_translate_mat
// Access: Published
// Description: Fills mat with a matrix that applies the indicated
// translation.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3698 5 trans 1 3590
1531 14 Dtool_Ns0b9uiL 0 4 1290 3573 0 14 Dtool_Ns0b9uiL 324 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_rotate_mat
// Access: Published
// Description: Fills mat with a matrix that rotates by the given
// angle in degrees counterclockwise.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3698 5 angle 1 3592
1532 14 Dtool_Ns0b58U8 0 4 1290 3573 0 14 Dtool_Ns0b58U8 368 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_rotate_mat
// Access: Published
// Description: Fills mat with a matrix that rotates by the given
// angle in degrees counterclockwise about the indicated
// vector.
//////////////////////////////////////////////////////////////////// 4 4 this 3 3698 5 angle 1 3592 4 axis 1 3618 2 cs 1 3529
1533 14 Dtool_Ns0bHjMp 0 4 1290 3573 0 14 Dtool_Ns0bHjMp 368 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_rotate_mat
// Access: Published
// Description: Fills mat with a matrix that rotates by the given
// angle in degrees counterclockwise about the indicated
// vector.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3698 5 angle 1 3592 4 axis 1 3618
1534 14 Dtool_Ns0bhzuM 0 4 1291 3573 0 14 Dtool_Ns0bhzuM 320 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_scale_mat
// Access: Published
// Description: Fills mat with a matrix that applies the indicated
// scale in each of the two axes.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3698 5 scale 1 3590
1535 14 Dtool_Ns0bwFvE 0 4 1291 3573 0 14 Dtool_Ns0bwFvE 322 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_scale_mat
// Access: Published
// Description: Fills mat with a matrix that applies the indicated
// scale in each of the three axes.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3698 5 scale 1 3618
1536 14 Dtool_Ns0bcpG4 0 7 1292 3698 3290 14 Dtool_Ns0bcpG4 303 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::translate_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// translation.
//////////////////////////////////////////////////////////////////// 1 5 trans 1 3590
1537 14 Dtool_Ns0bZis7 0 7 1292 3698 3290 14 Dtool_Ns0bZis7 303 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::translate_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// translation.
//////////////////////////////////////////////////////////////////// 2 2 tx 1 3592 2 ty 1 3592
1538 14 Dtool_Ns0bB6hL 0 7 1293 3698 3290 14 Dtool_Ns0bB6hL 321 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::rotate_mat
// Access: Published, Static
// Description: Returns a matrix that rotates by the given angle in
// degrees counterclockwise.
//////////////////////////////////////////////////////////////////// 1 5 angle 1 3592
1539 14 Dtool_Ns0baFgZ 0 7 1293 3698 3290 14 Dtool_Ns0baFgZ 348 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::rotate_mat
// Access: Published, Static
// Description: Returns a matrix that rotates by the given angle in
// degrees counterclockwise about the indicated vector.
//////////////////////////////////////////////////////////////////// 3 5 angle 1 3592 4 axis 1 3618 2 cs 1 3529
1540 14 Dtool_Ns0bz6sm 0 7 1293 3698 3290 14 Dtool_Ns0bz6sm 348 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::rotate_mat
// Access: Published, Static
// Description: Returns a matrix that rotates by the given angle in
// degrees counterclockwise about the indicated vector.
//////////////////////////////////////////////////////////////////// 2 5 angle 1 3592 4 axis 1 3618
1541 14 Dtool_Ns0bkw5e 0 7 1294 3698 3290 14 Dtool_Ns0bkw5e 317 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// scale in each of the two axes.
//////////////////////////////////////////////////////////////////// 1 5 scale 1 3590
1542 14 Dtool_Ns0b2c8e 0 7 1294 3698 3290 14 Dtool_Ns0b2c8e 319 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// scale in each of the three axes.
//////////////////////////////////////////////////////////////////// 1 5 scale 1 3618
1543 14 Dtool_Ns0bKYtY 0 7 1294 3698 3290 14 Dtool_Ns0bKYtY 317 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// scale in each of the two axes.
//////////////////////////////////////////////////////////////////// 2 2 sx 1 3592 2 sy 1 3592
1544 14 Dtool_Ns0bXTVN 0 7 1294 3698 3290 14 Dtool_Ns0bXTVN 319 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// scale in each of the three axes.
//////////////////////////////////////////////////////////////////// 3 2 sx 1 3592 2 sy 1 3592 2 sz 1 3592
1545 14 Dtool_Ns0boZc9 0 4 1295 3573 0 14 Dtool_Ns0boZc9 412 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_rotate_mat_normaxis
// Access: Published
// Description: 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 3698 5 angle 1 3592 4 axis 1 3618 2 cs 1 3529
1546 14 Dtool_Ns0br2Hj 0 4 1295 3573 0 14 Dtool_Ns0br2Hj 412 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_rotate_mat_normaxis
// Access: Published
// Description: Fills mat with a matrix that rotates by the given
// angle in degrees counterclockwise about the indicated
// vector. Assumes axis has been normalized.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3698 5 angle 1 3592 4 axis 1 3618
1547 14 Dtool_Ns0byh6r 0 7 1296 3698 3290 14 Dtool_Ns0byh6r 408 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::rotate_mat_normaxis
// Access: Published, Static
// Description: 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 3592 4 axis 1 3618 2 cs 1 3529
1548 14 Dtool_Ns0bYlqF 0 7 1296 3698 3290 14 Dtool_Ns0bYlqF 408 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::rotate_mat_normaxis
// Access: Published, Static
// Description: Returns a matrix that rotates by the given angle in
// degrees counterclockwise about the indicated vector.
// Assumes axis has been normalized.
//////////////////////////////////////////////////////////////////// 2 5 angle 1 3592 4 axis 1 3618
1549 14 Dtool_Ns0bf5e6 0 4 1297 3573 0 14 Dtool_Ns0bf5e6 324 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_shear_mat
// Access: Published
// Description: Fills mat with a matrix that applies the indicated
// shear in each of the three planes.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3698 5 shear 1 3618 2 cs 1 3529
1550 14 Dtool_Ns0ba_Ih 0 4 1297 3573 0 14 Dtool_Ns0ba_Ih 324 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_shear_mat
// Access: Published
// Description: Fills mat with a matrix that applies the indicated
// shear in each of the three planes.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3698 5 shear 1 3618
1551 14 Dtool_Ns0bQoP8 0 7 1298 3698 3290 14 Dtool_Ns0bQoP8 321 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::shear_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// shear in each of the three planes.
//////////////////////////////////////////////////////////////////// 2 5 shear 1 3618 2 cs 1 3529
1552 14 Dtool_Ns0bxJal 0 7 1298 3698 3290 14 Dtool_Ns0bxJal 321 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::shear_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// shear in each of the three planes.
//////////////////////////////////////////////////////////////////// 1 5 shear 1 3618
1553 14 Dtool_Ns0b1tYK 0 7 1298 3698 3290 14 Dtool_Ns0b1tYK 321 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::shear_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// shear in each of the three planes.
//////////////////////////////////////////////////////////////////// 4 4 shxy 1 3592 4 shxz 1 3592 4 shyz 1 3592 2 cs 1 3529
1554 14 Dtool_Ns0bn6zT 0 7 1298 3698 3290 14 Dtool_Ns0bn6zT 321 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::shear_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// shear in each of the three planes.
//////////////////////////////////////////////////////////////////// 3 4 shxy 1 3592 4 shxz 1 3592 4 shyz 1 3592
1555 14 Dtool_Ns0bon65 0 4 1299 3573 0 14 Dtool_Ns0bon65 312 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_scale_shear_mat
// Access: Published
// Description: Fills mat with a matrix that applies the indicated
// scale and shear.
//////////////////////////////////////////////////////////////////// 4 4 this 3 3698 5 scale 1 3618 5 shear 1 3618 2 cs 1 3529
1556 14 Dtool_Ns0b9Qnf 0 4 1299 3573 0 14 Dtool_Ns0b9Qnf 312 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_scale_shear_mat
// Access: Published
// Description: Fills mat with a matrix that applies the indicated
// scale and shear.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3698 5 scale 1 3618 5 shear 1 3618
1557 14 Dtool_Ns0bipF0 0 7 1300 3698 3290 14 Dtool_Ns0bipF0 309 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_shear_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// scale and shear.
//////////////////////////////////////////////////////////////////// 3 5 scale 1 3618 5 shear 1 3618 2 cs 1 3529
1558 14 Dtool_Ns0bEtzN 0 7 1300 3698 3290 14 Dtool_Ns0bEtzN 309 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_shear_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// scale and shear.
//////////////////////////////////////////////////////////////////// 2 5 scale 1 3618 5 shear 1 3618
1559 14 Dtool_Ns0berao 0 7 1300 3698 3290 14 Dtool_Ns0berao 309 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_shear_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// scale and shear.
//////////////////////////////////////////////////////////////////// 7 2 sx 1 3592 2 sy 1 3592 2 sz 1 3592 4 shxy 1 3592 4 shxz 1 3592 4 shyz 1 3592 2 cs 1 3529
1560 14 Dtool_Ns0bkqKC 0 7 1300 3698 3290 14 Dtool_Ns0bkqKC 309 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_shear_mat
// Access: Published, Static
// Description: Returns a matrix that applies the indicated
// scale and shear.
//////////////////////////////////////////////////////////////////// 6 2 sx 1 3592 2 sy 1 3592 2 sz 1 3592 4 shxy 1 3592 4 shxz 1 3592 4 shyz 1 3592
1561 14 Dtool_Ns0b4uUm 0 6 1301 3699 0 14 Dtool_Ns0b4uUm 350 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::convert_mat
// Access: Published, Static
// Description: Returns a matrix that transforms from the indicated
// coordinate system to the indicated coordinate system.
//////////////////////////////////////////////////////////////////// 2 4 from 1 3529 2 to 1 3529
1562 14 Dtool_Ns0brIZO 0 6 1302 3578 0 14 Dtool_Ns0brIZO 342 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::almost_equal
// Access: Published
// Description: Returns true if two matrices are memberwise equal
// within a default tolerance based on the numeric type.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3699 5 other 1 3699
1563 14 Dtool_Ns0bpOQZ 0 6 1302 3578 0 14 Dtool_Ns0bpOQZ 318 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::almost_equal
// Access: Published
// Description: Returns true if two matrices are memberwise equal
// within a specified tolerance.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3699 5 other 1 3699 9 threshold 1 3592
1564 14 Dtool_Ns0bcEVk 0 4 1303 3573 0 14 Dtool_Ns0bcEVk 215 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::output
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3699 3 out 1 3581
1565 14 Dtool_Ns0bIhab 0 4 1304 3573 0 14 Dtool_Ns0bIhab 214 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::write
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3699 3 out 1 3581 12 indent_level 1 3577
1566 14 Dtool_Ns0bU41k 0 4 1304 3573 0 14 Dtool_Ns0bU41k 214 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::write
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3699 3 out 1 3581
1567 14 Dtool_Ns0b253m 0 4 1305 3573 0 14 Dtool_Ns0b253m 0 3 4 this 3 3699 3 out 1 3581 10 class_name 1 3576
1568 14 Dtool_Ns0bRKIs 0 4 1306 3573 0 14 Dtool_Ns0bRKIs 271 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::generate_hash
// Access: Published
// Description: Adds the vector to the indicated hash generator.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3699 7 hashgen 1 3579
1569 14 Dtool_Ns0bjVPD 0 4 1306 3573 0 14 Dtool_Ns0bjVPD 271 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::generate_hash
// Access: Published
// Description: Adds the vector to the indicated hash generator.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3699 7 hashgen 1 3579 9 threshold 1 3592
1570 14 Dtool_Ns0b0SuV 0 4 1307 3573 0 14 Dtool_Ns0b0SuV 641 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::write_datagram_fixed
// Access: Published
// Description: 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 3699 11 destination 1 3583
1571 14 Dtool_Ns0bYdl5 0 4 1308 3573 0 14 Dtool_Ns0bYdl5 347 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::read_datagram_fixed
// Access: Published
// Description: Reads the matrix from the Datagram using get_float32()
// or get_float64(). See write_datagram_fixed().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3698 4 scan 1 3585
1572 14 Dtool_Ns0bAnpF 0 4 1309 3573 0 14 Dtool_Ns0bAnpF 463 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::write_datagram
// Access: Published
// Description: 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 3699 11 destination 1 3583
1573 14 Dtool_Ns0bTdLG 0 4 1310 3573 0 14 Dtool_Ns0bTdLG 279 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::read_datagram
// Access: Published
// Description: Reads the matrix from the Datagram using get_stdfloat().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3698 6 source 1 3585
1574 14 Dtool_Ns0bnXHQ 0 7 1311 3588 0 14 Dtool_Ns0bnXHQ 0 0
1575 14 Dtool_Ns0bDIih 0 4 1231 3573 0 14 Dtool_Ns0bDIih 226 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Row::operator []
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3701 1 i 1 3577
1576 14 Dtool_Ns0b7NVD 0 6 1231 3592 0 14 Dtool_Ns0b7NVD 226 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Row::operator []
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3705 1 i 1 3577
1577 14 Dtool_Ns0brNBq 0 4 1232 3573 0 14 Dtool_Ns0brNBq 0 3 4 this 3 3701 1 i 1 3577 1 v 1 3592
1578 14 Dtool_Ns0bmly9 0 6 1233 3577 0 14 Dtool_Ns0bmly9 274 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::Row::size
// Access: Published, Static
// Description: Returns 3: the number of columns of a LMatrix3.
//////////////////////////////////////////////////////////////////// 0
1579 14 Dtool_Ns0bjWnF 0 6 1236 3592 0 14 Dtool_Ns0bjWnF 227 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::CRow::operator []
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3707 1 i 1 3577
1580 14 Dtool_Ns0b98OU 0 6 1237 3577 0 14 Dtool_Ns0b98OU 275 ////////////////////////////////////////////////////////////////////
// Function: LMatrix3::CRow::size
// Access: Published, Static
// Description: Returns 3: the number of columns of a LMatrix3.
//////////////////////////////////////////////////////////////////// 0
1581 14 Dtool_Ns0bVrx_ 0 7 1323 3709 3381 14 Dtool_Ns0bVrx_ 225 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Default Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 0
1582 14 Dtool_Ns0bRSTZ 0 7 1323 3709 3381 14 Dtool_Ns0bRSTZ 228 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Constructor, upper 3x3
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 6 upper3 1 3699
1583 14 Dtool_Ns0by2xB 0 7 1323 3709 3381 14 Dtool_Ns0by2xB 245 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Constructor, upper 3x3 plus translation
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 6 upper3 1 3699 5 trans 1 3618
1584 14 Dtool_Ns0bpOT1 0 7 1323 3709 3381 14 Dtool_Ns0bpOT1 222 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Copy Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 5 other 1 3703
1585 14 Dtool_Ns0baNAR 0 7 1323 3709 3381 14 Dtool_Ns0baNAR 225 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Copy Constructor
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 1 5 other 1 3710
1586 14 Dtool_Ns0bLfZS 0 7 1323 3709 3381 14 Dtool_Ns0bLfZS 217 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 16 3 e00 1 3592 3 e01 1 3592 3 e02 1 3592 3 e03 1 3592 3 e10 1 3592 3 e11 1 3592 3 e12 1 3592 3 e13 1 3592 3 e20 1 3592 3 e21 1 3592 3 e22 1 3592 3 e23 1 3592 3 e30 1 3592 3 e31 1 3592 3 e32 1 3592 3 e33 1 3592
1587 14 Dtool_Ns0bPVfu 0 6 1324 3709 0 14 Dtool_Ns0bPVfu 230 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Copy Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3709 5 other 1 3703
1588 14 Dtool_Ns0bPKEm 0 6 1324 3709 0 14 Dtool_Ns0bPKEm 233 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Copy Assignment Operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3709 5 other 1 3710
1589 14 Dtool_Ns0bBSXw 0 6 1324 3709 0 14 Dtool_Ns0bBSXw 230 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Fill Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3709 10 fill_value 1 3592
1590 14 Dtool_Ns0bfo_T 0 4 1325 3573 0 14 Dtool_Ns0bfo_T 0 2 4 this 3 3709 4 size 1 3572
1591 14 Dtool_Ns0bRYTi 0 6 1328 3574 0 14 Dtool_Ns0bRYTi 0 2 4 this 3 3703 4 self 1 3574
1592 14 Dtool_Ns0btsm9 0 4 1329 3573 0 14 Dtool_Ns0btsm9 388 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::fill
// Access: Public
// Description: 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 3709 10 fill_value 1 3592
1593 14 Dtool_Ns0bE5Uz 0 4 1330 3573 0 14 Dtool_Ns0bE5Uz 209 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::set
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 17 4 this 3 3709 3 e00 1 3592 3 e01 1 3592 3 e02 1 3592 3 e03 1 3592 3 e10 1 3592 3 e11 1 3592 3 e12 1 3592 3 e13 1 3592 3 e20 1 3592 3 e21 1 3592 3 e22 1 3592 3 e23 1 3592 3 e30 1 3592 3 e31 1 3592 3 e32 1 3592 3 e33 1 3592
1594 14 Dtool_Ns0b4JsI 0 4 1331 3573 0 14 Dtool_Ns0b4JsI 247 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::set_upper_3
// Access: Public
// Description: Sets the upper 3x3 submatrix.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3709 6 upper3 1 3699
1595 14 Dtool_Ns0bcZBN 0 7 1332 3698 3290 14 Dtool_Ns0bcZBN 252 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_upper_3
// Access: Public
// Description: Retrieves the upper 3x3 submatrix.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3703
1596 14 Dtool_Ns0b4DFT 0 4 1333 3573 0 14 Dtool_Ns0b4DFT 353 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::set_row
// Access: Public
// Description: Replaces the indicated row of the matrix with the
// indicated 3-component vector, ignoring the last
// column.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3709 3 row 1 3577 1 v 1 3618
1597 14 Dtool_Ns0bnD10 0 4 1333 3573 0 14 Dtool_Ns0bnD10 255 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::set_row
// Access: Public
// Description: Replaces the indicated row of the matrix.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3709 3 row 1 3577 1 v 1 3648
1598 14 Dtool_Ns0bdmWa 0 4 1334 3573 0 14 Dtool_Ns0bdmWa 353 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::set_col
// Access: Public
// Description: Replaces the indicated column of the matrix with the
// indicated 3-component vector, ignoring the last
// row.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3709 3 col 1 3577 1 v 1 3618
1599 14 Dtool_Ns0bImG8 0 4 1334 3573 0 14 Dtool_Ns0bImG8 258 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::set_col
// Access: Public
// Description: Replaces the indicated column of the matrix.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3709 3 col 1 3577 1 v 1 3648
1600 14 Dtool_Ns0bPxez 0 4 1335 3573 0 14 Dtool_Ns0bPxez 294 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_row
// Access: Public
// Description: Stores the indicated row of the matrix as a
// 4-component vector.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3703 10 result_vec 1 3647 3 row 1 3577
1601 14 Dtool_Ns0bpwx8 0 7 1335 3647 2775 14 Dtool_Ns0bpwx8 297 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_row
// Access: Public
// Description: Retrieves the indicated row of the matrix as a
// 4-component vector.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3703 3 row 1 3577
1602 14 Dtool_Ns0brPFE 0 7 1336 3647 2775 14 Dtool_Ns0brPFE 300 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_col
// Access: Public
// Description: Retrieves the indicated column of the matrix as a
// 4-component vector.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3703 3 col 1 3577
1603 14 Dtool_Ns0beTWu 0 4 1337 3573 0 14 Dtool_Ns0beTWu 318 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_row3
// Access: Public
// Description: Stores the row column of the matrix as a
// 3-component vector, ignoring the last column.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3703 10 result_vec 1 3617 3 row 1 3577
1604 14 Dtool_Ns0bQL2y 0 7 1337 3617 2386 14 Dtool_Ns0bQL2y 321 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_row3
// Access: Public
// Description: Retrieves the row column of the matrix as a
// 3-component vector, ignoring the last column.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3703 3 row 1 3577
1605 14 Dtool_Ns0b_pJ6 0 7 1338 3617 2386 14 Dtool_Ns0b_pJ6 324 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_col3
// Access: Public
// Description: Retrieves the indicated column of the matrix as a
// 3-component vector, ignoring the last row.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3703 3 col 1 3577
1606 14 Dtool_Ns0bYgS1 0 4 1339 3573 0 14 Dtool_Ns0bYgS1 223 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Indexing operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3709 3 row 1 3577 3 col 1 3577
1607 14 Dtool_Ns0bgkEX 0 6 1339 3592 0 14 Dtool_Ns0bgkEX 223 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Indexing operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3703 3 row 1 3577 3 col 1 3577
1608 14 Dtool_Ns0b9U2a 0 7 1340 3712 3294 14 Dtool_Ns0b9U2a 223 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Indexing Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3709 1 i 1 3577
1609 14 Dtool_Ns0b1rvr 0 7 1340 3713 3297 14 Dtool_Ns0b1rvr 223 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Indexing Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3703 1 i 1 3577
1610 14 Dtool_Ns0bDzAp 0 6 1341 3577 0 14 Dtool_Ns0bDzAp 263 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::size
// Access: Public, Static
// Description: Returns 4: the number of rows of a LMatrix4.
//////////////////////////////////////////////////////////////////// 0
1611 14 Dtool_Ns0buXM3 0 6 1342 3578 0 14 Dtool_Ns0buXM3 307 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::is_nan
// Access: Public
// Description: Returns true if any component of the matrix is
// not-a-number, false otherwise.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3703
1612 14 Dtool_Ns0btb8V 0 6 1343 3592 0 14 Dtool_Ns0btb8V 258 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_cell
// Access: Public
// Description: Returns a particular element of the matrix.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3703 3 row 1 3577 3 col 1 3577
1613 14 Dtool_Ns0bY2F1 0 4 1344 3573 0 14 Dtool_Ns0bY2F1 258 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::set_cell
// Access: Public
// Description: Changes a particular element of the matrix.
//////////////////////////////////////////////////////////////////// 4 4 this 3 3709 3 row 1 3577 3 col 1 3577 5 value 1 3592
1614 14 Dtool_Ns0btPV1 0 4 1345 3573 0 14 Dtool_Ns0btPV1 398 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_data
// Access: Public
// Description: 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 3703
1615 14 Dtool_Ns0bwv30 0 6 1346 3577 0 14 Dtool_Ns0bwv30 274 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_num_components
// Access: Public
// Description: Returns the number of elements in the matrix, 16.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3703
1616 14 Dtool_Ns0bjKXP 0 4 1347 3573 0 14 Dtool_Ns0bjKXP 316 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::begin
// Access: Public
// Description: Returns an iterator that may be used to traverse the
// elements of the matrix, STL-style.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3709
1617 14 Dtool_Ns0bmQjW 0 4 1347 3573 0 14 Dtool_Ns0bmQjW 316 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::begin
// Access: Public
// Description: Returns an iterator that may be used to traverse the
// elements of the matrix, STL-style.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3703
1618 14 Dtool_Ns0bPBFI 0 4 1348 3573 0 14 Dtool_Ns0bPBFI 314 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::end
// Access: Public
// Description: Returns an iterator that may be used to traverse the
// elements of the matrix, STL-style.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3709
1619 14 Dtool_Ns0b5wtn 0 4 1348 3573 0 14 Dtool_Ns0b5wtn 314 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::end
// Access: Public
// Description: Returns an iterator that may be used to traverse the
// elements of the matrix, STL-style.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3703
1620 14 Dtool_Ns0bXz9P 0 6 1349 3578 0 14 Dtool_Ns0bXz9P 501 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Ordering Operator
// Access: Public
// Description: This performs a lexicographical comparison. It's of
// questionable mathematical meaning, but sometimes has
// a practical purpose for sorting unique vectors,
// especially in an STL container. Also see
// compare_to().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3703 5 other 1 3703
1621 14 Dtool_Ns0bQ4WW 0 6 1350 3578 0 14 Dtool_Ns0bQ4WW 223 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Equality Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3703 5 other 1 3703
1622 14 Dtool_Ns0bQPzN 0 6 1351 3578 0 14 Dtool_Ns0bQPzN 225 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Inequality Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3703 5 other 1 3703
1623 14 Dtool_Ns0baz9H 0 6 1352 3577 0 14 Dtool_Ns0baz9H 317 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::compare_to
// Access: Public
// Description: This flavor of compare_to uses a default threshold
// value based on the numeric type.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3703 5 other 1 3703
1624 14 Dtool_Ns0blGtQ 0 6 1352 3577 0 14 Dtool_Ns0blGtQ 501 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::compare_to
// Access: Public
// Description: 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 3703 5 other 1 3703 9 threshold 1 3592
1625 14 Dtool_Ns0bsbsK 0 6 1353 3572 0 14 Dtool_Ns0bsbsK 253 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_hash
// Access: Public
// Description: Returns a suitable hash for phash_map.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3703
1626 14 Dtool_Ns0bAiqx 0 6 1353 3572 0 14 Dtool_Ns0bAiqx 253 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::get_hash
// Access: Public
// Description: Returns a suitable hash for phash_map.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3703 9 threshold 1 3592
1627 14 Dtool_Ns0bT_IH 0 6 1354 3572 0 14 Dtool_Ns0bT_IH 253 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::add_hash
// Access: Public
// Description: Adds the vector into the running hash.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3703 4 hash 1 3572
1628 14 Dtool_Ns0bdWef 0 6 1354 3572 0 14 Dtool_Ns0bdWef 253 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::add_hash
// Access: Public
// Description: Adds the vector into the running hash.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3703 4 hash 1 3572 9 threshold 1 3592
1629 14 Dtool_Ns0bO133 0 7 1355 3647 2775 14 Dtool_Ns0bO133 306 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform
// Access: Public
// Description: 4-component vector or point times matrix. This is a
// fully general operation.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3703 1 v 1 3648
1630 14 Dtool_Ns0bT1IX 0 7 1356 3617 2386 14 Dtool_Ns0bT1IX 400 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_point
// Access: Public
// Description: 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 3703 1 v 1 3618
1631 14 Dtool_Ns0brmNg 0 7 1357 3617 2386 14 Dtool_Ns0brmNg 389 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_point_general
// Access: Public
// Description: The matrix transforms a 3-component point (including
// translation component) and returns the result, as a
// fully general operation.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3703 1 v 1 3618
1632 14 Dtool_Ns0bDCVq 0 7 1358 3617 2386 14 Dtool_Ns0bDCVq 402 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_vec
// Access: Public
// Description: 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 3703 1 v 1 3618
1633 14 Dtool_Ns0bsqNn 0 7 1359 3617 2386 14 Dtool_Ns0bsqNn 386 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_vec_general
// Access: Public
// Description: The matrix transforms a 3-component vector (without
// translation component) and returns the result, as a
// fully general operation.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3703 1 v 1 3618
1634 14 Dtool_Ns0bHhNF 0 4 1360 3573 0 14 Dtool_Ns0bHhNF 315 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_in_place
// Access: Public
// Description: 4-component vector or point times matrix. This is a
// fully general operation.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3703 1 v 1 3647
1635 14 Dtool_Ns0brdBS 0 4 1361 3573 0 14 Dtool_Ns0brdBS 386 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_point_in_place
// Access: Public
// Description: The matrix transforms a 3-component point (including
// translation component). This assumes the matrix is
// an affine transform.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3703 1 v 1 3617
1636 14 Dtool_Ns0bkWqj 0 4 1362 3573 0 14 Dtool_Ns0bkWqj 358 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_point_general_in_place
// Access: Public
// Description: The matrix transforms a 3-component point (including
// translation component), as a fully general operation.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3703 1 v 1 3617
1637 14 Dtool_Ns0bL1IL 0 4 1363 3573 0 14 Dtool_Ns0bL1IL 388 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_vec_in_place
// Access: Public
// Description: The matrix transforms a 3-component vector (without
// translation component). This assumes the matrix is
// an orthonormal transform.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3703 1 v 1 3617
1638 14 Dtool_Ns0bgwSi 0 4 1364 3573 0 14 Dtool_Ns0bgwSi 355 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::xform_vec_general_in_place
// Access: Public
// Description: The matrix transforms a 3-component vector (without
// translation component), as a fully general operation.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3703 1 v 1 3617
1639 14 Dtool_Ns0bU8DL 0 4 1365 3573 0 14 Dtool_Ns0bU8DL 25 // this = other1 * other2 3 4 this 3 3709 6 other1 1 3703 6 other2 1 3703
1640 14 Dtool_Ns0b3TdK 0 7 1366 3709 3381 14 Dtool_Ns0b3TdK 221 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::matrix * matrix
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3703 5 other 1 3703
1641 14 Dtool_Ns0b9_TF 0 7 1366 3709 3381 14 Dtool_Ns0b9_TF 221 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::matrix * scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3703 6 scalar 1 3592
1642 14 Dtool_Ns0bNI1G 0 7 1367 3709 3381 14 Dtool_Ns0bNI1G 221 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::matrix / scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3703 6 scalar 1 3592
1643 14 Dtool_Ns0b8vNX 0 6 1368 3709 0 14 Dtool_Ns0b8vNX 275 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::matrix += matrix
// Access: Public
// Description: Performs a memberwise addition between two matrices.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3709 5 other 1 3703
1644 14 Dtool_Ns0bcj0X 0 6 1369 3709 0 14 Dtool_Ns0bcj0X 275 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::matrix -= matrix
// Access: Public
// Description: Performs a memberwise addition between two matrices.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3709 5 other 1 3703
1645 14 Dtool_Ns0bMO5W 0 6 1370 3709 0 14 Dtool_Ns0bMO5W 222 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::matrix *= matrix
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3709 5 other 1 3703
1646 14 Dtool_Ns0bWUUT 0 6 1370 3709 0 14 Dtool_Ns0bWUUT 222 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::matrix *= scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3709 6 scalar 1 3592
1647 14 Dtool_Ns0bm93U 0 6 1371 3709 0 14 Dtool_Ns0bm93U 222 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::matrix /= scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3709 6 scalar 1 3592
1648 14 Dtool_Ns0boYQI 0 4 1372 3573 0 14 Dtool_Ns0boYQI 220 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::transpose_from
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3709 5 other 1 3703
1649 14 Dtool_Ns0bivGM 0 4 1373 3573 0 14 Dtool_Ns0bivGM 224 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::transpose_in_place
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3709
1650 14 Dtool_Ns0bNuDN 0 6 1374 3578 0 14 Dtool_Ns0bNuDN 803 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::invert_from
// Access: Public
// Description: 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 3709 5 other 1 3703
1651 14 Dtool_Ns0bg2mD 0 6 1375 3578 0 14 Dtool_Ns0bg2mD 931 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::invert_affine_from
// Access: Public
// Description: Performs an invert of the indicated matrix, storing
// the result in this matrix. The calculation is only
// correct of the other matrix represents an affine
// transform.
//
// 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.
////////////////////////////////////////////////////////////////////
// bugbug: we could optimize this for rotation/scale/translation matrices
// (transpose upper 3x3 and take negative of translation component) 2 4 this 3 3709 5 other 1 3703
1652 14 Dtool_Ns0bIOv7 0 6 1376 3578 0 14 Dtool_Ns0bIOv7 361 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::invert_in_place
// Access: Public
// Description: Inverts the current matrix. Returns true if the
// inverse is successful, false if the matrix was
// singular.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3709
1653 14 Dtool_Ns0brA3w 0 4 1377 3573 0 14 Dtool_Ns0brA3w 252 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::accumulate
// Access: Public
// Description: Computes (*this) += other * weight.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3709 5 other 1 3703 6 weight 1 3592
1654 14 Dtool_Ns0bAfTM 0 6 1378 3703 0 14 Dtool_Ns0bAfTM 388 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::ident_mat
// Access: Public, Static
// Description: Returns an identity matrix.
//
// This function definition must appear first, since
// some inline functions below take advantage of it.
//////////////////////////////////////////////////////////////////// 0
1655 14 Dtool_Ns0bNy16 0 6 1379 3703 0 14 Dtool_Ns0bNy16 258 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::ones_mat
// Access: Public, Static
// Description: Returns an matrix filled with ones.
//////////////////////////////////////////////////////////////////// 0
1656 14 Dtool_Ns0bQFPh 0 6 1380 3703 0 14 Dtool_Ns0bQFPh 260 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::zeros_mat
// Access: Public, Static
// Description: Returns an matrix filled with zeros.
//////////////////////////////////////////////////////////////////// 0
1657 14 Dtool_Ns0blK2Y 0 4 1381 3573 0 14 Dtool_Ns0blK2Y 303 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_translate_mat
// Access: Public
// Description: Fills mat with a matrix that applies the indicated
// translation.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3709 5 trans 1 3618
1658 14 Dtool_Ns0b4cXj 0 4 1382 3573 0 14 Dtool_Ns0b4cXj 362 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_rotate_mat
// Access: Public
// Description: Sets mat to a matrix that rotates by the given angle
// in degrees counterclockwise about the indicated
// vector.
//////////////////////////////////////////////////////////////////// 4 4 this 3 3709 5 angle 1 3592 4 axis 1 3618 2 cs 1 3529
1659 14 Dtool_Ns0bEDQQ 0 4 1382 3573 0 14 Dtool_Ns0bEDQQ 362 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_rotate_mat
// Access: Public
// Description: Sets mat to a matrix that rotates by the given angle
// in degrees counterclockwise about the indicated
// vector.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3709 5 angle 1 3592 4 axis 1 3618
1660 14 Dtool_Ns0br5fk 0 4 1383 3573 0 14 Dtool_Ns0br5fk 412 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_rotate_mat_normaxis
// Access: Public
// Description: 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 3709 5 angle 1 3592 4 axis 1 3618 2 cs 1 3529
1661 14 Dtool_Ns0bqWLK 0 4 1383 3573 0 14 Dtool_Ns0bqWLK 412 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_rotate_mat_normaxis
// Access: Public
// Description: Fills mat with a matrix that rotates by the given
// angle in degrees counterclockwise about the indicated
// vector. Assumes axis has been prenormalized.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3709 5 angle 1 3592 4 axis 1 3618
1662 14 Dtool_Ns0bwlwr 0 4 1384 3573 0 14 Dtool_Ns0bwlwr 319 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_scale_mat
// Access: Public
// Description: Fills mat with a matrix that applies the indicated
// scale in each of the three axes.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3709 5 scale 1 3618
1663 14 Dtool_Ns0bcZih 0 4 1385 3573 0 14 Dtool_Ns0bcZih 321 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_shear_mat
// Access: Public
// Description: Fills mat with a matrix that applies the indicated
// shear in each of the three planes.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3709 5 shear 1 3618 2 cs 1 3529
1664 14 Dtool_Ns0bbfMI 0 4 1385 3573 0 14 Dtool_Ns0bbfMI 321 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_shear_mat
// Access: Public
// Description: Fills mat with a matrix that applies the indicated
// shear in each of the three planes.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3709 5 shear 1 3618
1665 14 Dtool_Ns0bpH_g 0 4 1386 3573 0 14 Dtool_Ns0bpH_g 317 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_scale_shear_mat
// Access: Public, Static
// Description: Fills mat with a matrix that applies the indicated
// scale and shear.
//////////////////////////////////////////////////////////////////// 4 4 this 3 3709 5 scale 1 3618 5 shear 1 3618 2 cs 1 3529
1666 14 Dtool_Ns0b6wrG 0 4 1386 3573 0 14 Dtool_Ns0b6wrG 317 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::set_scale_shear_mat
// Access: Public, Static
// Description: Fills mat with a matrix that applies the indicated
// scale and shear.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3709 5 scale 1 3618 5 shear 1 3618
1667 14 Dtool_Ns0bSDJX 0 7 1387 3709 3381 14 Dtool_Ns0bSDJX 300 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::translate_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// translation.
//////////////////////////////////////////////////////////////////// 1 5 trans 1 3618
1668 14 Dtool_Ns0btfAu 0 7 1387 3709 3381 14 Dtool_Ns0btfAu 300 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::translate_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// translation.
//////////////////////////////////////////////////////////////////// 3 2 tx 1 3592 2 ty 1 3592 2 tz 1 3592
1669 14 Dtool_Ns0bblkA 0 7 1388 3709 3381 14 Dtool_Ns0bblkA 345 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::rotate_mat
// Access: Public, Static
// Description: Returns a matrix that rotates by the given angle in
// degrees counterclockwise about the indicated vector.
//////////////////////////////////////////////////////////////////// 3 5 angle 1 3592 4 axis 1 3618 2 cs 1 3529
1670 14 Dtool_Ns0byawN 0 7 1388 3709 3381 14 Dtool_Ns0byawN 345 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::rotate_mat
// Access: Public, Static
// Description: Returns a matrix that rotates by the given angle in
// degrees counterclockwise about the indicated vector.
//////////////////////////////////////////////////////////////////// 2 5 angle 1 3592 4 axis 1 3618
1671 14 Dtool_Ns0b9B_S 0 7 1389 3709 3381 14 Dtool_Ns0b9B_S 408 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::rotate_mat_normaxis
// Access: Public, Static
// Description: 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 3592 4 axis 1 3618 2 cs 1 3529
1672 14 Dtool_Ns0bYFts 0 7 1389 3709 3381 14 Dtool_Ns0bYFts 408 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::rotate_mat_normaxis
// Access: Public, Static
// Description: Returns a matrix that rotates by the given angle in
// degrees counterclockwise about the indicated vector.
// Assumes axis has been prenormalized.
//////////////////////////////////////////////////////////////////// 2 5 angle 1 3592 4 axis 1 3618
1673 14 Dtool_Ns0b38_F 0 7 1390 3709 3381 14 Dtool_Ns0b38_F 316 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// scale in each of the three axes.
//////////////////////////////////////////////////////////////////// 1 5 scale 1 3618
1674 14 Dtool_Ns0bH84Q 0 7 1390 3709 3381 14 Dtool_Ns0bH84Q 298 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// uniform scale.
//////////////////////////////////////////////////////////////////// 1 5 scale 1 3592
1675 14 Dtool_Ns0bXzZ0 0 7 1390 3709 3381 14 Dtool_Ns0bXzZ0 316 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// scale in each of the three axes.
//////////////////////////////////////////////////////////////////// 3 2 sx 1 3592 2 sy 1 3592 2 sz 1 3592
1676 14 Dtool_Ns0bfITj 0 7 1391 3709 3381 14 Dtool_Ns0bfITj 318 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::shear_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// shear in each of the three planes.
//////////////////////////////////////////////////////////////////// 2 5 shear 1 3618 2 cs 1 3529
1677 14 Dtool_Ns0bwpeM 0 7 1391 3709 3381 14 Dtool_Ns0bwpeM 318 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::shear_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// shear in each of the three planes.
//////////////////////////////////////////////////////////////////// 1 5 shear 1 3618
1678 14 Dtool_Ns0b1Nbx 0 7 1391 3709 3381 14 Dtool_Ns0b1Nbx 318 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::shear_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// shear in each of the three planes.
//////////////////////////////////////////////////////////////////// 4 4 shxy 1 3592 4 shxz 1 3592 4 shyz 1 3592 2 cs 1 3529
1679 14 Dtool_Ns0bna36 0 7 1391 3709 3381 14 Dtool_Ns0bna36 318 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::shear_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// shear in each of the three planes.
//////////////////////////////////////////////////////////////////// 3 4 shxy 1 3592 4 shxz 1 3592 4 shyz 1 3592
1680 14 Dtool_Ns0bjJJb 0 7 1392 3709 3381 14 Dtool_Ns0bjJJb 306 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_shear_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// scale and shear.
//////////////////////////////////////////////////////////////////// 3 5 scale 1 3618 5 shear 1 3618 2 cs 1 3529
1681 14 Dtool_Ns0bEN20 0 7 1392 3709 3381 14 Dtool_Ns0bEN20 306 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_shear_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// scale and shear.
//////////////////////////////////////////////////////////////////// 2 5 scale 1 3618 5 shear 1 3618
1682 14 Dtool_Ns0bfLeP 0 7 1392 3709 3381 14 Dtool_Ns0bfLeP 306 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_shear_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// scale and shear.
//////////////////////////////////////////////////////////////////// 7 2 sx 1 3592 2 sy 1 3592 2 sz 1 3592 4 shxy 1 3592 4 shxz 1 3592 4 shyz 1 3592 2 cs 1 3529
1683 14 Dtool_Ns0bkKNp 0 7 1392 3709 3381 14 Dtool_Ns0bkKNp 306 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::scale_shear_mat
// Access: Public, Static
// Description: Returns a matrix that applies the indicated
// scale and shear.
//////////////////////////////////////////////////////////////////// 6 2 sx 1 3592 2 sy 1 3592 2 sz 1 3592 4 shxy 1 3592 4 shxz 1 3592 4 shyz 1 3592
1684 14 Dtool_Ns0bMIyP 0 6 1393 3703 0 14 Dtool_Ns0bMIyP 339 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::y_to_z_up_mat
// Access: Public, Static
// Description: Returns a matrix that transforms from the Y-up
// coordinate system to the Z-up coordinate system.
//////////////////////////////////////////////////////////////////// 0
1685 14 Dtool_Ns0bMGWN 0 6 1394 3703 0 14 Dtool_Ns0bMGWN 339 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::z_to_y_up_mat
// Access: Public, Static
// Description: Returns a matrix that transforms from the Y-up
// coordinate system to the Z-up coordinate system.
//////////////////////////////////////////////////////////////////// 0
1686 14 Dtool_Ns0b5OYN 0 6 1395 3703 0 14 Dtool_Ns0b5OYN 347 ////////////////////////////////////////////////////////////////////
// Function: LMatrix::convert_mat
// Access: Public, Static
// Description: Returns a matrix that transforms from the indicated
// coordinate system to the indicated coordinate system.
//////////////////////////////////////////////////////////////////// 2 4 from 1 3529 2 to 1 3529
1687 14 Dtool_Ns0bqIgc 0 6 1396 3578 0 14 Dtool_Ns0bqIgc 339 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::almost_equal
// Access: Public
// Description: Returns true if two matrices are memberwise equal
// within a default tolerance based on the numeric type.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3703 5 other 1 3703
1688 14 Dtool_Ns0boOXn 0 6 1396 3578 0 14 Dtool_Ns0boOXn 315 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::almost_equal
// Access: Public
// Description: Returns true if two matrices are memberwise equal
// within a specified tolerance.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3703 5 other 1 3703 9 threshold 1 3592
1689 14 Dtool_Ns0bdkYL 0 4 1397 3573 0 14 Dtool_Ns0bdkYL 212 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::output
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3703 3 out 1 3581
1690 14 Dtool_Ns0bXBeC 0 4 1398 3573 0 14 Dtool_Ns0bXBeC 211 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::write
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3703 3 out 1 3581 12 indent_level 1 3577
1691 14 Dtool_Ns0bXY5L 0 4 1398 3573 0 14 Dtool_Ns0bXY5L 211 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::write
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3703 3 out 1 3581
1692 14 Dtool_Ns0b5Z6N 0 4 1399 3573 0 14 Dtool_Ns0b5Z6N 0 3 4 this 3 3703 3 out 1 3581 10 class_name 1 3576
1693 14 Dtool_Ns0bQqLT 0 4 1400 3573 0 14 Dtool_Ns0bQqLT 268 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::generate_hash
// Access: Public
// Description: Adds the vector to the indicated hash generator.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3703 7 hashgen 1 3579
1694 14 Dtool_Ns0bj1Tq 0 4 1400 3573 0 14 Dtool_Ns0bj1Tq 268 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::generate_hash
// Access: Public
// Description: Adds the vector to the indicated hash generator.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3703 7 hashgen 1 3579 5 scale 1 3592
1695 14 Dtool_Ns0b0yx8 0 4 1401 3573 0 14 Dtool_Ns0b0yx8 641 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::write_datagram_fixed
// Access: Published
// Description: 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 3703 11 destination 1 3583
1696 14 Dtool_Ns0bb9pg 0 4 1402 3573 0 14 Dtool_Ns0bb9pg 347 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::read_datagram_fixed
// Access: Published
// Description: Reads the matrix from the Datagram using get_float32()
// or get_float64(). See write_datagram_fixed().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3709 4 scan 1 3585
1697 14 Dtool_Ns0bAHts 0 4 1403 3573 0 14 Dtool_Ns0bAHts 463 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::write_datagram
// Access: Published
// Description: 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 3703 11 destination 1 3583
1698 14 Dtool_Ns0bT9Pt 0 4 1404 3573 0 14 Dtool_Ns0bT9Pt 279 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::read_datagram
// Access: Published
// Description: Reads the matrix from the Datagram using get_stdfloat().
//////////////////////////////////////////////////////////////////// 2 4 this 3 3709 6 source 1 3585
1699 14 Dtool_Ns0bn3L3 0 7 1405 3588 0 14 Dtool_Ns0bn3L3 0 0
1700 14 Dtool_Ns0bComI 0 4 1315 3573 0 14 Dtool_Ns0bComI 226 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Row::operator []
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3712 1 i 1 3577
1701 14 Dtool_Ns0b7tWq 0 6 1315 3592 0 14 Dtool_Ns0b7tWq 226 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Row::operator []
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3714 1 i 1 3577
1702 14 Dtool_Ns0bstFR 0 4 1316 3573 0 14 Dtool_Ns0bstFR 0 3 4 this 3 3712 1 i 1 3577 1 v 1 3592
1703 14 Dtool_Ns0blF2k 0 6 1317 3577 0 14 Dtool_Ns0blF2k 271 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::Row::size
// Access: Public, Static
// Description: Returns 4: the number of columns of a LMatrix4.
//////////////////////////////////////////////////////////////////// 0
1704 14 Dtool_Ns0bj2qs 0 6 1320 3592 0 14 Dtool_Ns0bj2qs 227 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::CRow::operator []
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3716 1 i 1 3577
1705 14 Dtool_Ns0b9cS7 0 6 1321 3577 0 14 Dtool_Ns0b9cS7 272 ////////////////////////////////////////////////////////////////////
// Function: LMatrix4::CRow::size
// Access: Public, Static
// Description: Returns 4: the number of columns of a LMatrix4.
//////////////////////////////////////////////////////////////////// 0
1706 14 Dtool_Ns0bz1FW 0 7 1408 3718 3389 14 Dtool_Ns0bz1FW 234 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::Default Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 0
1707 14 Dtool_Ns0bGu6U 0 7 1408 3718 3389 14 Dtool_Ns0bGu6U 231 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::Copy Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3703
1708 14 Dtool_Ns0b_vVq 0 7 1408 3718 3389 14 Dtool_Ns0b_vVq 231 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::Copy Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3710
1709 14 Dtool_Ns0bF1Im 0 7 1408 3718 3389 14 Dtool_Ns0bF1Im 226 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::Constructor
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 16 3 e00 1 3592 3 e01 1 3592 3 e02 1 3592 3 e03 1 3592 3 e10 1 3592 3 e11 1 3592 3 e12 1 3592 3 e13 1 3592 3 e20 1 3592 3 e21 1 3592 3 e22 1 3592 3 e23 1 3592 3 e30 1 3592 3 e31 1 3592 3 e32 1 3592 3 e33 1 3592
1710 14 Dtool_Ns0b4c8E 0 6 1409 3718 0 14 Dtool_Ns0b4c8E 239 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::Copy Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3718 4 copy 1 3703
1711 14 Dtool_Ns0byn3z 0 6 1409 3718 0 14 Dtool_Ns0byn3z 239 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::Copy Assignment Operator
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3718 4 copy 1 3710
1712 14 Dtool_Ns0bn_Mt 0 4 1410 3573 0 14 Dtool_Ns0bn_Mt 221 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::set
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 17 4 this 3 3718 3 e00 1 3592 3 e01 1 3592 3 e02 1 3592 3 e03 1 3592 3 e10 1 3592 3 e11 1 3592 3 e12 1 3592 3 e13 1 3592 3 e20 1 3592 3 e21 1 3592 3 e22 1 3592 3 e23 1 3592 3 e30 1 3592 3 e31 1 3592 3 e32 1 3592 3 e33 1 3592
1713 14 Dtool_Ns0bnXxN 0 4 1411 3573 0 14 Dtool_Ns0bnXxN 235 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::Indexing operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3718 3 row 1 3577 3 col 1 3577
1714 14 Dtool_Ns0b_K_B 0 6 1411 3592 0 14 Dtool_Ns0b_K_B 235 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::Indexing operator
// Access: Published
// Description:
//////////////////////////////////////////////////////////////////// 3 4 this 3 3710 3 row 1 3577 3 col 1 3577
1715 14 Dtool_Ns0bf_yd 0 4 1412 3573 0 14 Dtool_Ns0bf_yd 410 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::get_data
// Access: Published
// Description: 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 3710
1716 14 Dtool_Ns0blJtd 0 6 1413 3577 0 14 Dtool_Ns0blJtd 291 ////////////////////////////////////////////////////////////////////
// Function: UnalignedLMatrix4::get_num_components
// Access: Published
// Description: Returns the number of elements in the matrix, sixteen.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3710
1717 14 Dtool_Ns0br_BG 0 7 1414 3588 0 14 Dtool_Ns0br_BG 0 0
1718 14 Dtool_Ns0brtd_ 0 7 1429 3719 3449 14 Dtool_Ns0brtd_ 719 // Filename: lquaternion_src.I
// Created by: frang (06Jun00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::Default Constructor
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 0
1719 14 Dtool_Ns0bvDxK 0 7 1429 3719 3449 14 Dtool_Ns0bvDxK 225 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::Copy Constructor
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3642
1720 14 Dtool_Ns0bM1Wm 0 7 1429 3719 3449 14 Dtool_Ns0bM1Wm 225 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::Copy Constructor
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 2 6 param0 0 3571 4 copy 1 3615
1721 14 Dtool_Ns0bzNTV 0 7 1429 3719 3449 14 Dtool_Ns0bzNTV 220 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::Constructor
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 4 6 param0 0 3571 6 param1 0 3571 6 param2 0 3571 6 param3 0 3571
1722 14 Dtool_Ns0bQoeb 0 7 1430 3719 3449 14 Dtool_Ns0bQoeb 228 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::pure_imaginary_quat
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 1 6 param0 0 3624
1723 14 Dtool_Ns0b_F9y 0 7 1431 3719 3449 14 Dtool_Ns0b_F9y 265 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::conjugate
// Access: Published
// Description: Returns the complex conjugate of this quat.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3720
1724 14 Dtool_Ns0brkOj 0 7 1432 3614 2314 14 Dtool_Ns0brkOj 267 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::xform
// Access: Published
// Description: Transforms a 3-d vector by the indicated rotation
//////////////////////////////////////////////////////////////////// 2 4 this 3 3720 1 v 1 3615
1725 14 Dtool_Ns0bjhO_ 0 7 1432 3641 2695 14 Dtool_Ns0bjhO_ 267 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::xform
// Access: Published
// Description: Transforms a 4-d vector by the indicated rotation
//////////////////////////////////////////////////////////////////// 2 4 this 3 3720 1 v 1 3642
1726 14 Dtool_Ns0beJuF 0 7 1433 3719 3449 14 Dtool_Ns0beJuF 255 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::multiply
// Access: Published
// Description: actual multiply call (non virtual)
//////////////////////////////////////////////////////////////////// 2 4 this 3 3720 3 rhs 1 3720
1727 14 Dtool_Ns0bXaQp 0 7 1434 3719 3449 14 Dtool_Ns0bXaQp 216 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::unary -
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3720
1728 14 Dtool_Ns0bI56X 0 7 1435 3719 3449 14 Dtool_Ns0bI56X 232 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::quaternion + quaternion
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3720 5 other 1 3720
1729 14 Dtool_Ns0bb27z 0 7 1436 3719 3449 14 Dtool_Ns0bb27z 232 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::quaternion - quaternion
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3720 5 other 1 3720
1730 14 Dtool_Ns0b3Uhy 0 6 1437 3571 0 14 Dtool_Ns0b3Uhy 369 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::angle_rad
// Access: Published
// Description: Returns the angle between the orientation represented
// by this quaternion and the other one, expressed in
// radians.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3720 5 other 1 3720
1731 14 Dtool_Ns0bmSn_ 0 6 1438 3571 0 14 Dtool_Ns0bmSn_ 369 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::angle_deg
// Access: Published
// Description: Returns the angle between the orientation represented
// by this quaternion and the other one, expressed in
// degrees.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3720 5 other 1 3720
1732 14 Dtool_Ns0bj8YK 0 7 1439 3677 3108 14 Dtool_Ns0bj8YK 249 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::Multiply Operator
// Access: public
// Description: Quat * Matrix = matrix
//////////////////////////////////////////////////////////////////// 2 4 this 3 3719 6 param0 0 3678
1733 14 Dtool_Ns0be9Is 0 7 1439 3688 3201 14 Dtool_Ns0be9Is 249 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::Multiply Operator
// Access: public
// Description: Quat * Matrix = matrix
//////////////////////////////////////////////////////////////////// 2 4 this 3 3719 6 param0 0 3682
1734 14 Dtool_Ns0bU_6J 0 7 1439 3719 3449 14 Dtool_Ns0bU_6J 226 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::Multiply Operator
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3720 6 param0 0 3720
1735 14 Dtool_Ns0bppqj 0 7 1439 3719 3449 14 Dtool_Ns0bppqj 228 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::quaternion * scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3720 6 scalar 1 3571
1736 14 Dtool_Ns0be9qp 0 7 1440 3719 3449 14 Dtool_Ns0be9qp 228 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::quaternion / scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3720 6 scalar 1 3571
1737 14 Dtool_Ns0bMJVd 0 6 1441 3719 0 14 Dtool_Ns0bMJVd 237 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::Multiply Assignment Operator
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3719 6 param0 0 3720
1738 14 Dtool_Ns0brHMU 0 6 1442 3578 0 14 Dtool_Ns0brHMU 345 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::almost_equal
// Access: public
// Description: Returns true if two quaternions are memberwise equal
// within a default tolerance based on the numeric type.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3720 5 other 1 3720
1739 14 Dtool_Ns0blDKH 0 6 1442 3578 0 14 Dtool_Ns0blDKH 321 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::almost_equal
// Access: public
// Description: Returns true if two quaternions are memberwise equal
// within a specified tolerance.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3720 5 other 1 3720 9 threshold 1 3571
1740 14 Dtool_Ns0bi2zi 0 6 1443 3578 0 14 Dtool_Ns0bi2zi 374 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::is_same_direction
// Access: public
// Description: Returns true if two quaternions represent the same
// rotation within a default tolerance based on the
// numeric type.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3720 5 other 1 3720
1741 14 Dtool_Ns0bgEa5 0 6 1444 3578 0 14 Dtool_Ns0bgEa5 337 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::almost_same_direction
// Access: public
// Description: Returns true if two quaternions represent the same
// rotation within a specified tolerance.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3720 5 other 1 3720 9 threshold 1 3571
1742 14 Dtool_Ns0bclzP 0 4 1445 3573 0 14 Dtool_Ns0bclzP 215 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::output
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3720 6 param0 0 3581
1743 14 Dtool_Ns0bQnH2 0 4 1446 3573 0 14 Dtool_Ns0bQnH2 270 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::extract_to_matrix (LMatrix3)
// Access: Public
// Description: Based on the quat lib from VRPN.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3720 1 m 1 3677
1744 14 Dtool_Ns0bIWR2 0 4 1446 3573 0 14 Dtool_Ns0bIWR2 270 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::extract_to_matrix (LMatrix4)
// Access: Public
// Description: Based on the quat lib from VRPN.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3720 1 m 1 3688
1745 14 Dtool_Ns0badwD 0 4 1447 3573 0 14 Dtool_Ns0badwD 503 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_from_matrix
// Access: public
// Description: 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 3719 1 m 1 3678
1746 14 Dtool_Ns0b1eQH 0 4 1447 3573 0 14 Dtool_Ns0b1eQH 224 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_from_matrix
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3719 1 m 1 3682
1747 14 Dtool_Ns0bRc8G 0 4 1448 3573 0 14 Dtool_Ns0bRc8G 368 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_hpr
// Access: public
// Description: Sets the quaternion as the unit quaternion that
// is equivalent to these Euler angles.
// (from Real-time Rendering, p.49)
//////////////////////////////////////////////////////////////////// 3 4 this 3 3719 3 hpr 1 3615 2 cs 1 3529
1748 14 Dtool_Ns0bghkq 0 4 1448 3573 0 14 Dtool_Ns0bghkq 368 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_hpr
// Access: public
// Description: Sets the quaternion as the unit quaternion that
// is equivalent to these Euler angles.
// (from Real-time Rendering, p.49)
//////////////////////////////////////////////////////////////////// 2 4 this 3 3719 3 hpr 1 3615
1749 14 Dtool_Ns0bWRZg 0 7 1449 3614 2314 14 Dtool_Ns0bWRZg 296 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_hpr
// Access: public
// Description: Extracts the equivalent Euler angles from the unit
// quaternion.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3720 2 cs 1 3529
1750 14 Dtool_Ns0bO1A0 0 7 1449 3614 2314 14 Dtool_Ns0bO1A0 296 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_hpr
// Access: public
// Description: Extracts the equivalent Euler angles from the unit
// quaternion.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3720
1751 14 Dtool_Ns0bYcKh 0 7 1450 3623 2555 14 Dtool_Ns0bYcKh 432 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_axis
// Access: Public
// Description: 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 3720
1752 14 Dtool_Ns0bNIeK 0 7 1451 3623 2555 14 Dtool_Ns0bNIeK 415 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_axis_normalized
// Access: Public
// Description: 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 3720
1753 14 Dtool_Ns0bZTUN 0 6 1452 3571 0 14 Dtool_Ns0bZTUN 645 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_angle_rad
// Access: Public
// Description: 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 3720
1754 14 Dtool_Ns0beAIg 0 6 1453 3571 0 14 Dtool_Ns0beAIg 641 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_angle
// Access: Public
// Description: 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 3720
1755 14 Dtool_Ns0byPe0 0 4 1454 3573 0 14 Dtool_Ns0byPe0 324 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_from_axis_angle_rad
// Access: Public
// Description: angle_rad is the angle about the axis in radians.
// axis must be normalized.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3719 9 angle_rad 1 3571 4 axis 1 3624
1756 14 Dtool_Ns0bYkah 0 4 1455 3573 0 14 Dtool_Ns0bYkah 324 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_from_axis_angle_deg
// Access: Public
// Description: angle_deg is the angle about the axis in degrees.
// axis must be normalized.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3719 9 angle_deg 1 3571 4 axis 1 3624
1757 14 Dtool_Ns0b3KoZ 0 7 1456 3623 2555 14 Dtool_Ns0b3KoZ 315 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_up
// Access: Public
// Description: Returns the orientation represented by this
// quaternion, expressed as an up vector.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3720 2 cs 1 3529
1758 14 Dtool_Ns0brwSS 0 7 1456 3623 2555 14 Dtool_Ns0brwSS 315 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_up
// Access: Public
// Description: Returns the orientation represented by this
// quaternion, expressed as an up vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3720
1759 14 Dtool_Ns0bMxzz 0 7 1457 3623 2555 14 Dtool_Ns0bMxzz 320 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_right
// Access: Public
// Description: Returns the orientation represented by this
// quaternion, expressed as a right vector.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3720 2 cs 1 3529
1760 14 Dtool_Ns0b86me 0 7 1457 3623 2555 14 Dtool_Ns0b86me 320 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_right
// Access: Public
// Description: Returns the orientation represented by this
// quaternion, expressed as a right vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3720
1761 14 Dtool_Ns0b6X_p 0 7 1458 3623 2555 14 Dtool_Ns0b6X_p 324 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_forward
// Access: Public
// Description: Returns the orientation represented by this
// quaternion, expressed as a forward vector.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3720 2 cs 1 3529
1762 14 Dtool_Ns0bIjTb 0 7 1458 3623 2555 14 Dtool_Ns0bIjTb 324 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_forward
// Access: Public
// Description: Returns the orientation represented by this
// quaternion, expressed as a forward vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3720
1763 14 Dtool_Ns0bk8aD 0 6 1459 3571 0 14 Dtool_Ns0bk8aD 214 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_r
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3720
1764 14 Dtool_Ns0bjxaE 0 6 1460 3571 0 14 Dtool_Ns0bjxaE 214 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_i
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3720
1765 14 Dtool_Ns0b1yaL 0 6 1461 3571 0 14 Dtool_Ns0b1yaL 214 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_j
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3720
1766 14 Dtool_Ns0bH0aS 0 6 1462 3571 0 14 Dtool_Ns0bH0aS 214 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_k
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3720
1767 14 Dtool_Ns0b3PLX 0 4 1463 3573 0 14 Dtool_Ns0b3PLX 214 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_r
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3719 1 r 1 3571
1768 14 Dtool_Ns0b04KY 0 4 1464 3573 0 14 Dtool_Ns0b04KY 214 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_i
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3719 1 i 1 3571
1769 14 Dtool_Ns0bm5Kf 0 4 1465 3573 0 14 Dtool_Ns0bm5Kf 214 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_j
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3719 1 j 1 3571
1770 14 Dtool_Ns0bYGLm 0 4 1466 3573 0 14 Dtool_Ns0bYGLm 214 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_k
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3719 1 k 1 3571
1771 14 Dtool_Ns0baBWQ 0 6 1467 3578 0 14 Dtool_Ns0baBWQ 218 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::normalize
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3719
1772 14 Dtool_Ns0bMknV 0 6 1468 3578 0 14 Dtool_Ns0bMknV 817 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::conjugate_from
// Access: Published
// Description: 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 3719 5 other 1 3720
1773 14 Dtool_Ns0bDgwh 0 6 1469 3578 0 14 Dtool_Ns0bDgwh 379 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::conjugate_in_place
// Access: Published
// Description: 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 3719
1774 14 Dtool_Ns0bed84 0 6 1470 3578 0 14 Dtool_Ns0bed84 794 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::invert_from
// Access: Public
// Description: 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 3719 5 other 1 3720
1775 14 Dtool_Ns0bvLqt 0 6 1471 3578 0 14 Dtool_Ns0bvLqt 360 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::invert_in_place
// Access: Public
// Description: Inverts the current quat. Returns true if the
// inverse is successful, false if the quat was
// singular.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3719
1776 14 Dtool_Ns0bJkak 0 6 1472 3578 0 14 Dtool_Ns0bJkak 322 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::is_identity
// Access: Public
// Description: Returns true if this quaternion represents the
// identity transformation: no rotation.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3720
1777 14 Dtool_Ns0b4P4N 0 6 1473 3578 0 14 Dtool_Ns0b4P4N 341 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::is_almost_identity
// Access: Public
// Description: Returns true if this quaternion represents the
// identity transformation within a given tolerance.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3720 9 tolerance 1 3571
1778 14 Dtool_Ns0bmmMR 0 6 1474 3720 0 14 Dtool_Ns0bmmMR 259 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::ident_quat
// Access: Public, Static
// Description: Returns an identity quaternion.
//////////////////////////////////////////////////////////////////// 0
1779 14 Dtool_Ns0bndKd 0 7 1475 3588 0 14 Dtool_Ns0bndKd 0 0
1780 14 Dtool_Ns0brOX4 0 7 1478 3722 3497 14 Dtool_Ns0brOX4 719 // Filename: lquaternion_src.I
// Created by: frang (06Jun00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LQuaternion::Default Constructor
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 0
1781 14 Dtool_Ns0bwmdo 0 7 1478 3722 3497 14 Dtool_Ns0bwmdo 225 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::Copy Constructor
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3648
1782 14 Dtool_Ns0bBaVV 0 7 1478 3722 3497 14 Dtool_Ns0bBaVV 225 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::Copy Constructor
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 2 6 param0 0 3592 4 copy 1 3618
1783 14 Dtool_Ns0b6Z6w 0 7 1478 3722 3497 14 Dtool_Ns0b6Z6w 220 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::Constructor
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 4 6 param0 0 3592 6 param1 0 3592 6 param2 0 3592 6 param3 0 3592
1784 14 Dtool_Ns0bOPmP 0 7 1479 3722 3497 14 Dtool_Ns0bOPmP 228 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::pure_imaginary_quat
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 1 6 param0 0 3627
1785 14 Dtool_Ns0b_hFu 0 7 1480 3722 3497 14 Dtool_Ns0b_hFu 265 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::conjugate
// Access: Published
// Description: Returns the complex conjugate of this quat.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3723
1786 14 Dtool_Ns0bPTTe 0 7 1481 3617 2386 14 Dtool_Ns0bPTTe 267 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::xform
// Access: Published
// Description: Transforms a 3-d vector by the indicated rotation
//////////////////////////////////////////////////////////////////// 2 4 this 3 3723 1 v 1 3618
1787 14 Dtool_Ns0bHWT6 0 7 1481 3647 2775 14 Dtool_Ns0bHWT6 267 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::xform
// Access: Published
// Description: Transforms a 4-d vector by the indicated rotation
//////////////////////////////////////////////////////////////////// 2 4 this 3 3723 1 v 1 3648
1788 14 Dtool_Ns0bGGsA 0 7 1482 3722 3497 14 Dtool_Ns0bGGsA 255 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::multiply
// Access: Published
// Description: actual multiply call (non virtual)
//////////////////////////////////////////////////////////////////// 2 4 this 3 3723 3 rhs 1 3723
1789 14 Dtool_Ns0bX_Xk 0 7 1483 3722 3497 14 Dtool_Ns0bX_Xk 216 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::unary -
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3723
1790 14 Dtool_Ns0bPV02 0 7 1484 3722 3497 14 Dtool_Ns0bPV02 232 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::quaternion + quaternion
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3723 5 other 1 3723
1791 14 Dtool_Ns0bZa1S 0 7 1485 3722 3497 14 Dtool_Ns0bZa1S 232 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::quaternion - quaternion
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3723 5 other 1 3723
1792 14 Dtool_Ns0b3sxo 0 6 1486 3592 0 14 Dtool_Ns0b3sxo 369 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::angle_rad
// Access: Published
// Description: Returns the angle between the orientation represented
// by this quaternion and the other one, expressed in
// radians.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3723 5 other 1 3723
1793 14 Dtool_Ns0bmq30 0 6 1487 3592 0 14 Dtool_Ns0bmq30 369 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::angle_deg
// Access: Published
// Description: Returns the angle between the orientation represented
// by this quaternion and the other one, expressed in
// degrees.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3723 5 other 1 3723
1794 14 Dtool_Ns0bBNgV 0 7 1488 3698 3290 14 Dtool_Ns0bBNgV 249 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::Multiply Operator
// Access: public
// Description: Quat * Matrix = matrix
//////////////////////////////////////////////////////////////////// 2 4 this 3 3722 6 param0 0 3699
1795 14 Dtool_Ns0b8NQ3 0 7 1488 3709 3381 14 Dtool_Ns0b8NQ3 249 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::Multiply Operator
// Access: public
// Description: Quat * Matrix = matrix
//////////////////////////////////////////////////////////////////// 2 4 this 3 3722 6 param0 0 3703
1796 14 Dtool_Ns0brQ0o 0 7 1488 3722 3497 14 Dtool_Ns0brQ0o 226 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::Multiply Operator
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3723 6 param0 0 3723
1797 14 Dtool_Ns0bA0TI 0 7 1488 3722 3497 14 Dtool_Ns0bA0TI 228 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::quaternion * scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3723 6 scalar 1 3592
1798 14 Dtool_Ns0bPASO 0 7 1489 3722 3497 14 Dtool_Ns0bPASO 228 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::quaternion / scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3723 6 scalar 1 3592
1799 14 Dtool_Ns0b6vdR 0 6 1490 3722 0 14 Dtool_Ns0b6vdR 237 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::Multiply Assignment Operator
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3722 6 param0 0 3723
1800 14 Dtool_Ns0bsATv 0 6 1491 3578 0 14 Dtool_Ns0bsATv 345 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::almost_equal
// Access: public
// Description: Returns true if two quaternions are memberwise equal
// within a default tolerance based on the numeric type.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3723 5 other 1 3723
1801 14 Dtool_Ns0bKRVo 0 6 1491 3578 0 14 Dtool_Ns0bKRVo 321 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::almost_equal
// Access: public
// Description: Returns true if two quaternions are memberwise equal
// within a specified tolerance.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3723 5 other 1 3723 9 threshold 1 3592
1802 14 Dtool_Ns0bZg5d 0 6 1492 3578 0 14 Dtool_Ns0bZg5d 374 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::is_same_direction
// Access: public
// Description: Returns true if two quaternions represent the same
// rotation within a default tolerance based on the
// numeric type.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3723 5 other 1 3723
1803 14 Dtool_Ns0bUNTJ 0 6 1493 3578 0 14 Dtool_Ns0bUNTJ 337 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::almost_same_direction
// Access: public
// Description: Returns true if two quaternions represent the same
// rotation within a specified tolerance.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3723 5 other 1 3723 9 threshold 1 3592
1804 14 Dtool_Ns0bcZ7K 0 4 1494 3573 0 14 Dtool_Ns0bcZ7K 215 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::output
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3723 6 param0 0 3581
1805 14 Dtool_Ns0bQLcn 0 4 1495 3573 0 14 Dtool_Ns0bQLcn 270 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::extract_to_matrix (LMatrix3)
// Access: Public
// Description: Based on the quat lib from VRPN.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3723 1 m 1 3698
1806 14 Dtool_Ns0bI6nn 0 4 1495 3573 0 14 Dtool_Ns0bI6nn 270 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::extract_to_matrix (LMatrix4)
// Access: Public
// Description: Based on the quat lib from VRPN.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3723 1 m 1 3709
1807 14 Dtool_Ns0bea4e 0 4 1496 3573 0 14 Dtool_Ns0bea4e 503 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_from_matrix
// Access: public
// Description: 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 3722 1 m 1 3699
1808 14 Dtool_Ns0b5bYi 0 4 1496 3573 0 14 Dtool_Ns0b5bYi 224 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_from_matrix
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3722 1 m 1 3703
1809 14 Dtool_Ns0bX48z 0 4 1497 3573 0 14 Dtool_Ns0bX48z 368 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_hpr
// Access: public
// Description: Sets the quaternion as the unit quaternion that
// is equivalent to these Euler angles.
// (from Real-time Rendering, p.49)
//////////////////////////////////////////////////////////////////// 3 4 this 3 3722 3 hpr 1 3618 2 cs 1 3529
1810 14 Dtool_Ns0bhFnX 0 4 1497 3573 0 14 Dtool_Ns0bhFnX 368 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_hpr
// Access: public
// Description: Sets the quaternion as the unit quaternion that
// is equivalent to these Euler angles.
// (from Real-time Rendering, p.49)
//////////////////////////////////////////////////////////////////// 2 4 this 3 3722 3 hpr 1 3618
1811 14 Dtool_Ns0bW1gb 0 7 1498 3617 2386 14 Dtool_Ns0bW1gb 296 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_hpr
// Access: public
// Description: Extracts the equivalent Euler angles from the unit
// quaternion.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3723 2 cs 1 3529
1812 14 Dtool_Ns0bORIv 0 7 1498 3617 2386 14 Dtool_Ns0bORIv 296 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_hpr
// Access: public
// Description: Extracts the equivalent Euler angles from the unit
// quaternion.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3723
1813 14 Dtool_Ns0bY4Rc 0 7 1499 3626 2589 14 Dtool_Ns0bY4Rc 432 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_axis
// Access: Public
// Description: 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 3723
1814 14 Dtool_Ns0bNkmF 0 7 1500 3626 2589 14 Dtool_Ns0bNkmF 415 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_axis_normalized
// Access: Public
// Description: 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 3723
1815 14 Dtool_Ns0bZ_bI 0 6 1501 3592 0 14 Dtool_Ns0bZ_bI 645 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_angle_rad
// Access: Public
// Description: 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 3723
1816 14 Dtool_Ns0be8Rb 0 6 1502 3592 0 14 Dtool_Ns0be8Rb 641 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_angle
// Access: Public
// Description: 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 3723
1817 14 Dtool_Ns0bZ91x 0 4 1503 3573 0 14 Dtool_Ns0bZ91x 324 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_from_axis_angle_rad
// Access: Public
// Description: angle_rad is the angle about the axis in radians.
// axis must be normalized.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3722 9 angle_rad 1 3592 4 axis 1 3627
1818 14 Dtool_Ns0bVKOA 0 4 1504 3573 0 14 Dtool_Ns0bVKOA 324 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_from_axis_angle_deg
// Access: Public
// Description: angle_deg is the angle about the axis in degrees.
// axis must be normalized.
//////////////////////////////////////////////////////////////////// 3 4 this 3 3722 9 angle_deg 1 3592 4 axis 1 3627
1819 14 Dtool_Ns0b3uwU 0 7 1505 3626 2589 14 Dtool_Ns0b3uwU 315 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_up
// Access: Public
// Description: Returns the orientation represented by this
// quaternion, expressed as an up vector.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3723 2 cs 1 3529
1820 14 Dtool_Ns0brsaN 0 7 1505 3626 2589 14 Dtool_Ns0brsaN 315 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_up
// Access: Public
// Description: Returns the orientation represented by this
// quaternion, expressed as an up vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3723
1821 14 Dtool_Ns0bMt7u 0 7 1506 3626 2589 14 Dtool_Ns0bMt7u 320 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_right
// Access: Public
// Description: Returns the orientation represented by this
// quaternion, expressed as a right vector.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3723 2 cs 1 3529
1822 14 Dtool_Ns0b8etZ 0 7 1506 3626 2589 14 Dtool_Ns0b8etZ 320 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_right
// Access: Public
// Description: Returns the orientation represented by this
// quaternion, expressed as a right vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3723
1823 14 Dtool_Ns0b6zHl 0 7 1507 3626 2589 14 Dtool_Ns0b6zHl 324 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_forward
// Access: Public
// Description: Returns the orientation represented by this
// quaternion, expressed as a forward vector.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3723 2 cs 1 3529
1824 14 Dtool_Ns0bIPaW 0 7 1507 3626 2589 14 Dtool_Ns0bIPaW 324 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_forward
// Access: Public
// Description: Returns the orientation represented by this
// quaternion, expressed as a forward vector.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3723
1825 14 Dtool_Ns0blYi_ 0 6 1508 3592 0 14 Dtool_Ns0blYi_ 214 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_r
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3723
1826 14 Dtool_Ns0bkVi_ 0 6 1509 3592 0 14 Dtool_Ns0bkVi_ 214 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_i
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3723
1827 14 Dtool_Ns0b1WiG 0 6 1510 3592 0 14 Dtool_Ns0b1WiG 214 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_j
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3723
1828 14 Dtool_Ns0bHQiN 0 6 1511 3592 0 14 Dtool_Ns0bHQiN 214 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::get_k
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3723
1829 14 Dtool_Ns0b2srU 0 4 1512 3573 0 14 Dtool_Ns0b2srU 214 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_r
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3722 1 r 1 3592
1830 14 Dtool_Ns0b3hrV 0 4 1513 3573 0 14 Dtool_Ns0b3hrV 214 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_i
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3722 1 i 1 3592
1831 14 Dtool_Ns0b5irc 0 4 1514 3573 0 14 Dtool_Ns0b5irc 214 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_j
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3722 1 j 1 3592
1832 14 Dtool_Ns0bLjrj 0 4 1515 3573 0 14 Dtool_Ns0bLjrj 214 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::set_k
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3722 1 k 1 3592
1833 14 Dtool_Ns0baleL 0 6 1516 3578 0 14 Dtool_Ns0baleL 218 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::normalize
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 this 3 3722
1834 14 Dtool_Ns0bMw_G 0 6 1517 3578 0 14 Dtool_Ns0bMw_G 817 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::conjugate_from
// Access: Published
// Description: 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 3722 5 other 1 3723
1835 14 Dtool_Ns0bDM3c 0 6 1518 3578 0 14 Dtool_Ns0bDM3c 379 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::conjugate_in_place
// Access: Published
// Description: 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 3722
1836 14 Dtool_Ns0bIgEt 0 6 1519 3578 0 14 Dtool_Ns0bIgEt 794 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::invert_from
// Access: Public
// Description: 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 3722 5 other 1 3723
1837 14 Dtool_Ns0bv3zo 0 6 1520 3578 0 14 Dtool_Ns0bv3zo 360 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::invert_in_place
// Access: Public
// Description: Inverts the current quat. Returns true if the
// inverse is successful, false if the quat was
// singular.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3722
1838 14 Dtool_Ns0bJIif 0 6 1521 3578 0 14 Dtool_Ns0bJIif 322 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::is_identity
// Access: Public
// Description: Returns true if this quaternion represents the
// identity transformation: no rotation.
//////////////////////////////////////////////////////////////////// 1 4 this 3 3723
1839 14 Dtool_Ns0bZ4KV 0 6 1522 3578 0 14 Dtool_Ns0bZ4KV 341 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::is_almost_identity
// Access: Public
// Description: Returns true if this quaternion represents the
// identity transformation within a given tolerance.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3723 9 tolerance 1 3592
1840 14 Dtool_Ns0bmaTM 0 6 1523 3723 0 14 Dtool_Ns0bmaTM 259 ////////////////////////////////////////////////////////////////////
// Function: LQuaternion::ident_quat
// Access: Public, Static
// Description: Returns an identity quaternion.
//////////////////////////////////////////////////////////////////// 0
1841 14 Dtool_Ns0bnxRY 0 7 1524 3588 0 14 Dtool_Ns0bnxRY 0 0
1842 14 Dtool_Ns0b1ufs 0 7 1527 3725 3502 14 Dtool_Ns0b1ufs 724 // Filename: lrotation_src.I
// Created by: frang, charles (23Jun00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LRotation::Default Constructor
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 0
1843 14 Dtool_Ns0boHWm 0 7 1527 3725 3502 14 Dtool_Ns0boHWm 227 ////////////////////////////////////////////////////////////////////
// Function: LRotation::Constructor
// Access: public
// Description: lmatrix3
//////////////////////////////////////////////////////////////////// 1 6 param0 0 3678
1844 14 Dtool_Ns0boMkn 0 7 1527 3725 3502 14 Dtool_Ns0boMkn 227 ////////////////////////////////////////////////////////////////////
// Function: LRotation::Constructor
// Access: public
// Description: lmatrix4
//////////////////////////////////////////////////////////////////// 1 6 param0 0 3682
1845 14 Dtool_Ns0bdC6k 0 7 1527 3725 3502 14 Dtool_Ns0bdC6k 223 ////////////////////////////////////////////////////////////////////
// Function: LRotation::Copy Constructor
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 1 6 param0 0 3720
1846 14 Dtool_Ns0bZE8x 0 7 1527 3725 3502 14 Dtool_Ns0bZE8x 223 ////////////////////////////////////////////////////////////////////
// Function: LRotation::Copy Constructor
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3642
1847 14 Dtool_Ns0bzssT 0 7 1527 3725 3502 14 Dtool_Ns0bzssT 244 ////////////////////////////////////////////////////////////////////
// Function: LRotation::Constructor
// Access: public
// Description: axis + angle (in degrees)
//////////////////////////////////////////////////////////////////// 2 6 param0 0 3624 6 param1 0 3571
1848 14 Dtool_Ns0bLwNm 0 7 1527 3725 3502 14 Dtool_Ns0bLwNm 265 ////////////////////////////////////////////////////////////////////
// Function: LRotation::Constructor
// Access: public
// Description: Sets the rotation from the given Euler angles.
//////////////////////////////////////////////////////////////////// 3 6 param0 0 3571 6 param1 0 3571 6 param2 0 3571
1849 14 Dtool_Ns0b6t_a 0 7 1527 3725 3502 14 Dtool_Ns0b6t_a 218 ////////////////////////////////////////////////////////////////////
// Function: LRotation::Constructor
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 4 6 param0 0 3571 6 param1 0 3571 6 param2 0 3571 6 param3 0 3571
1850 14 Dtool_Ns0bcT59 0 7 1528 3719 3449 14 Dtool_Ns0bcT59 377 ////////////////////////////////////////////////////////////////////
// Function: LRotation::operator *
// Access: public
// Description: Rotation * Orientation = Orientation
// This is another meaningless operation, attempting
// to apply an orientation to a rotation.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3726 5 other 1 3720
1851 14 Dtool_Ns0bttc8 0 7 1528 3725 3502 14 Dtool_Ns0bttc8 248 ////////////////////////////////////////////////////////////////////
// Function: LRotation::operator *
// Access: public
// Description: Rotation * Rotation = Rotation
//////////////////////////////////////////////////////////////////// 2 4 this 3 3726 5 other 1 3726
1852 14 Dtool_Ns0bmMpJ 0 7 1528 3725 3502 14 Dtool_Ns0bmMpJ 224 ////////////////////////////////////////////////////////////////////
// Function: LRotation::rotation * scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3726 6 scalar 1 3571
1853 14 Dtool_Ns0bmkd6 0 7 1529 3725 3502 14 Dtool_Ns0bmkd6 224 ////////////////////////////////////////////////////////////////////
// Function: LRotation::rotation / scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3726 6 scalar 1 3571
1854 14 Dtool_Ns0bscCI 0 7 1530 3588 0 14 Dtool_Ns0bscCI 0 0
1855 14 Dtool_Ns0bXT9o 0 7 1533 3728 3507 14 Dtool_Ns0bXT9o 724 // Filename: lrotation_src.I
// Created by: frang, charles (23Jun00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LRotation::Default Constructor
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 0
1856 14 Dtool_Ns0b1jtU 0 7 1533 3728 3507 14 Dtool_Ns0b1jtU 227 ////////////////////////////////////////////////////////////////////
// Function: LRotation::Constructor
// Access: public
// Description: lmatrix3
//////////////////////////////////////////////////////////////////// 1 6 param0 0 3699
1857 14 Dtool_Ns0b1o7V 0 7 1533 3728 3507 14 Dtool_Ns0b1o7V 227 ////////////////////////////////////////////////////////////////////
// Function: LRotation::Constructor
// Access: public
// Description: lmatrix4
//////////////////////////////////////////////////////////////////// 1 6 param0 0 3703
1858 14 Dtool_Ns0b71Oh 0 7 1533 3728 3507 14 Dtool_Ns0b71Oh 223 ////////////////////////////////////////////////////////////////////
// Function: LRotation::Copy Constructor
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 1 6 param0 0 3723
1859 14 Dtool_Ns0bbq7q 0 7 1533 3728 3507 14 Dtool_Ns0bbq7q 223 ////////////////////////////////////////////////////////////////////
// Function: LRotation::Copy Constructor
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 1 4 copy 1 3648
1860 14 Dtool_Ns0bLdpy 0 7 1533 3728 3507 14 Dtool_Ns0bLdpy 244 ////////////////////////////////////////////////////////////////////
// Function: LRotation::Constructor
// Access: public
// Description: axis + angle (in degrees)
//////////////////////////////////////////////////////////////////// 2 6 param0 0 3627 6 param1 0 3592
1861 14 Dtool_Ns0b4Iug 0 7 1533 3728 3507 14 Dtool_Ns0b4Iug 265 ////////////////////////////////////////////////////////////////////
// Function: LRotation::Constructor
// Access: public
// Description: Sets the rotation from the given Euler angles.
//////////////////////////////////////////////////////////////////// 3 6 param0 0 3592 6 param1 0 3592 6 param2 0 3592
1862 14 Dtool_Ns0bA9cz 0 7 1533 3728 3507 14 Dtool_Ns0bA9cz 218 ////////////////////////////////////////////////////////////////////
// Function: LRotation::Constructor
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 4 6 param0 0 3592 6 param1 0 3592 6 param2 0 3592 6 param3 0 3592
1863 14 Dtool_Ns0bukuN 0 7 1534 3722 3497 14 Dtool_Ns0bukuN 377 ////////////////////////////////////////////////////////////////////
// Function: LRotation::operator *
// Access: public
// Description: Rotation * Orientation = Orientation
// This is another meaningless operation, attempting
// to apply an orientation to a rotation.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3729 5 other 1 3723
1864 14 Dtool_Ns0b1Z8I 0 7 1534 3728 3507 14 Dtool_Ns0b1Z8I 248 ////////////////////////////////////////////////////////////////////
// Function: LRotation::operator *
// Access: public
// Description: Rotation * Rotation = Rotation
//////////////////////////////////////////////////////////////////// 2 4 this 3 3729 5 other 1 3729
1865 14 Dtool_Ns0by_rc 0 7 1534 3728 3507 14 Dtool_Ns0by_rc 224 ////////////////////////////////////////////////////////////////////
// Function: LRotation::rotation * scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3729 6 scalar 1 3592
1866 14 Dtool_Ns0bzWgN 0 7 1535 3728 3507 14 Dtool_Ns0bzWgN 224 ////////////////////////////////////////////////////////////////////
// Function: LRotation::rotation / scalar
// Access: Public
// Description:
//////////////////////////////////////////////////////////////////// 2 4 this 3 3729 6 scalar 1 3592
1867 14 Dtool_Ns0bKPCY 0 7 1536 3588 0 14 Dtool_Ns0bKPCY 0 0
1868 14 Dtool_Ns0bcX4n 0 7 1539 3731 3511 14 Dtool_Ns0bcX4n 730 // Filename: lorientation_src.I
// Created by: frang, charles (23Jun00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LOrientation::Default Constructor
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 0
1869 14 Dtool_Ns0bkodg 0 7 1539 3731 3511 14 Dtool_Ns0bkodg 229 ////////////////////////////////////////////////////////////////////
// Function: LOrientation::Constructor
// Access: public
// Description: matrix3
//////////////////////////////////////////////////////////////////// 1 6 param0 0 3678
1870 14 Dtool_Ns0bloku 0 7 1539 3731 3511 14 Dtool_Ns0bloku 229 ////////////////////////////////////////////////////////////////////
// Function: LOrientation::Constructor
// Access: public
// Description: matrix4
//////////////////////////////////////////////////////////////////// 1 6 param0 0 3682
1871 14 Dtool_Ns0b_eNF 0 7 1539 3731 3511 14 Dtool_Ns0b_eNF 226 ////////////////////////////////////////////////////////////////////
// Function: LOrientation::Copy Constructor
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 1 6 param0 0 3720
1872 14 Dtool_Ns0bOs13 0 7 1539 3731 3511 14 Dtool_Ns0bOs13 236 ////////////////////////////////////////////////////////////////////
// Function: LOrientation::Constructor
// Access: public
// Description: vector + twist
//////////////////////////////////////////////////////////////////// 2 6 param0 0 3624 6 param1 0 3571
1873 14 Dtool_Ns0bWFbK 0 7 1539 3731 3511 14 Dtool_Ns0bWFbK 221 ////////////////////////////////////////////////////////////////////
// Function: LOrientation::Constructor
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 4 6 param0 0 3571 6 param1 0 3571 6 param2 0 3571 6 param3 0 3571
1874 14 Dtool_Ns0b1nPz 0 7 1540 3731 3511 14 Dtool_Ns0b1nPz 352 ////////////////////////////////////////////////////////////////////
// Function: LOrientation::operator *
// Access: public
// Description: Orientation * Orientation
// This is a meaningless operation, and will always
// simply return the rhs.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3732 5 other 1 3720
1875 14 Dtool_Ns0byr_X 0 7 1540 3731 3511 14 Dtool_Ns0byr_X 312 ////////////////////////////////////////////////////////////////////
// Function: LOrientation::operator *
// Access: public
// Description: Orientation * rotation = Orientation
// Applies a rotation to an orientation.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3732 5 other 1 3726
1876 14 Dtool_Ns0byKEa 0 7 1541 3588 0 14 Dtool_Ns0byKEa 0 0
1877 14 Dtool_Ns0b2Y6p 0 7 1544 3734 3515 14 Dtool_Ns0b2Y6p 730 // Filename: lorientation_src.I
// Created by: frang, charles (23Jun00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: LOrientation::Default Constructor
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 0
1878 14 Dtool_Ns0bYrfb 0 7 1544 3734 3515 14 Dtool_Ns0bYrfb 229 ////////////////////////////////////////////////////////////////////
// Function: LOrientation::Constructor
// Access: public
// Description: matrix3
//////////////////////////////////////////////////////////////////// 1 6 param0 0 3699
1879 14 Dtool_Ns0bZrmp 0 7 1544 3734 3515 14 Dtool_Ns0bZrmp 229 ////////////////////////////////////////////////////////////////////
// Function: LOrientation::Constructor
// Access: public
// Description: matrix4
//////////////////////////////////////////////////////////////////// 1 6 param0 0 3703
1880 14 Dtool_Ns0bRFe9 0 7 1544 3734 3515 14 Dtool_Ns0bRFe9 226 ////////////////////////////////////////////////////////////////////
// Function: LOrientation::Copy Constructor
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 1 6 param0 0 3723
1881 14 Dtool_Ns0byi3y 0 7 1544 3734 3515 14 Dtool_Ns0byi3y 236 ////////////////////////////////////////////////////////////////////
// Function: LOrientation::Constructor
// Access: public
// Description: vector + twist
//////////////////////////////////////////////////////////////////// 2 6 param0 0 3627 6 param1 0 3571
1882 14 Dtool_Ns0bQOxM 0 7 1544 3734 3515 14 Dtool_Ns0bQOxM 221 ////////////////////////////////////////////////////////////////////
// Function: LOrientation::Constructor
// Access: public
// Description:
//////////////////////////////////////////////////////////////////// 4 6 param0 0 3592 6 param1 0 3592 6 param2 0 3592 6 param3 0 3592
1883 14 Dtool_Ns0blgBQ 0 7 1545 3734 3515 14 Dtool_Ns0blgBQ 352 ////////////////////////////////////////////////////////////////////
// Function: LOrientation::operator *
// Access: public
// Description: Orientation * Orientation
// This is a meaningless operation, and will always
// simply return the rhs.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3735 5 other 1 3723
1884 14 Dtool_Ns0b9P52 0 7 1545 3734 3515 14 Dtool_Ns0b9P52 312 ////////////////////////////////////////////////////////////////////
// Function: LOrientation::operator *
// Access: public
// Description: Orientation * rotation = Orientation
// Applies a rotation to an orientation.
//////////////////////////////////////////////////////////////////// 2 4 this 3 3735 5 other 1 3729
1885 14 Dtool_Ns0bxK29 0 7 1546 3588 0 14 Dtool_Ns0bxK29 0 0
1886 14 Dtool_Ns0baTo4 0 6 3 3592 0 14 Dtool_Ns0baTo4 0 1 1 f 1 3592
1887 14 Dtool_Ns0bRKCI 0 6 3 3571 0 14 Dtool_Ns0bRKCI 0 1 1 f 1 3571
1888 14 Dtool_Ns0bgpRs 0 6 4 3592 0 14 Dtool_Ns0bgpRs 0 1 1 f 1 3592
1889 14 Dtool_Ns0bIbq7 0 6 4 3571 0 14 Dtool_Ns0bIbq7 0 1 1 f 1 3571
1890 14 Dtool_Ns0bt1jy 0 6 512 3529 0 14 Dtool_Ns0bt1jy 0 0
1891 14 Dtool_Ns0bVyE0 0 6 513 3529 0 14 Dtool_Ns0bVyE0 0 1 3 str 1 3576
1892 14 Dtool_Ns0bblcZ 0 6 514 3576 0 14 Dtool_Ns0bblcZ 0 1 2 cs 1 3529
1893 14 Dtool_Ns0b14II 0 6 515 3578 0 14 Dtool_Ns0b14II 0 1 2 cs 1 3529
1894 14 Dtool_Ns0bvd7J 0 6 515 3578 0 14 Dtool_Ns0bvd7J 0 0
1895 14 Dtool_Ns0bp_eQ 0 7 1124 3698 3290 14 Dtool_Ns0bp_eQ 0 1 1 a 1 3699
1896 14 Dtool_Ns0bN4ee 0 7 1124 3677 3108 14 Dtool_Ns0bN4ee 0 1 1 a 1 3678
1897 14 Dtool_Ns0bn_ss 0 7 1124 3709 3381 14 Dtool_Ns0bn_ss 0 1 1 a 1 3703
1898 14 Dtool_Ns0bL4s6 0 7 1124 3688 3201 14 Dtool_Ns0bL4s6 0 1 1 a 1 3682
1899 14 Dtool_Ns0b9Gem 0 7 1125 3698 3290 14 Dtool_Ns0b9Gem 0 1 1 a 1 3699
1900 14 Dtool_Ns0bNgym 0 7 1125 3677 3108 14 Dtool_Ns0bNgym 0 1 1 a 1 3678
1901 14 Dtool_Ns0bYJfW 0 7 1125 3709 3381 14 Dtool_Ns0bYJfW 0 1 1 a 1 3703
1902 14 Dtool_Ns0borzW 0 7 1125 3688 3201 14 Dtool_Ns0borzW 0 1 1 a 1 3682
1903 14 Dtool_Ns0bG8wm 0 7 1125 3722 3497 14 Dtool_Ns0bG8wm 0 1 1 a 1 3723
1904 14 Dtool_Ns0bqBx0 0 7 1125 3719 3449 14 Dtool_Ns0bqBx0 0 1 1 a 1 3720
1905 14 Dtool_Ns0bDzjX 0 7 1416 3698 3290 14 Dtool_Ns0bDzjX 0 2 1 m 1 3699 1 q 1 3723
1906 14 Dtool_Ns0bkolH 0 7 1416 3677 3108 14 Dtool_Ns0bkolH 0 2 1 m 1 3678 1 q 1 3720
1907 14 Dtool_Ns0bRsje 0 7 1416 3709 3381 14 Dtool_Ns0bRsje 0 2 1 m 1 3703 1 q 1 3723
1908 14 Dtool_Ns0bqplO 0 7 1416 3688 3201 14 Dtool_Ns0bqplO 0 2 1 m 1 3682 1 q 1 3720
1909 14 Dtool_Ns0byfKI 0 7 1416 3608 2289 14 Dtool_Ns0byfKI 0 2 1 v 1 3609 1 m 1 3699
1910 14 Dtool_Ns0bSCRW 0 7 1416 3605 2273 14 Dtool_Ns0bSCRW 0 2 1 v 1 3606 1 m 1 3678
1911 14 Dtool_Ns0bwfYk 0 7 1416 3635 2662 14 Dtool_Ns0bwfYk 0 2 1 v 1 3636 1 m 1 3699
1912 14 Dtool_Ns0bmWZA 0 7 1416 3635 2662 14 Dtool_Ns0bmWZA 0 2 1 v 1 3636 1 m 1 3703
1913 14 Dtool_Ns0bQCfy 0 7 1416 3632 2639 14 Dtool_Ns0bQCfy 0 2 1 v 1 3633 1 m 1 3678
1914 14 Dtool_Ns0beNeO 0 7 1416 3632 2639 14 Dtool_Ns0beNeO 0 2 1 v 1 3633 1 m 1 3682
1915 14 Dtool_Ns0bkWnc 0 7 1416 3671 3010 14 Dtool_Ns0bkWnc 0 2 1 v 1 3672 1 m 1 3703
1916 14 Dtool_Ns0bcNsq 0 7 1416 3668 2992 14 Dtool_Ns0bcNsq 0 2 1 v 1 3669 1 m 1 3682
1917 14 Dtool_Ns0b6f4W 0 7 1416 3617 2386 14 Dtool_Ns0b6f4W 0 2 1 v 1 3618 1 m 1 3699
1918 14 Dtool_Ns0bZSml 0 7 1416 3614 2314 14 Dtool_Ns0bZSml 0 2 1 v 1 3615 1 m 1 3678
1919 14 Dtool_Ns0bHpH4 0 7 1416 3647 2775 14 Dtool_Ns0bHpH4 0 2 1 v 1 3648 1 m 1 3703
1920 14 Dtool_Ns0blt1G 0 7 1416 3641 2695 14 Dtool_Ns0blt1G 0 2 1 v 1 3642 1 m 1 3682
1921 14 Dtool_Ns0bQlWf 0 7 1416 3599 2242 14 Dtool_Ns0bQlWf 0 2 1 v 1 3600 1 m 1 3699
1922 14 Dtool_Ns0bfZ0h 0 7 1416 3596 2224 14 Dtool_Ns0bfZ0h 0 2 1 v 1 3597 1 m 1 3678
1923 14 Dtool_Ns0bmnWm 0 7 1416 3626 2589 14 Dtool_Ns0bmnWm 0 2 1 v 1 3627 1 m 1 3699
1924 14 Dtool_Ns0bwbZm 0 7 1416 3626 2589 14 Dtool_Ns0bwbZm 0 2 1 v 1 3627 1 m 1 3703
1925 14 Dtool_Ns0bpb0o 0 7 1416 3623 2555 14 Dtool_Ns0bpb0o 0 2 1 v 1 3624 1 m 1 3678
1926 14 Dtool_Ns0b7_2o 0 7 1416 3623 2555 14 Dtool_Ns0b7_2o 0 2 1 v 1 3624 1 m 1 3682
1927 14 Dtool_Ns0biUZt 0 7 1416 3662 2957 14 Dtool_Ns0biUZt 0 2 1 v 1 3663 1 m 1 3703
1928 14 Dtool_Ns0bpw2v 0 7 1416 3659 2939 14 Dtool_Ns0bpw2v 0 2 1 v 1 3660 1 m 1 3682
1929 14 Dtool_Ns0blh4s 0 4 1417 3573 0 14 Dtool_Ns0blh4s 0 2 1 v 1 3608 1 m 1 3699
1930 14 Dtool_Ns0bHtbw 0 4 1417 3573 0 14 Dtool_Ns0bHtbw 0 2 1 v 1 3605 1 m 1 3678
1931 14 Dtool_Ns0bXi4z 0 4 1417 3573 0 14 Dtool_Ns0bXi4z 0 2 1 v 1 3635 1 m 1 3699
1932 14 Dtool_Ns0bUC8a 0 4 1417 3573 0 14 Dtool_Ns0bUC8a 0 2 1 v 1 3635 1 m 1 3703
1933 14 Dtool_Ns0bVsb3 0 4 1417 3573 0 14 Dtool_Ns0bVsb3 0 2 1 v 1 3632 1 m 1 3678
1934 14 Dtool_Ns0bUMfe 0 4 1417 3573 0 14 Dtool_Ns0bUMfe 0 2 1 v 1 3632 1 m 1 3682
1935 14 Dtool_Ns0bbnYb 0 4 1417 3573 0 14 Dtool_Ns0bbnYb 0 2 1 v 1 3617 1 m 1 3699
1936 14 Dtool_Ns0bTAEv 0 4 1417 3573 0 14 Dtool_Ns0bTAEv 0 2 1 v 1 3614 1 m 1 3678
1937 14 Dtool_Ns0b6LsT 0 4 1417 3573 0 14 Dtool_Ns0b6LsT 0 2 1 v 1 3647 1 m 1 3703
1938 14 Dtool_Ns0byoXn 0 4 1417 3573 0 14 Dtool_Ns0byoXn 0 2 1 v 1 3641 1 m 1 3682
1939 14 Dtool_Ns0bSP7Z 0 4 1417 3573 0 14 Dtool_Ns0bSP7Z 0 2 1 v 1 3599 1 m 1 3699
1940 14 Dtool_Ns0bQFiK 0 4 1417 3573 0 14 Dtool_Ns0bQFiK 0 2 1 v 1 3596 1 m 1 3678
1941 14 Dtool_Ns0bXk75 0 4 1417 3573 0 14 Dtool_Ns0bXk75 0 2 1 v 1 3626 1 m 1 3699
1942 14 Dtool_Ns0b7krb 0 4 1417 3573 0 14 Dtool_Ns0b7krb 0 2 1 v 1 3626 1 m 1 3703
1943 14 Dtool_Ns0bVsiq 0 4 1417 3573 0 14 Dtool_Ns0bVsiq 0 2 1 v 1 3623 1 m 1 3678
1944 14 Dtool_Ns0b5tSM 0 4 1417 3573 0 14 Dtool_Ns0b5tSM 0 2 1 v 1 3623 1 m 1 3682
1945 14 Dtool_Ns0bJ63D 0 4 1418 3573 0 14 Dtool_Ns0bJ63D 0 2 4 dest 1 3583 5 value 1 3699
1946 14 Dtool_Ns0bQo4D 0 4 1418 3573 0 14 Dtool_Ns0bQo4D 0 2 4 dest 1 3583 5 value 1 3678
1947 14 Dtool_Ns0bb53K 0 4 1418 3573 0 14 Dtool_Ns0bb53K 0 2 4 dest 1 3583 5 value 1 3703
1948 14 Dtool_Ns0bCr4K 0 4 1418 3573 0 14 Dtool_Ns0bCr4K 0 2 4 dest 1 3583 5 value 1 3682
1949 14 Dtool_Ns0bG74L 0 4 1419 3573 0 14 Dtool_Ns0bG74L 0 2 6 result 1 3698 6 source 1 3585
1950 14 Dtool_Ns0bGpUO 0 4 1419 3573 0 14 Dtool_Ns0bGpUO 0 2 6 result 1 3677 6 source 1 3585
1951 14 Dtool_Ns0b0f6L 0 4 1419 3573 0 14 Dtool_Ns0b0f6L 0 2 6 result 1 3709 6 source 1 3585
1952 14 Dtool_Ns0b0NWO 0 4 1419 3573 0 14 Dtool_Ns0b0NWO 0 2 6 result 1 3688 6 source 1 3585
1953 14 Dtool_Ns0byVzC 0 4 1420 3573 0 14 Dtool_Ns0byVzC 0 4 3 mat 1 3698 5 scale 1 3618 3 hpr 1 3618 2 cs 1 3529
1954 14 Dtool_Ns0bhQb3 0 4 1420 3573 0 14 Dtool_Ns0bhQb3 0 3 3 mat 1 3698 5 scale 1 3618 3 hpr 1 3618
1955 14 Dtool_Ns0b3KHb 0 4 1420 3573 0 14 Dtool_Ns0b3KHb 0 5 3 mat 1 3698 5 scale 1 3618 5 shear 1 3618 3 hpr 1 3618 2 cs 1 3529
1956 14 Dtool_Ns0bRK2_ 0 4 1420 3573 0 14 Dtool_Ns0bRK2_ 0 4 3 mat 1 3698 5 scale 1 3618 5 shear 1 3618 3 hpr 1 3618
1957 14 Dtool_Ns0b4aBn 0 4 1420 3573 0 14 Dtool_Ns0b4aBn 0 4 3 mat 1 3677 5 scale 1 3615 3 hpr 1 3615 2 cs 1 3529
1958 14 Dtool_Ns0b6xpb 0 4 1420 3573 0 14 Dtool_Ns0b6xpb 0 3 3 mat 1 3677 5 scale 1 3615 3 hpr 1 3615
1959 14 Dtool_Ns0bs_WG 0 4 1420 3573 0 14 Dtool_Ns0bs_WG 0 5 3 mat 1 3677 5 scale 1 3615 5 shear 1 3615 3 hpr 1 3615 2 cs 1 3529
1960 14 Dtool_Ns0bk7Er 0 4 1420 3573 0 14 Dtool_Ns0bk7Er 0 4 3 mat 1 3677 5 scale 1 3615 5 shear 1 3615 3 hpr 1 3615
1961 14 Dtool_Ns0b8KjT 0 4 1420 3573 0 14 Dtool_Ns0b8KjT 0 5 3 mat 1 3709 5 scale 1 3618 3 hpr 1 3618 9 translate 1 3618 2 cs 1 3529
1962 14 Dtool_Ns0bUKS4 0 4 1420 3573 0 14 Dtool_Ns0bUKS4 0 4 3 mat 1 3709 5 scale 1 3618 3 hpr 1 3618 9 translate 1 3618
1963 14 Dtool_Ns0boQjw 0 4 1420 3573 0 14 Dtool_Ns0boQjw 0 6 3 mat 1 3709 5 scale 1 3618 5 shear 1 3618 3 hpr 1 3618 9 translate 1 3618 2 cs 1 3529
1964 14 Dtool_Ns0b9vLl 0 4 1420 3573 0 14 Dtool_Ns0b9vLl 0 5 3 mat 1 3709 5 scale 1 3618 5 shear 1 3618 3 hpr 1 3618 9 translate 1 3618
1965 14 Dtool_Ns0bQ_y_ 0 4 1420 3573 0 14 Dtool_Ns0bQ_y_ 0 5 3 mat 1 3688 5 scale 1 3615 3 hpr 1 3615 9 translate 1 3615 2 cs 1 3529
1966 14 Dtool_Ns0b77gj 0 4 1420 3573 0 14 Dtool_Ns0b77gj 0 4 3 mat 1 3688 5 scale 1 3615 3 hpr 1 3615 9 translate 1 3615
1967 14 Dtool_Ns0b1X_c 0 4 1420 3573 0 14 Dtool_Ns0b1X_c 0 6 3 mat 1 3688 5 scale 1 3615 5 shear 1 3615 3 hpr 1 3615 9 translate 1 3615 2 cs 1 3529
1968 14 Dtool_Ns0bCknR 0 4 1420 3573 0 14 Dtool_Ns0bCknR 0 5 3 mat 1 3688 5 scale 1 3615 5 shear 1 3615 3 hpr 1 3615 9 translate 1 3615
1969 14 Dtool_Ns0brGAD 0 6 1421 3578 0 14 Dtool_Ns0brGAD 0 4 3 mat 1 3699 5 scale 1 3617 3 hpr 1 3617 2 cs 1 3529
1970 14 Dtool_Ns0bVxX2 0 6 1421 3578 0 14 Dtool_Ns0bVxX2 0 3 3 mat 1 3699 5 scale 1 3617 3 hpr 1 3617
1971 14 Dtool_Ns0bwk1_ 0 6 1421 3578 0 14 Dtool_Ns0bwk1_ 0 5 3 mat 1 3699 5 scale 1 3617 5 shear 1 3617 3 hpr 1 3617 2 cs 1 3529
1972 14 Dtool_Ns0bsyts 0 6 1421 3578 0 14 Dtool_Ns0bsyts 0 4 3 mat 1 3699 5 scale 1 3617 5 shear 1 3617 3 hpr 1 3617
1973 14 Dtool_Ns0bKI_s 0 6 1421 3578 0 14 Dtool_Ns0bKI_s 0 4 3 mat 1 3678 5 scale 1 3614 3 hpr 1 3614 2 cs 1 3529
1974 14 Dtool_Ns0bzJVg 0 6 1421 3578 0 14 Dtool_Ns0bzJVg 0 3 3 mat 1 3678 5 scale 1 3614 3 hpr 1 3614
1975 14 Dtool_Ns0bb5Pi 0 6 1421 3578 0 14 Dtool_Ns0bb5Pi 0 5 3 mat 1 3678 5 scale 1 3614 5 shear 1 3614 3 hpr 1 3614 2 cs 1 3529
1976 14 Dtool_Ns0bFoHP 0 6 1421 3578 0 14 Dtool_Ns0bFoHP 0 4 3 mat 1 3678 5 scale 1 3614 5 shear 1 3614 3 hpr 1 3614
1977 14 Dtool_Ns0b7y0_ 0 6 1421 3578 0 14 Dtool_Ns0b7y0_ 0 5 3 mat 1 3703 5 scale 1 3617 3 hpr 1 3617 9 translate 1 3617 2 cs 1 3529
1978 14 Dtool_Ns0b1gus 0 6 1421 3578 0 14 Dtool_Ns0b1gus 0 4 3 mat 1 3703 5 scale 1 3617 3 hpr 1 3617 9 translate 1 3617
1979 14 Dtool_Ns0bFy__ 0 6 1421 3578 0 14 Dtool_Ns0bFy__ 0 6 3 mat 1 3703 5 scale 1 3617 5 shear 1 3617 3 hpr 1 3617 9 translate 1 3617 2 cs 1 3529
1980 14 Dtool_Ns0bioSK 0 6 1421 3578 0 14 Dtool_Ns0bioSK 0 5 3 mat 1 3703 5 scale 1 3617 5 shear 1 3617 3 hpr 1 3617 9 translate 1 3617
1981 14 Dtool_Ns0bQLRi 0 6 1421 3578 0 14 Dtool_Ns0bQLRi 0 5 3 mat 1 3682 5 scale 1 3614 3 hpr 1 3614 9 translate 1 3614 2 cs 1 3529
1982 14 Dtool_Ns0bcmIP 0 6 1421 3578 0 14 Dtool_Ns0bcmIP 0 4 3 mat 1 3682 5 scale 1 3614 3 hpr 1 3614 9 translate 1 3614
1983 14 Dtool_Ns0bt1gv 0 6 1421 3578 0 14 Dtool_Ns0bt1gv 0 6 3 mat 1 3682 5 scale 1 3614 5 shear 1 3614 3 hpr 1 3614 9 translate 1 3614 2 cs 1 3529
1984 14 Dtool_Ns0bJlz6 0 6 1421 3578 0 14 Dtool_Ns0bJlz6 0 5 3 mat 1 3682 5 scale 1 3614 5 shear 1 3614 3 hpr 1 3614 9 translate 1 3614
1985 14 Dtool_Ns0b5kiD 0 4 1422 3573 0 14 Dtool_Ns0b5kiD 764 // Filename: compose_matrix_src.cxx
// Created by: drose (27Jan99)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: compose_matrix_old_hpr
// Description: Computes the 3x3 matrix from scale, shear, and
// rotation.
//////////////////////////////////////////////////////////////////// 5 3 mat 1 3698 5 scale 1 3618 5 shear 1 3618 3 hpr 1 3618 2 cs 1 3529
1986 14 Dtool_Ns0bTMeM 0 4 1422 3573 0 14 Dtool_Ns0bTMeM 764 // Filename: compose_matrix_src.cxx
// Created by: drose (27Jan99)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: compose_matrix_old_hpr
// Description: Computes the 3x3 matrix from scale, shear, and
// rotation.
//////////////////////////////////////////////////////////////////// 4 3 mat 1 3698 5 scale 1 3618 5 shear 1 3618 3 hpr 1 3618
1987 14 Dtool_Ns0bURso 0 4 1422 3573 0 14 Dtool_Ns0bURso 764 // Filename: compose_matrix_src.cxx
// Created by: drose (27Jan99)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: compose_matrix_old_hpr
// Description: Computes the 3x3 matrix from scale, shear, and
// rotation.
//////////////////////////////////////////////////////////////////// 5 3 mat 1 3677 5 scale 1 3615 5 shear 1 3615 3 hpr 1 3615 2 cs 1 3529
1988 14 Dtool_Ns0b_Rpx 0 4 1422 3573 0 14 Dtool_Ns0b_Rpx 764 // Filename: compose_matrix_src.cxx
// Created by: drose (27Jan99)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: compose_matrix_old_hpr
// Description: Computes the 3x3 matrix from scale, shear, and
// rotation.
//////////////////////////////////////////////////////////////////// 4 3 mat 1 3677 5 scale 1 3615 5 shear 1 3615 3 hpr 1 3615
1989 14 Dtool_Ns0baU0J 0 4 1422 3573 0 14 Dtool_Ns0baU0J 0 6 3 mat 1 3709 5 scale 1 3618 5 shear 1 3618 3 hpr 1 3618 9 translate 1 3618 2 cs 1 3529
1990 14 Dtool_Ns0b_LGV 0 4 1422 3573 0 14 Dtool_Ns0b_LGV 0 5 3 mat 1 3709 5 scale 1 3618 5 shear 1 3618 3 hpr 1 3618 9 translate 1 3618
1991 14 Dtool_Ns0bXr_e 0 4 1422 3573 0 14 Dtool_Ns0bXr_e 0 6 3 mat 1 3688 5 scale 1 3615 5 shear 1 3615 3 hpr 1 3615 9 translate 1 3615 2 cs 1 3529
1992 14 Dtool_Ns0bgMRq 0 4 1422 3573 0 14 Dtool_Ns0bgMRq 0 5 3 mat 1 3688 5 scale 1 3615 5 shear 1 3615 3 hpr 1 3615 9 translate 1 3615
1993 14 Dtool_Ns0btC1N 0 6 1423 3578 0 14 Dtool_Ns0btC1N 524 ////////////////////////////////////////////////////////////////////
// Function: decompose_matrix_old_hpr
// Description: Extracts out the components of a 3x3 rotation matrix.
// Returns true if successful, or false if there was an
// error. Since a 3x3 matrix always contains an affine
// transform, this should succeed in the normal case;
// singular transforms are not treated as an error.
//////////////////////////////////////////////////////////////////// 5 3 mat 1 3699 5 scale 1 3617 5 shear 1 3617 3 hpr 1 3617 2 cs 1 3529
1994 14 Dtool_Ns0bz5DH 0 6 1423 3578 0 14 Dtool_Ns0bz5DH 524 ////////////////////////////////////////////////////////////////////
// Function: decompose_matrix_old_hpr
// Description: Extracts out the components of a 3x3 rotation matrix.
// Returns true if successful, or false if there was an
// error. Since a 3x3 matrix always contains an affine
// transform, this should succeed in the normal case;
// singular transforms are not treated as an error.
//////////////////////////////////////////////////////////////////// 4 3 mat 1 3699 5 scale 1 3617 5 shear 1 3617 3 hpr 1 3617
1995 14 Dtool_Ns0bPOdX 0 6 1423 3578 0 14 Dtool_Ns0bPOdX 524 ////////////////////////////////////////////////////////////////////
// Function: decompose_matrix_old_hpr
// Description: Extracts out the components of a 3x3 rotation matrix.
// Returns true if successful, or false if there was an
// error. Since a 3x3 matrix always contains an affine
// transform, this should succeed in the normal case;
// singular transforms are not treated as an error.
//////////////////////////////////////////////////////////////////// 5 3 mat 1 3678 5 scale 1 3614 5 shear 1 3614 3 hpr 1 3614 2 cs 1 3529
1996 14 Dtool_Ns0bRWrQ 0 6 1423 3578 0 14 Dtool_Ns0bRWrQ 524 ////////////////////////////////////////////////////////////////////
// Function: decompose_matrix_old_hpr
// Description: Extracts out the components of a 3x3 rotation matrix.
// Returns true if successful, or false if there was an
// error. Since a 3x3 matrix always contains an affine
// transform, this should succeed in the normal case;
// singular transforms are not treated as an error.
//////////////////////////////////////////////////////////////////// 4 3 mat 1 3678 5 scale 1 3614 5 shear 1 3614 3 hpr 1 3614
1997 14 Dtool_Ns0bvhAZ 0 6 1423 3578 0 14 Dtool_Ns0bvhAZ 0 6 3 mat 1 3703 5 scale 1 3617 5 shear 1 3617 3 hpr 1 3617 9 translate 1 3617 2 cs 1 3529
1998 14 Dtool_Ns0bPJWn 0 6 1423 3578 0 14 Dtool_Ns0bPJWn 0 5 3 mat 1 3703 5 scale 1 3617 5 shear 1 3617 3 hpr 1 3617 9 translate 1 3617
1999 14 Dtool_Ns0bST9i 0 6 1423 3578 0 14 Dtool_Ns0bST9i 0 6 3 mat 1 3682 5 scale 1 3614 5 shear 1 3614 3 hpr 1 3614 9 translate 1 3614 2 cs 1 3529
2000 14 Dtool_Ns0b95Tx 0 6 1423 3578 0 14 Dtool_Ns0b95Tx 0 5 3 mat 1 3682 5 scale 1 3614 5 shear 1 3614 3 hpr 1 3614 9 translate 1 3614
2001 14 Dtool_Ns0b2yX5 0 4 1424 3573 0 14 Dtool_Ns0b2yX5 268 ////////////////////////////////////////////////////////////////////
// Function: compose_matrix_new_hpr
// Description: Computes the 3x3 matrix from scale, shear, and
// rotation.
//////////////////////////////////////////////////////////////////// 5 3 mat 1 3698 5 scale 1 3618 5 shear 1 3618 3 hpr 1 3618 2 cs 1 3529
2002 14 Dtool_Ns0bZHTC 0 4 1424 3573 0 14 Dtool_Ns0bZHTC 268 ////////////////////////////////////////////////////////////////////
// Function: compose_matrix_new_hpr
// Description: Computes the 3x3 matrix from scale, shear, and
// rotation.
//////////////////////////////////////////////////////////////////// 4 3 mat 1 3698 5 scale 1 3618 5 shear 1 3618 3 hpr 1 3618
2003 14 Dtool_Ns0bSFhe 0 4 1424 3573 0 14 Dtool_Ns0bSFhe 268 ////////////////////////////////////////////////////////////////////
// Function: compose_matrix_new_hpr
// Description: Computes the 3x3 matrix from scale, shear, and
// rotation.
//////////////////////////////////////////////////////////////////// 5 3 mat 1 3677 5 scale 1 3615 5 shear 1 3615 3 hpr 1 3615 2 cs 1 3529
2004 14 Dtool_Ns0b1Zen 0 4 1424 3573 0 14 Dtool_Ns0b1Zen 268 ////////////////////////////////////////////////////////////////////
// Function: compose_matrix_new_hpr
// Description: Computes the 3x3 matrix from scale, shear, and
// rotation.
//////////////////////////////////////////////////////////////////// 4 3 mat 1 3677 5 scale 1 3615 5 shear 1 3615 3 hpr 1 3615
2005 14 Dtool_Ns0bXOp_ 0 4 1424 3573 0 14 Dtool_Ns0bXOp_ 0 6 3 mat 1 3709 5 scale 1 3618 5 shear 1 3618 3 hpr 1 3618 9 translate 1 3618 2 cs 1 3529
2006 14 Dtool_Ns0bIA7K 0 4 1424 3573 0 14 Dtool_Ns0bIA7K 0 5 3 mat 1 3709 5 scale 1 3618 5 shear 1 3618 3 hpr 1 3618 9 translate 1 3618
2007 14 Dtool_Ns0bR3yU 0 4 1424 3573 0 14 Dtool_Ns0bR3yU 0 6 3 mat 1 3688 5 scale 1 3615 5 shear 1 3615 3 hpr 1 3615 9 translate 1 3615 2 cs 1 3529
2008 14 Dtool_Ns0bKHGg 0 4 1424 3573 0 14 Dtool_Ns0bKHGg 0 5 3 mat 1 3688 5 scale 1 3615 5 shear 1 3615 3 hpr 1 3615 9 translate 1 3615
2009 14 Dtool_Ns0b0nyg 0 6 1425 3578 0 14 Dtool_Ns0b0nyg 524 ////////////////////////////////////////////////////////////////////
// Function: decompose_matrix_new_hpr
// Description: Extracts out the components of a 3x3 rotation matrix.
// Returns true if successful, or false if there was an
// error. Since a 3x3 matrix always contains an affine
// transform, this should succeed in the normal case;
// singular transforms are not treated as an error.
//////////////////////////////////////////////////////////////////// 5 3 mat 1 3699 5 scale 1 3617 5 shear 1 3617 3 hpr 1 3617 2 cs 1 3529
2010 14 Dtool_Ns0bWfBa 0 6 1425 3578 0 14 Dtool_Ns0bWfBa 524 ////////////////////////////////////////////////////////////////////
// Function: decompose_matrix_new_hpr
// Description: Extracts out the components of a 3x3 rotation matrix.
// Returns true if successful, or false if there was an
// error. Since a 3x3 matrix always contains an affine
// transform, this should succeed in the normal case;
// singular transforms are not treated as an error.
//////////////////////////////////////////////////////////////////// 4 3 mat 1 3699 5 scale 1 3617 5 shear 1 3617 3 hpr 1 3617
2011 14 Dtool_Ns0bSuaq 0 6 1425 3578 0 14 Dtool_Ns0bSuaq 524 ////////////////////////////////////////////////////////////////////
// Function: decompose_matrix_new_hpr
// Description: Extracts out the components of a 3x3 rotation matrix.
// Returns true if successful, or false if there was an
// error. Since a 3x3 matrix always contains an affine
// transform, this should succeed in the normal case;
// singular transforms are not treated as an error.
//////////////////////////////////////////////////////////////////// 5 3 mat 1 3678 5 scale 1 3614 5 shear 1 3614 3 hpr 1 3614 2 cs 1 3529
2012 14 Dtool_Ns0b7noj 0 6 1425 3578 0 14 Dtool_Ns0b7noj 524 ////////////////////////////////////////////////////////////////////
// Function: decompose_matrix_new_hpr
// Description: Extracts out the components of a 3x3 rotation matrix.
// Returns true if successful, or false if there was an
// error. Since a 3x3 matrix always contains an affine
// transform, this should succeed in the normal case;
// singular transforms are not treated as an error.
//////////////////////////////////////////////////////////////////// 4 3 mat 1 3678 5 scale 1 3614 5 shear 1 3614 3 hpr 1 3614
2013 14 Dtool_Ns0bBw_r 0 6 1425 3578 0 14 Dtool_Ns0bBw_r 0 6 3 mat 1 3703 5 scale 1 3617 5 shear 1 3617 3 hpr 1 3617 9 translate 1 3617 2 cs 1 3529
2014 14 Dtool_Ns0b1_T6 0 6 1425 3578 0 14 Dtool_Ns0b1_T6 0 5 3 mat 1 3703 5 scale 1 3617 5 shear 1 3617 3 hpr 1 3617 9 translate 1 3617
2015 14 Dtool_Ns0b3x61 0 6 1425 3578 0 14 Dtool_Ns0b3x61 0 6 3 mat 1 3682 5 scale 1 3614 5 shear 1 3614 3 hpr 1 3614 9 translate 1 3614 2 cs 1 3529
2016 14 Dtool_Ns0bGpPE 0 6 1425 3578 0 14 Dtool_Ns0bGpPE 0 5 3 mat 1 3682 5 scale 1 3614 5 shear 1 3614 3 hpr 1 3614 9 translate 1 3614
2017 14 Dtool_Ns0b2peC 0 7 1426 3617 2386 14 Dtool_Ns0b2peC 505 ////////////////////////////////////////////////////////////////////
// Function: old_to_new_hpr
// Description: Converts the HPR as represented in the old, broken
// way to the new, correct representation. Returns the
// new HPR.
//
// This function is provided to ease transition from old
// systems that relied on Panda's original broken HPR
// calculation.
//////////////////////////////////////////////////////////////////// 1 7 old_hpr 1 3618
2018 14 Dtool_Ns0bI0gC 0 7 1426 3614 2314 14 Dtool_Ns0bI0gC 505 ////////////////////////////////////////////////////////////////////
// Function: old_to_new_hpr
// Description: Converts the HPR as represented in the old, broken
// way to the new, correct representation. Returns the
// new HPR.
//
// This function is provided to ease transition from old
// systems that relied on Panda's original broken HPR
// calculation.
//////////////////////////////////////////////////////////////////// 1 7 old_hpr 1 3615
2019 14 Dtool_Ns0bPgfc 0 7 1427 3617 2386 14 Dtool_Ns0bPgfc 535 ////////////////////////////////////////////////////////////////////
// Function: new_to_old_hpr
// Description: Converts the HPR as represented in the new, correct
// representation to the old, broken way. Returns the
// old HPR. Useful only for backporting.
//
// This function is provided to ease transition from new
// systems that relied on Panda's original broken HPR
// calculation.
//////////////////////////////////////////////////////////////////// 1 7 new_hpr 1 3618
2020 14 Dtool_Ns0bZEhc 0 7 1427 3614 2314 14 Dtool_Ns0bZEhc 535 ////////////////////////////////////////////////////////////////////
// Function: new_to_old_hpr
// Description: Converts the HPR as represented in the new, correct
// representation to the old, broken way. Returns the
// old HPR. Useful only for backporting.
//
// This function is provided to ease transition from new
// systems that relied on Panda's original broken HPR
// calculation.
//////////////////////////////////////////////////////////////////// 1 7 new_hpr 1 3615
221
3516 11 MathNumbers 0 141313 11 MathNumbers 11 MathNumbers 0 0 0 0 2021 0 0 0 0 0 0 0 0
3517 10 LVecBase2f 0 26625 10 LVecBase2f 10 LVecBase2f 0 0 0 1 2024 2032 0 60 2025 2026 2027 2028 2029 2030 2031 2033 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 0 0 0 0 0 752
// Filename: lvecBase2_src.h
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Class : LVecBase2
// Description : This is the base class for all two-component
// vectors and points.
////////////////////////////////////////////////////////////////////
3518 10 LVecBase2d 0 26625 10 LVecBase2d 10 LVecBase2d 0 0 0 1 2086 2094 0 60 2087 2088 2089 2090 2091 2092 2093 2095 2096 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 0 0 0 0 0 752
// Filename: lvecBase2_src.h
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Class : LVecBase2
// Description : This is the base class for all two-component
// vectors and points.
////////////////////////////////////////////////////////////////////
3519 10 LVecBase2i 0 26625 10 LVecBase2i 10 LVecBase2i 0 0 0 1 2148 2156 0 57 2149 2150 2151 2152 2153 2154 2155 2157 2158 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188 2189 2190 2191 2192 2193 2194 2195 2196 2197 2198 2199 2200 2201 2202 2203 2204 2205 2206 0 0 0 0 0 752
// Filename: lvecBase2_src.h
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Class : LVecBase2
// Description : This is the base class for all two-component
// vectors and points.
////////////////////////////////////////////////////////////////////
3520 9 LVector2f 0 141313 9 LVector2f 9 LVector2f 0 0 0 1 2207 2224 0 16 2208 2209 2210 2211 2212 2213 2214 2215 2216 2217 2218 2219 2220 2221 2222 2223 0 0 1 0 3517 0 0 0 0 707
// Filename: lvector2_src.h
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Class : LVector2
// Description : This is a two-component vector offset.
////////////////////////////////////////////////////////////////////
3521 9 LVector2d 0 141313 9 LVector2d 9 LVector2d 0 0 0 1 2225 2242 0 16 2226 2227 2228 2229 2230 2231 2232 2233 2234 2235 2236 2237 2238 2239 2240 2241 0 0 1 0 3518 0 0 0 0 707
// Filename: lvector2_src.h
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Class : LVector2
// Description : This is a two-component vector offset.
////////////////////////////////////////////////////////////////////
3522 9 LVector2i 0 141313 9 LVector2i 9 LVector2i 0 0 0 1 2243 2257 0 13 2244 2245 2246 2247 2248 2249 2250 2251 2252 2253 2254 2255 2256 0 0 1 0 3519 0 0 0 0 707
// Filename: lvector2_src.h
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Class : LVector2
// Description : This is a two-component vector offset.
////////////////////////////////////////////////////////////////////
3523 8 LPoint2f 0 141313 8 LPoint2f 8 LPoint2f 0 0 0 1 2258 2273 0 14 2259 2260 2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 2271 2272 0 0 1 0 3517 0 0 0 0 706
// Filename: lpoint2_src.h
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Class : LPoint2
// Description : This is a two-component point in space.
////////////////////////////////////////////////////////////////////
3524 8 LPoint2d 0 141313 8 LPoint2d 8 LPoint2d 0 0 0 1 2274 2289 0 14 2275 2276 2277 2278 2279 2280 2281 2282 2283 2284 2285 2286 2287 2288 0 0 1 0 3518 0 0 0 0 706
// Filename: lpoint2_src.h
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Class : LPoint2
// Description : This is a two-component point in space.
////////////////////////////////////////////////////////////////////
3525 8 LPoint2i 0 141313 8 LPoint2i 8 LPoint2i 0 0 0 1 2290 2304 0 13 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 0 0 1 0 3519 0 0 0 0 706
// Filename: lpoint2_src.h
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Class : LPoint2
// Description : This is a two-component point in space.
////////////////////////////////////////////////////////////////////
3526 10 LVecBase3f 0 26625 10 LVecBase3f 10 LVecBase3f 0 0 0 1 2305 2314 0 70 2306 2307 2308 2309 2310 2311 2312 2313 2315 2316 2317 2318 2319 2320 2321 2322 2323 2324 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 0 0 0 0 0 754
// Filename: lvecBase3_src.h
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Class : LVecBase3
// Description : This is the base class for all three-component
// vectors and points.
////////////////////////////////////////////////////////////////////
3527 10 LVecBase3d 0 26625 10 LVecBase3d 10 LVecBase3d 0 0 0 1 2377 2386 0 70 2378 2379 2380 2381 2382 2383 2384 2385 2387 2388 2389 2390 2391 2392 2393 2394 2395 2396 2397 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 0 0 0 0 0 754
// Filename: lvecBase3_src.h
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Class : LVecBase3
// Description : This is the base class for all three-component
// vectors and points.
////////////////////////////////////////////////////////////////////
3528 10 LVecBase3i 0 26625 10 LVecBase3i 10 LVecBase3i 0 0 0 1 2449 2458 0 67 2450 2451 2452 2453 2454 2455 2456 2457 2459 2460 2461 2462 2463 2464 2465 2466 2467 2468 2469 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 2502 2503 2504 2505 2506 2507 2508 2509 2510 2511 2512 2513 2514 2515 2516 2517 0 0 0 0 0 754
// Filename: lvecBase3_src.h
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Class : LVecBase3
// Description : This is the base class for all three-component
// vectors and points.
////////////////////////////////////////////////////////////////////
3529 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 0 12 CS_zup_right 12 CS_zup_right 1 12 CS_yup_right 12 CS_yup_right 2 11 CS_zup_left 11 CS_zup_left 3 11 CS_yup_left 11 CS_yup_left 4 10 CS_invalid 10 CS_invalid 5 0 0
3530 9 LVector3f 0 141313 9 LVector3f 9 LVector3f 0 0 0 1 2522 2555 0 32 2523 2524 2525 2526 2527 2528 2529 2530 2531 2532 2533 2534 2535 2536 2537 2538 2539 2540 2541 2542 2543 2544 2545 2546 2547 2548 2549 2550 2551 2552 2553 2554 0 0 1 0 3526 0 0 0 0 1086
// Filename: lvector3_src.h
// Created by: drose (24Sep99)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Class : LVector3
// Description : 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.
////////////////////////////////////////////////////////////////////
3531 9 LVector3d 0 141313 9 LVector3d 9 LVector3d 0 0 0 1 2556 2589 0 32 2557 2558 2559 2560 2561 2562 2563 2564 2565 2566 2567 2568 2569 2570 2571 2572 2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 0 0 1 0 3527 0 0 0 0 1086
// Filename: lvector3_src.h
// Created by: drose (24Sep99)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Class : LVector3
// Description : 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.
////////////////////////////////////////////////////////////////////
3532 9 LVector3i 0 141313 9 LVector3i 9 LVector3i 0 0 0 1 2590 2616 0 25 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 0 0 1 0 3528 0 0 0 0 1086
// Filename: lvector3_src.h
// Created by: drose (24Sep99)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Class : LVector3
// Description : 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.
////////////////////////////////////////////////////////////////////
3533 8 LPoint3f 0 141313 8 LPoint3f 8 LPoint3f 0 0 0 1 2617 2639 0 21 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 0 0 1 0 3526 0 0 0 0 1083
// Filename: lpoint3_src.h
// Created by: drose (25Sep99)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Class : LPoint3
// Description : 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.
////////////////////////////////////////////////////////////////////
3534 8 LPoint3d 0 141313 8 LPoint3d 8 LPoint3d 0 0 0 1 2640 2662 0 21 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 0 0 1 0 3527 0 0 0 0 1083
// Filename: lpoint3_src.h
// Created by: drose (25Sep99)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Class : LPoint3
// Description : 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.
////////////////////////////////////////////////////////////////////
3535 8 LPoint3i 0 141313 8 LPoint3i 8 LPoint3i 0 0 0 1 2663 2684 0 20 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 0 0 1 0 3528 0 0 0 0 1083
// Filename: lpoint3_src.h
// Created by: drose (25Sep99)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Class : LPoint3
// Description : 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.
////////////////////////////////////////////////////////////////////
3536 10 LVecBase4f 0 26625 10 LVecBase4f 10 LVecBase4f 0 0 0 1 2685 2695 0 68 2686 2687 2688 2689 2690 2691 2692 2693 2694 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 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 0 0 0 0 0 265
////////////////////////////////////////////////////////////////////
// Class : LVecBase4
// Description : This is the base class for all three-component
// vectors and points.
////////////////////////////////////////////////////////////////////
3537 19 UnalignedLVecBase4f 0 141313 19 UnalignedLVecBase4f 19 UnalignedLVecBase4f 0 0 0 1 2755 2764 0 8 2756 2757 2758 2759 2760 2761 2762 2763 0 0 0 0 0 675
////////////////////////////////////////////////////////////////////
// Class : UnalignedLVecBase4
// Description : 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.
////////////////////////////////////////////////////////////////////
3538 10 LVecBase4d 0 26625 10 LVecBase4d 10 LVecBase4d 0 0 0 1 2765 2775 0 68 2766 2767 2768 2769 2770 2771 2772 2773 2774 2776 2777 2778 2779 2780 2781 2782 2783 2784 2785 2786 2787 2788 2789 2790 2791 2792 2793 2794 2795 2796 2797 2798 2799 2800 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 0 0 0 0 0 265
////////////////////////////////////////////////////////////////////
// Class : LVecBase4
// Description : This is the base class for all three-component
// vectors and points.
////////////////////////////////////////////////////////////////////
3539 19 UnalignedLVecBase4d 0 141313 19 UnalignedLVecBase4d 19 UnalignedLVecBase4d 0 0 0 1 2835 2844 0 8 2836 2837 2838 2839 2840 2841 2842 2843 0 0 0 0 0 675
////////////////////////////////////////////////////////////////////
// Class : UnalignedLVecBase4
// Description : 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.
////////////////////////////////////////////////////////////////////
3540 10 LVecBase4i 0 26625 10 LVecBase4i 10 LVecBase4i 0 0 0 1 2845 2855 0 65 2846 2847 2848 2849 2850 2851 2852 2853 2854 2856 2857 2858 2859 2860 2861 2862 2863 2864 2865 2866 2867 2868 2869 2870 2871 2872 2873 2874 2875 2876 2877 2878 2879 2880 2881 2882 2883 2884 2885 2886 2887 2888 2889 2890 2891 2892 2893 2894 2895 2896 2897 2898 2899 2900 2901 2902 2903 2904 2905 2906 2907 2908 2909 2910 2911 0 0 0 0 0 265
////////////////////////////////////////////////////////////////////
// Class : LVecBase4
// Description : This is the base class for all three-component
// vectors and points.
////////////////////////////////////////////////////////////////////
3541 19 UnalignedLVecBase4i 0 141313 19 UnalignedLVecBase4i 19 UnalignedLVecBase4i 0 0 0 1 2912 2921 0 8 2913 2914 2915 2916 2917 2918 2919 2920 0 0 0 0 0 675
////////////////////////////////////////////////////////////////////
// Class : UnalignedLVecBase4
// Description : 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.
////////////////////////////////////////////////////////////////////
3542 9 LVector4f 0 141313 9 LVector4f 9 LVector4f 0 0 0 1 2922 2939 0 16 2923 2924 2925 2926 2927 2928 2929 2930 2931 2932 2933 2934 2935 2936 2937 2938 0 0 1 0 3536 0 0 0 0 710
// Filename: lvector4_src.h
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Class : LVector4
// Description : This is a four-component vector distance.
////////////////////////////////////////////////////////////////////
3543 9 LVector4d 0 141313 9 LVector4d 9 LVector4d 0 0 0 1 2940 2957 0 16 2941 2942 2943 2944 2945 2946 2947 2948 2949 2950 2951 2952 2953 2954 2955 2956 0 0 1 0 3538 0 0 0 0 710
// Filename: lvector4_src.h
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Class : LVector4
// Description : This is a four-component vector distance.
////////////////////////////////////////////////////////////////////
3544 9 LVector4i 0 141313 9 LVector4i 9 LVector4i 0 0 0 1 2958 2974 0 15 2959 2960 2961 2962 2963 2964 2965 2966 2967 2968 2969 2970 2971 2972 2973 0 0 1 0 3540 0 0 0 0 710
// Filename: lvector4_src.h
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Class : LVector4
// Description : This is a four-component vector distance.
////////////////////////////////////////////////////////////////////
3545 8 LPoint4f 0 141313 8 LPoint4f 8 LPoint4f 0 0 0 1 2975 2992 0 16 2976 2977 2978 2979 2980 2981 2982 2983 2984 2985 2986 2987 2988 2989 2990 2991 0 0 1 0 3536 0 0 0 0 707
// Filename: lpoint4_src.h
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Class : LPoint4
// Description : This is a four-component point in space.
////////////////////////////////////////////////////////////////////
3546 8 LPoint4d 0 141313 8 LPoint4d 8 LPoint4d 0 0 0 1 2993 3010 0 16 2994 2995 2996 2997 2998 2999 3000 3001 3002 3003 3004 3005 3006 3007 3008 3009 0 0 1 0 3538 0 0 0 0 707
// Filename: lpoint4_src.h
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Class : LPoint4
// Description : This is a four-component point in space.
////////////////////////////////////////////////////////////////////
3547 8 LPoint4i 0 141313 8 LPoint4i 8 LPoint4i 0 0 0 1 3011 3027 0 15 3012 3013 3014 3015 3016 3017 3018 3019 3020 3021 3022 3023 3024 3025 3026 0 0 1 0 3540 0 0 0 0 707
// Filename: lpoint4_src.h
// Created by: drose (08Mar00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Class : LPoint4
// Description : This is a four-component point in space.
////////////////////////////////////////////////////////////////////
3548 9 LMatrix3f 0 141313 9 LMatrix3f 9 LMatrix3f 0 0 0 1 3035 3108 0 72 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 3084 3085 3086 3087 3088 3089 3090 3091 3092 3093 3094 3095 3096 3097 3098 3099 3100 3101 3102 3103 3104 3105 3106 3107 4 3737 3738 3739 3740 0 0 0 2 3549 3550 462
////////////////////////////////////////////////////////////////////
// Class : LMatrix3
// Description : 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.
////////////////////////////////////////////////////////////////////
3549 3 Row 0 403457 14 LMatrix3f::Row 14 LMatrix3f::Row 3548 0 0 0 3031 0 3 3028 3029 3030 0 0 0 0 0 66
// These helper classes are used to support two-level operator [].
3550 4 CRow 0 403457 15 LMatrix3f::CRow 15 LMatrix3f::CRow 3548 0 0 0 3034 0 2 3032 3033 0 0 0 0 0 0
3551 9 LMatrix4f 0 141313 9 LMatrix4f 9 LMatrix4f 0 0 0 1 3118 3201 0 82 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 3184 3185 3186 3187 3188 3189 3190 3191 3192 3193 3194 3195 3196 3197 3198 3199 3200 3 3741 3742 3743 0 0 0 2 3552 3553 215
////////////////////////////////////////////////////////////////////
// Class : LMatrix4
// Description : This is a 4-by-4 transform matrix.
////////////////////////////////////////////////////////////////////
3552 3 Row 0 403457 14 LMatrix4f::Row 14 LMatrix4f::Row 3551 0 0 0 3114 0 3 3111 3112 3113 0 0 0 0 0 66
// These helper classes are used to support two-level operator [].
3553 4 CRow 0 403457 15 LMatrix4f::CRow 15 LMatrix4f::CRow 3551 0 0 0 3117 0 2 3115 3116 0 0 0 0 0 0
3554 18 UnalignedLMatrix4f 0 141313 18 UnalignedLMatrix4f 18 UnalignedLMatrix4f 0 0 0 1 3202 3209 0 6 3203 3204 3205 3206 3207 3208 0 0 0 0 0 671
////////////////////////////////////////////////////////////////////
// Class : UnalignedLMatrix4
// Description : 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.
////////////////////////////////////////////////////////////////////
3555 9 LMatrix3d 0 141313 9 LMatrix3d 9 LMatrix3d 0 0 0 1 3217 3290 0 72 3218 3219 3220 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 3282 3283 3284 3285 3286 3287 3288 3289 4 3744 3745 3746 3747 0 0 0 2 3556 3557 462
////////////////////////////////////////////////////////////////////
// Class : LMatrix3
// Description : 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.
////////////////////////////////////////////////////////////////////
3556 3 Row 0 403457 14 LMatrix3d::Row 14 LMatrix3d::Row 3555 0 0 0 3213 0 3 3210 3211 3212 0 0 0 0 0 66
// These helper classes are used to support two-level operator [].
3557 4 CRow 0 403457 15 LMatrix3d::CRow 15 LMatrix3d::CRow 3555 0 0 0 3216 0 2 3214 3215 0 0 0 0 0 0
3558 9 LMatrix4d 0 141313 9 LMatrix4d 9 LMatrix4d 0 0 0 1 3298 3381 0 82 3299 3300 3301 3302 3303 3304 3305 3306 3307 3308 3309 3310 3311 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 3380 3 3748 3749 3750 0 0 0 2 3559 3560 215
////////////////////////////////////////////////////////////////////
// Class : LMatrix4
// Description : This is a 4-by-4 transform matrix.
////////////////////////////////////////////////////////////////////
3559 3 Row 0 403457 14 LMatrix4d::Row 14 LMatrix4d::Row 3558 0 0 0 3294 0 3 3291 3292 3293 0 0 0 0 0 66
// These helper classes are used to support two-level operator [].
3560 4 CRow 0 403457 15 LMatrix4d::CRow 15 LMatrix4d::CRow 3558 0 0 0 3297 0 2 3295 3296 0 0 0 0 0 0
3561 18 UnalignedLMatrix4d 0 141313 18 UnalignedLMatrix4d 18 UnalignedLMatrix4d 0 0 0 1 3382 3389 0 6 3383 3384 3385 3386 3387 3388 0 0 0 0 0 671
////////////////////////////////////////////////////////////////////
// Class : UnalignedLMatrix4
// Description : 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.
////////////////////////////////////////////////////////////////////
3562 12 LQuaternionf 0 141313 12 LQuaternionf 12 LQuaternionf 0 0 0 1 3402 3449 0 46 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 3447 3448 0 0 1 0 3536 0 0 0 0 719
// Filename: lquaternion_src.h
// Created by: frang (06Jun00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Class : FLOATNAME(LQuaternion)
// Description : This is the base quaternion class
////////////////////////////////////////////////////////////////////
3563 12 LQuaterniond 0 141313 12 LQuaterniond 12 LQuaterniond 0 0 0 1 3450 3497 0 46 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 3496 0 0 1 0 3538 0 0 0 0 719
// Filename: lquaternion_src.h
// Created by: frang (06Jun00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Class : FLOATNAME(LQuaternion)
// Description : This is the base quaternion class
////////////////////////////////////////////////////////////////////
3564 10 LRotationf 0 141313 10 LRotationf 10 LRotationf 0 0 0 1 3498 3502 0 3 3499 3500 3501 0 0 1 0 3562 0 0 0 0 738
// Filename: lrotation_src.h
// Created by: frang, charles (23Jun00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
// Class : LRotation
// Description : This is a unit quaternion representing a rotation.
////////////////////////////////////////////////////////////////////////
3565 10 LRotationd 0 141313 10 LRotationd 10 LRotationd 0 0 0 1 3503 3507 0 3 3504 3505 3506 0 0 1 0 3563 0 0 0 0 738
// Filename: lrotation_src.h
// Created by: frang, charles (23Jun00)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
// Class : LRotation
// Description : This is a unit quaternion representing a rotation.
////////////////////////////////////////////////////////////////////////
3566 13 LOrientationf 0 141313 13 LOrientationf 13 LOrientationf 0 0 0 1 3508 3511 0 2 3509 3510 0 0 1 0 3562 0 0 0 0 247
////////////////////////////////////////////////////////////////////////
// Class : LOrientation
// Description : This is a unit quaternion representing an orientation.
////////////////////////////////////////////////////////////////////////
3567 13 LOrientationd 0 141313 13 LOrientationd 13 LOrientationd 0 0 0 1 3512 3515 0 2 3513 3514 0 0 1 0 3563 0 0 0 0 247
////////////////////////////////////////////////////////////////////////
// Class : LOrientation
// Description : This is a unit quaternion representing an orientation.
////////////////////////////////////////////////////////////////////////
3568 12 LVecBase2f * 0 8576 12 LVecBase2f * 12 LVecBase2f * 0 0 3517 0 0 0 0 0 0 0 0 0 0
3569 18 LVecBase2f const * 0 8576 18 LVecBase2f const * 18 LVecBase2f const * 0 0 3570 0 0 0 0 0 0 0 0 0 0
3570 16 LVecBase2f const 0 8832 16 LVecBase2f const 16 LVecBase2f const 0 0 3517 0 0 0 0 0 0 0 0 0 0
3571 5 float 0 8194 5 float 5 float 0 2 0 0 0 0 0 0 0 0 0 0 0
3572 12 unsigned int 0 8198 12 unsigned int 12 unsigned int 0 1 0 0 0 0 0 0 0 0 0 0 0
3573 4 void 0 8194 4 void 4 void 0 6 0 0 0 0 0 0 0 0 0 0 0
3574 10 PyObject * 0 8576 10 PyObject * 10 PyObject * 0 0 3575 0 0 0 0 0 0 0 0 0 0
3575 8 PyObject 0 2048 8 PyObject 8 PyObject 0 0 0 0 0 0 0 0 0 0 0 0 0
3576 13 atomic string 0 2 13 atomic string 13 atomic string 0 7 0 0 0 0 0 0 0 0 0 0 0
3577 3 int 0 8194 3 int 3 int 0 1 0 0 0 0 0 0 0 0 0 0 0
3578 4 bool 0 8194 4 bool 4 bool 0 4 0 0 0 0 0 0 0 0 0 0 0
3579 23 ChecksumHashGenerator * 0 8576 23 ChecksumHashGenerator * 23 ChecksumHashGenerator * 0 0 3580 0 0 0 0 0 0 0 0 0 0
3580 21 ChecksumHashGenerator 0 2048 21 ChecksumHashGenerator 21 ChecksumHashGenerator 0 0 0 0 0 0 0 0 0 0 0 0 339
////////////////////////////////////////////////////////////////////
// Class : ChecksumHashGenerator
// Description : This is a specific kind of HashGenerator that simply
// adds up all of the ints. Nothing fancy, and pretty
// quick.
////////////////////////////////////////////////////////////////////
3581 9 ostream * 0 8576 9 ostream * 9 ostream * 0 0 3582 0 0 0 0 0 0 0 0 0 0
3582 7 ostream 0 2048 7 ostream 7 ostream 0 0 0 0 0 0 0 0 0 0 0 0 0
3583 10 Datagram * 0 8576 10 Datagram * 10 Datagram * 0 0 3584 0 0 0 0 0 0 0 0 0 0
3584 8 Datagram 0 2048 8 Datagram 8 Datagram 0 0 0 0 0 0 0 0 0 0 0 0 900
////////////////////////////////////////////////////////////////////
// Class : Datagram
// Description : 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.
////////////////////////////////////////////////////////////////////
3585 18 DatagramIterator * 0 8576 18 DatagramIterator * 18 DatagramIterator * 0 0 3586 0 0 0 0 0 0 0 0 0 0
3586 16 DatagramIterator 0 2048 16 DatagramIterator 16 DatagramIterator 0 0 0 0 0 0 0 0 0 0 0 0 438
////////////////////////////////////////////////////////////////////
// Class : DatagramIterator
// Description : 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.
////////////////////////////////////////////////////////////////////
3587 10 TypeHandle 0 2048 10 TypeHandle 10 TypeHandle 0 0 0 0 0 0 0 0 0 0 0 0 1098
////////////////////////////////////////////////////////////////////
// Class : TypeHandle
// Description : 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.
////////////////////////////////////////////////////////////////////
3588 12 TypeHandle * 0 8576 12 TypeHandle * 12 TypeHandle * 0 0 3587 0 0 0 0 0 0 0 0 0 0
3589 12 LVecBase2d * 0 8576 12 LVecBase2d * 12 LVecBase2d * 0 0 3518 0 0 0 0 0 0 0 0 0 0
3590 18 LVecBase2d const * 0 8576 18 LVecBase2d const * 18 LVecBase2d const * 0 0 3591 0 0 0 0 0 0 0 0 0 0
3591 16 LVecBase2d const 0 8832 16 LVecBase2d const 16 LVecBase2d const 0 0 3518 0 0 0 0 0 0 0 0 0 0
3592 6 double 0 8194 6 double 6 double 0 3 0 0 0 0 0 0 0 0 0 0 0
3593 12 LVecBase2i * 0 8576 12 LVecBase2i * 12 LVecBase2i * 0 0 3519 0 0 0 0 0 0 0 0 0 0
3594 18 LVecBase2i const * 0 8576 18 LVecBase2i const * 18 LVecBase2i const * 0 0 3595 0 0 0 0 0 0 0 0 0 0
3595 16 LVecBase2i const 0 8832 16 LVecBase2i const 16 LVecBase2i const 0 0 3519 0 0 0 0 0 0 0 0 0 0
3596 11 LVector2f * 0 8576 11 LVector2f * 11 LVector2f * 0 0 3520 0 0 0 0 0 0 0 0 0 0
3597 17 LVector2f const * 0 8576 17 LVector2f const * 17 LVector2f const * 0 0 3598 0 0 0 0 0 0 0 0 0 0
3598 15 LVector2f const 0 8832 15 LVector2f const 15 LVector2f const 0 0 3520 0 0 0 0 0 0 0 0 0 0
3599 11 LVector2d * 0 8576 11 LVector2d * 11 LVector2d * 0 0 3521 0 0 0 0 0 0 0 0 0 0
3600 17 LVector2d const * 0 8576 17 LVector2d const * 17 LVector2d const * 0 0 3601 0 0 0 0 0 0 0 0 0 0
3601 15 LVector2d const 0 8832 15 LVector2d const 15 LVector2d const 0 0 3521 0 0 0 0 0 0 0 0 0 0
3602 11 LVector2i * 0 8576 11 LVector2i * 11 LVector2i * 0 0 3522 0 0 0 0 0 0 0 0 0 0
3603 17 LVector2i const * 0 8576 17 LVector2i const * 17 LVector2i const * 0 0 3604 0 0 0 0 0 0 0 0 0 0
3604 15 LVector2i const 0 8832 15 LVector2i const 15 LVector2i const 0 0 3522 0 0 0 0 0 0 0 0 0 0
3605 10 LPoint2f * 0 8576 10 LPoint2f * 10 LPoint2f * 0 0 3523 0 0 0 0 0 0 0 0 0 0
3606 16 LPoint2f const * 0 8576 16 LPoint2f const * 16 LPoint2f const * 0 0 3607 0 0 0 0 0 0 0 0 0 0
3607 14 LPoint2f const 0 8832 14 LPoint2f const 14 LPoint2f const 0 0 3523 0 0 0 0 0 0 0 0 0 0
3608 10 LPoint2d * 0 8576 10 LPoint2d * 10 LPoint2d * 0 0 3524 0 0 0 0 0 0 0 0 0 0
3609 16 LPoint2d const * 0 8576 16 LPoint2d const * 16 LPoint2d const * 0 0 3610 0 0 0 0 0 0 0 0 0 0
3610 14 LPoint2d const 0 8832 14 LPoint2d const 14 LPoint2d const 0 0 3524 0 0 0 0 0 0 0 0 0 0
3611 10 LPoint2i * 0 8576 10 LPoint2i * 10 LPoint2i * 0 0 3525 0 0 0 0 0 0 0 0 0 0
3612 16 LPoint2i const * 0 8576 16 LPoint2i const * 16 LPoint2i const * 0 0 3613 0 0 0 0 0 0 0 0 0 0
3613 14 LPoint2i const 0 8832 14 LPoint2i const 14 LPoint2i const 0 0 3525 0 0 0 0 0 0 0 0 0 0
3614 12 LVecBase3f * 0 8576 12 LVecBase3f * 12 LVecBase3f * 0 0 3526 0 0 0 0 0 0 0 0 0 0
3615 18 LVecBase3f const * 0 8576 18 LVecBase3f const * 18 LVecBase3f const * 0 0 3616 0 0 0 0 0 0 0 0 0 0
3616 16 LVecBase3f const 0 8832 16 LVecBase3f const 16 LVecBase3f const 0 0 3526 0 0 0 0 0 0 0 0 0 0
3617 12 LVecBase3d * 0 8576 12 LVecBase3d * 12 LVecBase3d * 0 0 3527 0 0 0 0 0 0 0 0 0 0
3618 18 LVecBase3d const * 0 8576 18 LVecBase3d const * 18 LVecBase3d const * 0 0 3619 0 0 0 0 0 0 0 0 0 0
3619 16 LVecBase3d const 0 8832 16 LVecBase3d const 16 LVecBase3d const 0 0 3527 0 0 0 0 0 0 0 0 0 0
3620 12 LVecBase3i * 0 8576 12 LVecBase3i * 12 LVecBase3i * 0 0 3528 0 0 0 0 0 0 0 0 0 0
3621 18 LVecBase3i const * 0 8576 18 LVecBase3i const * 18 LVecBase3i const * 0 0 3622 0 0 0 0 0 0 0 0 0 0
3622 16 LVecBase3i const 0 8832 16 LVecBase3i const 16 LVecBase3i const 0 0 3528 0 0 0 0 0 0 0 0 0 0
3623 11 LVector3f * 0 8576 11 LVector3f * 11 LVector3f * 0 0 3530 0 0 0 0 0 0 0 0 0 0
3624 17 LVector3f const * 0 8576 17 LVector3f const * 17 LVector3f const * 0 0 3625 0 0 0 0 0 0 0 0 0 0
3625 15 LVector3f const 0 8832 15 LVector3f const 15 LVector3f const 0 0 3530 0 0 0 0 0 0 0 0 0 0
3626 11 LVector3d * 0 8576 11 LVector3d * 11 LVector3d * 0 0 3531 0 0 0 0 0 0 0 0 0 0
3627 17 LVector3d const * 0 8576 17 LVector3d const * 17 LVector3d const * 0 0 3628 0 0 0 0 0 0 0 0 0 0
3628 15 LVector3d const 0 8832 15 LVector3d const 15 LVector3d const 0 0 3531 0 0 0 0 0 0 0 0 0 0
3629 11 LVector3i * 0 8576 11 LVector3i * 11 LVector3i * 0 0 3532 0 0 0 0 0 0 0 0 0 0
3630 17 LVector3i const * 0 8576 17 LVector3i const * 17 LVector3i const * 0 0 3631 0 0 0 0 0 0 0 0 0 0
3631 15 LVector3i const 0 8832 15 LVector3i const 15 LVector3i const 0 0 3532 0 0 0 0 0 0 0 0 0 0
3632 10 LPoint3f * 0 8576 10 LPoint3f * 10 LPoint3f * 0 0 3533 0 0 0 0 0 0 0 0 0 0
3633 16 LPoint3f const * 0 8576 16 LPoint3f const * 16 LPoint3f const * 0 0 3634 0 0 0 0 0 0 0 0 0 0
3634 14 LPoint3f const 0 8832 14 LPoint3f const 14 LPoint3f const 0 0 3533 0 0 0 0 0 0 0 0 0 0
3635 10 LPoint3d * 0 8576 10 LPoint3d * 10 LPoint3d * 0 0 3534 0 0 0 0 0 0 0 0 0 0
3636 16 LPoint3d const * 0 8576 16 LPoint3d const * 16 LPoint3d const * 0 0 3637 0 0 0 0 0 0 0 0 0 0
3637 14 LPoint3d const 0 8832 14 LPoint3d const 14 LPoint3d const 0 0 3534 0 0 0 0 0 0 0 0 0 0
3638 10 LPoint3i * 0 8576 10 LPoint3i * 10 LPoint3i * 0 0 3535 0 0 0 0 0 0 0 0 0 0
3639 16 LPoint3i const * 0 8576 16 LPoint3i const * 16 LPoint3i const * 0 0 3640 0 0 0 0 0 0 0 0 0 0
3640 14 LPoint3i const 0 8832 14 LPoint3i const 14 LPoint3i const 0 0 3535 0 0 0 0 0 0 0 0 0 0
3641 12 LVecBase4f * 0 8576 12 LVecBase4f * 12 LVecBase4f * 0 0 3536 0 0 0 0 0 0 0 0 0 0
3642 18 LVecBase4f const * 0 8576 18 LVecBase4f const * 18 LVecBase4f const * 0 0 3643 0 0 0 0 0 0 0 0 0 0
3643 16 LVecBase4f const 0 8832 16 LVecBase4f const 16 LVecBase4f const 0 0 3536 0 0 0 0 0 0 0 0 0 0
3644 27 UnalignedLVecBase4f const * 0 8576 27 UnalignedLVecBase4f const * 27 UnalignedLVecBase4f const * 0 0 3645 0 0 0 0 0 0 0 0 0 0
3645 25 UnalignedLVecBase4f const 0 8832 25 UnalignedLVecBase4f const 25 UnalignedLVecBase4f const 0 0 3537 0 0 0 0 0 0 0 0 0 0
3646 21 UnalignedLVecBase4f * 0 8576 21 UnalignedLVecBase4f * 21 UnalignedLVecBase4f * 0 0 3537 0 0 0 0 0 0 0 0 0 0
3647 12 LVecBase4d * 0 8576 12 LVecBase4d * 12 LVecBase4d * 0 0 3538 0 0 0 0 0 0 0 0 0 0
3648 18 LVecBase4d const * 0 8576 18 LVecBase4d const * 18 LVecBase4d const * 0 0 3649 0 0 0 0 0 0 0 0 0 0
3649 16 LVecBase4d const 0 8832 16 LVecBase4d const 16 LVecBase4d const 0 0 3538 0 0 0 0 0 0 0 0 0 0
3650 27 UnalignedLVecBase4d const * 0 8576 27 UnalignedLVecBase4d const * 27 UnalignedLVecBase4d const * 0 0 3651 0 0 0 0 0 0 0 0 0 0
3651 25 UnalignedLVecBase4d const 0 8832 25 UnalignedLVecBase4d const 25 UnalignedLVecBase4d const 0 0 3539 0 0 0 0 0 0 0 0 0 0
3652 21 UnalignedLVecBase4d * 0 8576 21 UnalignedLVecBase4d * 21 UnalignedLVecBase4d * 0 0 3539 0 0 0 0 0 0 0 0 0 0
3653 12 LVecBase4i * 0 8576 12 LVecBase4i * 12 LVecBase4i * 0 0 3540 0 0 0 0 0 0 0 0 0 0
3654 18 LVecBase4i const * 0 8576 18 LVecBase4i const * 18 LVecBase4i const * 0 0 3655 0 0 0 0 0 0 0 0 0 0
3655 16 LVecBase4i const 0 8832 16 LVecBase4i const 16 LVecBase4i const 0 0 3540 0 0 0 0 0 0 0 0 0 0
3656 27 UnalignedLVecBase4i const * 0 8576 27 UnalignedLVecBase4i const * 27 UnalignedLVecBase4i const * 0 0 3657 0 0 0 0 0 0 0 0 0 0
3657 25 UnalignedLVecBase4i const 0 8832 25 UnalignedLVecBase4i const 25 UnalignedLVecBase4i const 0 0 3541 0 0 0 0 0 0 0 0 0 0
3658 21 UnalignedLVecBase4i * 0 8576 21 UnalignedLVecBase4i * 21 UnalignedLVecBase4i * 0 0 3541 0 0 0 0 0 0 0 0 0 0
3659 11 LVector4f * 0 8576 11 LVector4f * 11 LVector4f * 0 0 3542 0 0 0 0 0 0 0 0 0 0
3660 17 LVector4f const * 0 8576 17 LVector4f const * 17 LVector4f const * 0 0 3661 0 0 0 0 0 0 0 0 0 0
3661 15 LVector4f const 0 8832 15 LVector4f const 15 LVector4f const 0 0 3542 0 0 0 0 0 0 0 0 0 0
3662 11 LVector4d * 0 8576 11 LVector4d * 11 LVector4d * 0 0 3543 0 0 0 0 0 0 0 0 0 0
3663 17 LVector4d const * 0 8576 17 LVector4d const * 17 LVector4d const * 0 0 3664 0 0 0 0 0 0 0 0 0 0
3664 15 LVector4d const 0 8832 15 LVector4d const 15 LVector4d const 0 0 3543 0 0 0 0 0 0 0 0 0 0
3665 11 LVector4i * 0 8576 11 LVector4i * 11 LVector4i * 0 0 3544 0 0 0 0 0 0 0 0 0 0
3666 17 LVector4i const * 0 8576 17 LVector4i const * 17 LVector4i const * 0 0 3667 0 0 0 0 0 0 0 0 0 0
3667 15 LVector4i const 0 8832 15 LVector4i const 15 LVector4i const 0 0 3544 0 0 0 0 0 0 0 0 0 0
3668 10 LPoint4f * 0 8576 10 LPoint4f * 10 LPoint4f * 0 0 3545 0 0 0 0 0 0 0 0 0 0
3669 16 LPoint4f const * 0 8576 16 LPoint4f const * 16 LPoint4f const * 0 0 3670 0 0 0 0 0 0 0 0 0 0
3670 14 LPoint4f const 0 8832 14 LPoint4f const 14 LPoint4f const 0 0 3545 0 0 0 0 0 0 0 0 0 0
3671 10 LPoint4d * 0 8576 10 LPoint4d * 10 LPoint4d * 0 0 3546 0 0 0 0 0 0 0 0 0 0
3672 16 LPoint4d const * 0 8576 16 LPoint4d const * 16 LPoint4d const * 0 0 3673 0 0 0 0 0 0 0 0 0 0
3673 14 LPoint4d const 0 8832 14 LPoint4d const 14 LPoint4d const 0 0 3546 0 0 0 0 0 0 0 0 0 0
3674 10 LPoint4i * 0 8576 10 LPoint4i * 10 LPoint4i * 0 0 3547 0 0 0 0 0 0 0 0 0 0
3675 16 LPoint4i const * 0 8576 16 LPoint4i const * 16 LPoint4i const * 0 0 3676 0 0 0 0 0 0 0 0 0 0
3676 14 LPoint4i const 0 8832 14 LPoint4i const 14 LPoint4i const 0 0 3547 0 0 0 0 0 0 0 0 0 0
3677 11 LMatrix3f * 0 8576 11 LMatrix3f * 11 LMatrix3f * 0 0 3548 0 0 0 0 0 0 0 0 0 0
3678 17 LMatrix3f const * 0 8576 17 LMatrix3f const * 17 LMatrix3f const * 0 0 3679 0 0 0 0 0 0 0 0 0 0
3679 15 LMatrix3f const 0 8832 15 LMatrix3f const 15 LMatrix3f const 0 0 3548 0 0 0 0 0 0 0 0 0 0
3680 5 Row * 0 8576 16 LMatrix3f::Row * 16 LMatrix3f::Row * 0 0 3549 0 0 0 0 0 0 0 0 0 0
3681 6 CRow * 0 8576 17 LMatrix3f::CRow * 17 LMatrix3f::CRow * 0 0 3550 0 0 0 0 0 0 0 0 0 0
3682 17 LMatrix4f const * 0 8576 17 LMatrix4f const * 17 LMatrix4f const * 0 0 3683 0 0 0 0 0 0 0 0 0 0
3683 15 LMatrix4f const 0 8832 15 LMatrix4f const 15 LMatrix4f const 0 0 3551 0 0 0 0 0 0 0 0 0 0
3684 11 Row const * 0 8576 22 LMatrix3f::Row const * 22 LMatrix3f::Row const * 0 0 3685 0 0 0 0 0 0 0 0 0 0
3685 9 Row const 0 8832 20 LMatrix3f::Row const 20 LMatrix3f::Row const 0 0 3549 0 0 0 0 0 0 0 0 0 0
3686 12 CRow const * 0 8576 23 LMatrix3f::CRow const * 23 LMatrix3f::CRow const * 0 0 3687 0 0 0 0 0 0 0 0 0 0
3687 10 CRow const 0 8832 21 LMatrix3f::CRow const 21 LMatrix3f::CRow const 0 0 3550 0 0 0 0 0 0 0 0 0 0
3688 11 LMatrix4f * 0 8576 11 LMatrix4f * 11 LMatrix4f * 0 0 3551 0 0 0 0 0 0 0 0 0 0
3689 26 UnalignedLMatrix4f const * 0 8576 26 UnalignedLMatrix4f const * 26 UnalignedLMatrix4f const * 0 0 3690 0 0 0 0 0 0 0 0 0 0
3690 24 UnalignedLMatrix4f const 0 8832 24 UnalignedLMatrix4f const 24 UnalignedLMatrix4f const 0 0 3554 0 0 0 0 0 0 0 0 0 0
3691 5 Row * 0 8576 16 LMatrix4f::Row * 16 LMatrix4f::Row * 0 0 3552 0 0 0 0 0 0 0 0 0 0
3692 6 CRow * 0 8576 17 LMatrix4f::CRow * 17 LMatrix4f::CRow * 0 0 3553 0 0 0 0 0 0 0 0 0 0
3693 11 Row const * 0 8576 22 LMatrix4f::Row const * 22 LMatrix4f::Row const * 0 0 3694 0 0 0 0 0 0 0 0 0 0
3694 9 Row const 0 8832 20 LMatrix4f::Row const 20 LMatrix4f::Row const 0 0 3552 0 0 0 0 0 0 0 0 0 0
3695 12 CRow const * 0 8576 23 LMatrix4f::CRow const * 23 LMatrix4f::CRow const * 0 0 3696 0 0 0 0 0 0 0 0 0 0
3696 10 CRow const 0 8832 21 LMatrix4f::CRow const 21 LMatrix4f::CRow const 0 0 3553 0 0 0 0 0 0 0 0 0 0
3697 20 UnalignedLMatrix4f * 0 8576 20 UnalignedLMatrix4f * 20 UnalignedLMatrix4f * 0 0 3554 0 0 0 0 0 0 0 0 0 0
3698 11 LMatrix3d * 0 8576 11 LMatrix3d * 11 LMatrix3d * 0 0 3555 0 0 0 0 0 0 0 0 0 0
3699 17 LMatrix3d const * 0 8576 17 LMatrix3d const * 17 LMatrix3d const * 0 0 3700 0 0 0 0 0 0 0 0 0 0
3700 15 LMatrix3d const 0 8832 15 LMatrix3d const 15 LMatrix3d const 0 0 3555 0 0 0 0 0 0 0 0 0 0
3701 5 Row * 0 8576 16 LMatrix3d::Row * 16 LMatrix3d::Row * 0 0 3556 0 0 0 0 0 0 0 0 0 0
3702 6 CRow * 0 8576 17 LMatrix3d::CRow * 17 LMatrix3d::CRow * 0 0 3557 0 0 0 0 0 0 0 0 0 0
3703 17 LMatrix4d const * 0 8576 17 LMatrix4d const * 17 LMatrix4d const * 0 0 3704 0 0 0 0 0 0 0 0 0 0
3704 15 LMatrix4d const 0 8832 15 LMatrix4d const 15 LMatrix4d const 0 0 3558 0 0 0 0 0 0 0 0 0 0
3705 11 Row const * 0 8576 22 LMatrix3d::Row const * 22 LMatrix3d::Row const * 0 0 3706 0 0 0 0 0 0 0 0 0 0
3706 9 Row const 0 8832 20 LMatrix3d::Row const 20 LMatrix3d::Row const 0 0 3556 0 0 0 0 0 0 0 0 0 0
3707 12 CRow const * 0 8576 23 LMatrix3d::CRow const * 23 LMatrix3d::CRow const * 0 0 3708 0 0 0 0 0 0 0 0 0 0
3708 10 CRow const 0 8832 21 LMatrix3d::CRow const 21 LMatrix3d::CRow const 0 0 3557 0 0 0 0 0 0 0 0 0 0
3709 11 LMatrix4d * 0 8576 11 LMatrix4d * 11 LMatrix4d * 0 0 3558 0 0 0 0 0 0 0 0 0 0
3710 26 UnalignedLMatrix4d const * 0 8576 26 UnalignedLMatrix4d const * 26 UnalignedLMatrix4d const * 0 0 3711 0 0 0 0 0 0 0 0 0 0
3711 24 UnalignedLMatrix4d const 0 8832 24 UnalignedLMatrix4d const 24 UnalignedLMatrix4d const 0 0 3561 0 0 0 0 0 0 0 0 0 0
3712 5 Row * 0 8576 16 LMatrix4d::Row * 16 LMatrix4d::Row * 0 0 3559 0 0 0 0 0 0 0 0 0 0
3713 6 CRow * 0 8576 17 LMatrix4d::CRow * 17 LMatrix4d::CRow * 0 0 3560 0 0 0 0 0 0 0 0 0 0
3714 11 Row const * 0 8576 22 LMatrix4d::Row const * 22 LMatrix4d::Row const * 0 0 3715 0 0 0 0 0 0 0 0 0 0
3715 9 Row const 0 8832 20 LMatrix4d::Row const 20 LMatrix4d::Row const 0 0 3559 0 0 0 0 0 0 0 0 0 0
3716 12 CRow const * 0 8576 23 LMatrix4d::CRow const * 23 LMatrix4d::CRow const * 0 0 3717 0 0 0 0 0 0 0 0 0 0
3717 10 CRow const 0 8832 21 LMatrix4d::CRow const 21 LMatrix4d::CRow const 0 0 3560 0 0 0 0 0 0 0 0 0 0
3718 20 UnalignedLMatrix4d * 0 8576 20 UnalignedLMatrix4d * 20 UnalignedLMatrix4d * 0 0 3561 0 0 0 0 0 0 0 0 0 0
3719 14 LQuaternionf * 0 8576 14 LQuaternionf * 14 LQuaternionf * 0 0 3562 0 0 0 0 0 0 0 0 0 0
3720 20 LQuaternionf const * 0 8576 20 LQuaternionf const * 20 LQuaternionf const * 0 0 3721 0 0 0 0 0 0 0 0 0 0
3721 18 LQuaternionf const 0 8832 18 LQuaternionf const 18 LQuaternionf const 0 0 3562 0 0 0 0 0 0 0 0 0 0
3722 14 LQuaterniond * 0 8576 14 LQuaterniond * 14 LQuaterniond * 0 0 3563 0 0 0 0 0 0 0 0 0 0
3723 20 LQuaterniond const * 0 8576 20 LQuaterniond const * 20 LQuaterniond const * 0 0 3724 0 0 0 0 0 0 0 0 0 0
3724 18 LQuaterniond const 0 8832 18 LQuaterniond const 18 LQuaterniond const 0 0 3563 0 0 0 0 0 0 0 0 0 0
3725 12 LRotationf * 0 8576 12 LRotationf * 12 LRotationf * 0 0 3564 0 0 0 0 0 0 0 0 0 0
3726 18 LRotationf const * 0 8576 18 LRotationf const * 18 LRotationf const * 0 0 3727 0 0 0 0 0 0 0 0 0 0
3727 16 LRotationf const 0 8832 16 LRotationf const 16 LRotationf const 0 0 3564 0 0 0 0 0 0 0 0 0 0
3728 12 LRotationd * 0 8576 12 LRotationd * 12 LRotationd * 0 0 3565 0 0 0 0 0 0 0 0 0 0
3729 18 LRotationd const * 0 8576 18 LRotationd const * 18 LRotationd const * 0 0 3730 0 0 0 0 0 0 0 0 0 0
3730 16 LRotationd const 0 8832 16 LRotationd const 16 LRotationd const 0 0 3565 0 0 0 0 0 0 0 0 0 0
3731 15 LOrientationf * 0 8576 15 LOrientationf * 15 LOrientationf * 0 0 3566 0 0 0 0 0 0 0 0 0 0
3732 21 LOrientationf const * 0 8576 21 LOrientationf const * 21 LOrientationf const * 0 0 3733 0 0 0 0 0 0 0 0 0 0
3733 19 LOrientationf const 0 8832 19 LOrientationf const 19 LOrientationf const 0 0 3566 0 0 0 0 0 0 0 0 0 0
3734 15 LOrientationd * 0 8576 15 LOrientationd * 15 LOrientationd * 0 0 3567 0 0 0 0 0 0 0 0 0 0
3735 21 LOrientationd const * 0 8576 21 LOrientationd const * 21 LOrientationd const * 0 0 3736 0 0 0 0 0 0 0 0 0 0
3736 19 LOrientationd const 0 8832 19 LOrientationd const 19 LOrientationd const 0 0 3567 0 0 0 0 0 0 0 0 0 0
0
0
14
3737 0 0 1040 8 get_rows 4 size 7 get_row
3738 0 0 1040 8 get_cols 4 size 7 get_col
3739 0 0 1040 9 get_col2s 4 size 8 get_col2
3740 0 0 1040 9 get_row2s 4 size 8 get_row2
3741 0 0 1126 8 get_rows 4 size 7 get_row
3742 0 0 1126 8 get_cols 4 size 7 get_col
3743 0 0 1126 9 get_row3s 4 size 8 get_row3
3744 0 0 1229 8 get_rows 4 size 7 get_row
3745 0 0 1229 8 get_cols 4 size 7 get_col
3746 0 0 1229 9 get_col2s 4 size 8 get_col2
3747 0 0 1229 9 get_row2s 4 size 8 get_row2
3748 0 0 1313 8 get_rows 4 size 7 get_row
3749 0 0 1313 8 get_cols 4 size 7 get_col
3750 0 0 1313 9 get_row3s 4 size 8 get_row3