39 inline deVector3(deFloat v0, deFloat v1, deFloat v2)
40 { _data[0] = v0; _data[1] = v1; _data[2] = v2; }
43 for (
size_t ii(0); ii < DE_VECTOR3_SIZE; ++ii)
44 _data[ii] = orig._data[ii];
50 const deFloat&
operator[](
const deInt i)
const {
return _data[i]; }
52 operator deFloat*() {
return _data; }
54 operator const deFloat*()
const {
return _data; }
56 deFloat&
elementAt(
const deInt i) {
return _data[i]; }
58 const deFloat&
elementAt(
const deInt i)
const {
return _data[i]; }
76 DE_MATH_API
void zero();
85 DE_MATH_API
void set(
const deFloat x,
const deFloat y,
const deFloat z);
87 DE_MATH_API
void set(
const deFloat* v);
89 DE_MATH_API
void get(deFloat* v)
const;
107 DE_MATH_API
void add(
const deVector3& v,
const deFloat s);
156 deFloat _data[DE_VECTOR3_SIZE];
159 #endif // _deVector3_h
DE_MATH_API void eulerZYX(const deMatrix3 &m)
this = ZYX Euler angles of m
Definition: TaoDeVector3Inl.h:67
DE_MATH_API void angularError(const deMatrix3 &R, const deMatrix3 &Rd)
this = dPhi = R - Rd
Definition: TaoDeVector3Inl.h:65
DE_MATH_API void normalize()
this[i] *= (1 / magnitude())
Definition: TaoDeVector3Inl.h:39
3x1 vector classThis is a C++ wrapper class of deVector3f.
Definition: TaoDeVector3.h:32
DE_MATH_API void crossMultiply(const deVector3 &v1, const deVector3 &v2)
this = v1 x v2
Definition: TaoDeVector3Inl.h:51
DE_MATH_API void maximum(const deVector3 &v)
this[i] = max(this[i], v[i])
Definition: TaoDeVector3Inl.h:44
DE_MATH_API deInt operator==(const deVector3 &v) const
return (this == v)
Definition: TaoDeVector3Inl.h:28
const deFloat & operator[](const deInt i) const
return const this[i]
Definition: TaoDeVector3.h:50
DE_MATH_API void inversedMultiply(const deTransform &t, const deVector3 &v)
this = ~[r,p]*v = [~r, -(~r*p)]*v = ~r*v -~r*p = ~r*(v-p)
Definition: TaoDeVector3Inl.h:58
DE_MATH_API void operator-=(const deVector3 &v)
this -= v
Definition: TaoDeVector3Inl.h:34
Quaternion classThis is a C++ wrapper class of deQuaternionf.
Definition: TaoDeQuaternion.h:35
DE_MATH_API void minimum(const deVector3 &v)
this[i] = min(this[i], v[i])
Definition: TaoDeVector3Inl.h:43
DE_MATH_API deFloat dot(const deVector3 &v) const
return this^T * v
Definition: TaoDeVector3Inl.h:29
DE_MATH_API void backSub(const deMatrix3 &LU, const deVector3 &y)
this = x where y = LU x
Definition: TaoDeVector3Inl.h:70
DE_MATH_API void set(const deFloat x, const deFloat y, const deFloat z)
this = (x, y, z)
Definition: TaoDeVector3Inl.h:40
deFloat & elementAt(const deInt i)
return this[i]
Definition: TaoDeVector3.h:56
Transformation class using quaternionThis class consists of a quaternion for rotation and a vector fo...
Definition: TaoDeFrame.h:36
DE_MATH_API void column(const deMatrix3 &m, const deInt col)
this = col of m
Definition: TaoDeVector3Inl.h:64
deVector3(deFloat v0, deFloat v1, deFloat v2)
Definition: TaoDeVector3.h:39
DE_MATH_API void add(const deVector3 &v1, const deVector3 &v2)
this = v1 + v2
Definition: TaoDeVector3Inl.h:46
DE_MATH_API void operator=(const deVector3 &v)
this = v;
Definition: TaoDeVector3Inl.h:32
DE_MATH_API void eulerXYZ(const deMatrix3 &m)
this = XYZ Euler angles of m
Definition: TaoDeVector3Inl.h:66
DE_MATH_API void diagonal(const deMatrix3 &m)
this = diag(m)
Definition: TaoDeVector3Inl.h:63
DE_MATH_API void subtract(const deVector3 &v1, const deVector3 &v2)
this = v1 - v2
Definition: TaoDeVector3Inl.h:47
const deFloat & elementAt(const deInt i) const
return const this[i]
Definition: TaoDeVector3.h:58
deVector3()
Definition: TaoDeVector3.h:36
3x3 matrix classThis is a C++ wrapper class of deMatrix3f.
Definition: TaoDeMatrix3.h:33
deFloat & operator[](const deInt i)
return this[i]
Definition: TaoDeVector3.h:48
DE_MATH_API void operator+=(const deVector3 &v)
this += v
Definition: TaoDeVector3Inl.h:33
DE_MATH_API void transposedMultiply(const deMatrix3 &m, const deVector3 &v)
this = m^T * v
Definition: TaoDeVector3Inl.h:53
DE_MATH_API void operator*=(const deVector3 &v)
this[i] *= v[i]
Definition: TaoDeVector3Inl.h:35
DE_MATH_API void zero()
this = 0
Definition: TaoDeVector3Inl.h:38
DE_MATH_API deFloat magnitude() const
return sqrt(this^T * this)
Definition: TaoDeVector3Inl.h:30
DE_MATH_API void negate(const deVector3 &v)
this = -v
Definition: TaoDeVector3Inl.h:45
DE_MATH_API void multiply(const deVector3 &v1, const deVector3 &v2)
this[i] = v1[i] * v2[i]
Definition: TaoDeVector3Inl.h:48
DE_MATH_API void lerp(const deVector3 &v, const deVector3 &vg, const deFloat t)
this = LERP
Definition: TaoDeVector3Inl.h:86