#include <Vector.h>
Public Types | |
typedef T | TYPE |
Public Member Functions | |
Vec3 () | |
Vec3 (T nx, T ny, T nz) | |
Vec3 (const Vec3< T > &src) | |
Vec3 (const Vec2< T > &v2, T aZ) | |
Vec3 (const T *d) | |
template<typename FromT > | |
Vec3 (const Vec3< FromT > &src) | |
template<typename Y > | |
Vec3 (const Y &v) | |
void | set (T ax, T ay, T az) |
void | set (const Vec3< T > &rhs) |
Vec3< T > & | operator= (const Vec3< T > &rhs) |
template<typename FromT > | |
Vec3< T > & | operator= (const Vec3< FromT > &rhs) |
T & | operator[] (int n) |
const T & | operator[] (int n) const |
const Vec3< T > | operator+ (const Vec3< T > &rhs) const |
const Vec3< T > | operator- (const Vec3< T > &rhs) const |
const Vec3< T > | operator* (const Vec3< T > &rhs) const |
const Vec3< T > | operator/ (const Vec3< T > &rhs) const |
Vec3< T > & | operator+= (const Vec3< T > &rhs) |
Vec3< T > & | operator-= (const Vec3< T > &rhs) |
Vec3< T > & | operator*= (const Vec3< T > &rhs) |
Vec3< T > & | operator/= (const Vec3< T > &rhs) |
const Vec3< T > | operator/ (T rhs) const |
Vec3< T > & | operator+= (T rhs) |
Vec3< T > & | operator-= (T rhs) |
Vec3< T > & | operator*= (T rhs) |
Vec3< T > & | operator/= (T rhs) |
Vec3< T > | operator- () const |
bool | operator== (const Vec3< T > &rhs) const |
bool | operator!= (const Vec3< T > &rhs) const |
T | dot (const Vec3< T > &rhs) const |
Vec3< T > | cross (const Vec3< T > &rhs) const |
T | distance (const Vec3< T > &rhs) const |
T | distanceSquared (const Vec3< T > &rhs) const |
T | length () const |
T | lengthSquared () const |
void | invert () |
Vec3< T > | inverse () |
void | normalize () |
Vec3< T > | normalized () const |
void | safeNormalize () |
Vec3< T > | safeNormalized () |
Vec3< T > | randomOrthogonal () const |
void | rotate (T ax, T ay, T az) |
Vec3< T > | lerp (T fact, const Vec3< T > &rhs) const |
void | lerpEq (T fact, const Vec3< T > &rhs) |
Vec3< T > | slerp (T fact, const Vec3< T > &r) const |
Vec3< T > | squad (T t, const Vec3< T > &tangentA, const Vec3< T > &tangentB, const Vec3< T > &end) |
operator T * () | |
operator const T * () const | |
Static Public Member Functions | |
static Vec3< T > | max () |
static Vec3< T > | zero () |
static Vec3< T > | one () |
static Vec3< T > | xAxis () |
static Vec3< T > | yAxis () |
static Vec3< T > | zAxis () |
Public Attributes | |
T | x |
T | y |
T | z |
Static Public Attributes | |
static const int | DIM = 3 |
Friends | |
std::ostream & | operator<< (std::ostream &lhs, const Vec3< T > rhs) |
typedef T cinder::Vec3< T >::TYPE |
cinder::Vec3< T >::Vec3 | ( | ) |
cinder::Vec3< T >::Vec3 | ( | T | nx, | |
T | ny, | |||
T | nz | |||
) |
cinder::Vec3< T >::Vec3 | ( | const Vec3< T > & | src | ) |
cinder::Vec3< T >::Vec3 | ( | const Vec2< T > & | v2, | |
T | aZ | |||
) |
cinder::Vec3< T >::Vec3 | ( | const T * | d | ) | [explicit] |
cinder::Vec3< T >::Vec3 | ( | const Vec3< FromT > & | src | ) |
void cinder::Vec3< T >::set | ( | T | ax, | |
T | ay, | |||
T | az | |||
) |
void cinder::Vec3< T >::set | ( | const Vec3< T > & | rhs | ) |
Vec3<T>& cinder::Vec3< T >::operator= | ( | const Vec3< T > & | rhs | ) |
Vec3<T>& cinder::Vec3< T >::operator= | ( | const Vec3< FromT > & | rhs | ) |
T& cinder::Vec3< T >::operator[] | ( | int | n | ) |
const T& cinder::Vec3< T >::operator[] | ( | int | n | ) | const |
const Vec3<T> cinder::Vec3< T >::operator+ | ( | const Vec3< T > & | rhs | ) | const |
const Vec3<T> cinder::Vec3< T >::operator- | ( | const Vec3< T > & | rhs | ) | const |
const Vec3<T> cinder::Vec3< T >::operator* | ( | const Vec3< T > & | rhs | ) | const |
const Vec3<T> cinder::Vec3< T >::operator/ | ( | const Vec3< T > & | rhs | ) | const |
Vec3<T>& cinder::Vec3< T >::operator+= | ( | const Vec3< T > & | rhs | ) |
Vec3<T>& cinder::Vec3< T >::operator-= | ( | const Vec3< T > & | rhs | ) |
Vec3<T>& cinder::Vec3< T >::operator*= | ( | const Vec3< T > & | rhs | ) |
Vec3<T>& cinder::Vec3< T >::operator/= | ( | const Vec3< T > & | rhs | ) |
const Vec3<T> cinder::Vec3< T >::operator/ | ( | T | rhs | ) | const |
Vec3<T>& cinder::Vec3< T >::operator+= | ( | T | rhs | ) |
Vec3<T>& cinder::Vec3< T >::operator-= | ( | T | rhs | ) |
Vec3<T>& cinder::Vec3< T >::operator*= | ( | T | rhs | ) |
Vec3<T>& cinder::Vec3< T >::operator/= | ( | T | rhs | ) |
Vec3<T> cinder::Vec3< T >::operator- | ( | ) | const |
bool cinder::Vec3< T >::operator== | ( | const Vec3< T > & | rhs | ) | const |
bool cinder::Vec3< T >::operator!= | ( | const Vec3< T > & | rhs | ) | const |
T cinder::Vec3< T >::dot | ( | const Vec3< T > & | rhs | ) | const |
Vec3<T> cinder::Vec3< T >::cross | ( | const Vec3< T > & | rhs | ) | const |
T cinder::Vec3< T >::distance | ( | const Vec3< T > & | rhs | ) | const |
T cinder::Vec3< T >::distanceSquared | ( | const Vec3< T > & | rhs | ) | const |
T cinder::Vec3< T >::length | ( | ) | const |
T cinder::Vec3< T >::lengthSquared | ( | ) | const |
void cinder::Vec3< T >::invert | ( | ) |
Vec3<T> cinder::Vec3< T >::inverse | ( | ) |
void cinder::Vec3< T >::normalize | ( | ) |
Vec3<T> cinder::Vec3< T >::normalized | ( | ) | const |
void cinder::Vec3< T >::safeNormalize | ( | ) |
Vec3<T> cinder::Vec3< T >::safeNormalized | ( | ) |
Vec3<T> cinder::Vec3< T >::randomOrthogonal | ( | ) | const |
void cinder::Vec3< T >::rotate | ( | T | ax, | |
T | ay, | |||
T | az | |||
) |
Vec3<T> cinder::Vec3< T >::lerp | ( | T | fact, | |
const Vec3< T > & | rhs | |||
) | const |
void cinder::Vec3< T >::lerpEq | ( | T | fact, | |
const Vec3< T > & | rhs | |||
) |
static Vec3<T> cinder::Vec3< T >::max | ( | ) | [static] |
static Vec3<T> cinder::Vec3< T >::zero | ( | ) | [static] |
static Vec3<T> cinder::Vec3< T >::one | ( | ) | [static] |
Vec3<T> cinder::Vec3< T >::slerp | ( | T | fact, | |
const Vec3< T > & | r | |||
) | const |
Vec3<T> cinder::Vec3< T >::squad | ( | T | t, | |
const Vec3< T > & | tangentA, | |||
const Vec3< T > & | tangentB, | |||
const Vec3< T > & | end | |||
) |
cinder::Vec3< T >::operator T * | ( | ) |
cinder::Vec3< T >::operator const T * | ( | ) | const |
static Vec3<T> cinder::Vec3< T >::xAxis | ( | ) | [static] |
static Vec3<T> cinder::Vec3< T >::yAxis | ( | ) | [static] |
static Vec3<T> cinder::Vec3< T >::zAxis | ( | ) | [static] |
std::ostream& operator<< | ( | std::ostream & | lhs, | |
const Vec3< T > | rhs | |||
) | [friend] |
T cinder::Vec3< T >::x |
T cinder::Vec3< T >::y |
T cinder::Vec3< T >::z |
const int cinder::Vec3< T >::DIM = 3 [static] |