_Tuple3< Type > Class Template Reference

#include <_Tuple3.h>

Inheritance diagram for _Tuple3< Type >:

_Color3< Type > _Point3< Type > _Vector3< Type > List of all members.

Public Member Functions

 _Tuple3 ()
 _Tuple3 (Type x, Type y=0, Type z=0)
 _Tuple3 (const _Tuple3< byte > &t)
 _Tuple3 (const _Tuple3< double > &t)
 _Tuple3 (const _Tuple3< float > &t)
 _Tuple3 (const _Tuple3< int > &t)
 _Tuple3 (const Type t[3])
 ~_Tuple3 ()
void add (const _Tuple3< Type > &t)
void add (const _Tuple3< Type > &t, const _Tuple3< Type > &t1)
void absolute ()
void absolute (const _Tuple3< Type > &t)
void clamp (Type min, Type max)
void clampMin (Type min)
void clampMax (Type max)
void clamp (Type min, Type max, const _Tuple3< Type > &t)
void clampMin (Type min, const _Tuple3< Type > &t)
void clampMax (Type min, const _Tuple3< Type > &t)
bool equals (const _Tuple3< Type > &t) const
bool epsilonEquals (const _Tuple3< Type > &t, Type epsilon) const
void get (byte t[3]) const
void get (double t[3]) const
void get (float t[3]) const
void get (int t[3]) const
void get (_Tuple3< Type > &t) const
void interpolate (_Tuple3< Type > &t, double alpha)
void interpolate (_Tuple3< Type > &t1, const _Tuple3< Type > &t2, double alpha)
void negate ()
void negate (const _Tuple3< Type > &t)
Type normSquared () const
Type norm () const
void scale (Type s)
void scaleAdd (Type s, const _Tuple3< Type > &t)
void scaleAdd (Type s, const _Tuple3< Type > &t1, const _Tuple3< Type > &t2)
void scaleAdd (Type s, const float t1[3], const float t2[3])
void set (Type xx=0, Type yy=0, Type zz=0)
void set (Type t[3])
void set (const _Tuple3< byte > &t)
void set (const _Tuple3< double > &t)
void set (const _Tuple3< float > &t)
void set (const _Tuple3< int > &t)
void sub (const _Tuple3< Type > &t)
void sub (const _Tuple3< Type > &t1, const _Tuple3< Type > &t2)
_Tuple3< Type > & operator+= (const _Tuple3< Type > &t)
 defined(_MSC_VER)
_Tuple3< Type > & operator-= (const _Tuple3< Type > &t)
_Tuple3< Type > & operator *= (Type c)
_Tuple3< Type > & operator/= (Type c)
_Tuple3< Type > operator+ (const _Tuple3< Type > &t) const
_Tuple3< Type > operator- (const _Tuple3< Type > &t) const
_Tuple3< Type > operator * (Type c) const
_Tuple3< Type > operator/ (Type c) const
bool operator== (const _Tuple3< Type > &t) const
bool operator!= (const _Tuple3< Type > &t) const
Type & operator[] (int i) const
 operator const Type * () const

Static Public Member Functions

static Type * add (Type t[3], const Type t1[3], const Type t2[3])
static void negate (Type t[3], Type t1[3])
static Type normSquared (const Type t[3])
static Type norm (const Type t[3])
static Type * scale (Type t[3], Type s)
static Type * scaleAdd (Type t[3], Type s, const Type t1[3], const Type t2[3])
static Type * set (Type t[3], Type xx, Type yy, Type zz)
static Type * sub (Type t[3], const Type t1[3])
static Type * sub (Type t[3], const Type t1[3], const Type t2[3])

Public Attributes

Type x
Type y
Type z

Detailed Description

template<class Type>
class _Tuple3< Type >

Definition at line 31 of file _Tuple3.h.


Constructor & Destructor Documentation

template<class Type>
_Tuple3< Type >::_Tuple3  )  [inline]
 

template<class Type>
_Tuple3< Type >::_Tuple3 Type  x,
Type  y = 0,
Type  z = 0
[inline, explicit]
 

template<class Type>
_Tuple3< Type >::_Tuple3 const _Tuple3< byte > &  t  )  [inline]
 

template<class Type>
_Tuple3< Type >::_Tuple3 const _Tuple3< double > &  t  )  [inline]
 

template<class Type>
_Tuple3< Type >::_Tuple3 const _Tuple3< float > &  t  )  [inline]
 

template<class Type>
_Tuple3< Type >::_Tuple3 const _Tuple3< int > &  t  )  [inline]
 

template<class Type>
_Tuple3< Type >::_Tuple3 const Type  t[3]  )  [inline]
 

template<class Type>
_Tuple3< Type >::~_Tuple3  )  [inline]
 


Member Function Documentation

template<class Type>
void _Tuple3< Type >::absolute const _Tuple3< Type > &  t  )  [inline]
 

Definition at line 93 of file _Tuple3.h.

References Math::abs(), DEBUGTUPLE3, _Tuple3< Type >::x, _Tuple3< Type >::y, and _Tuple3< Type >::z.

template<class Type>
void _Tuple3< Type >::absolute  )  [inline]
 

Definition at line 89 of file _Tuple3.h.

template<class Type>
static Type* _Tuple3< Type >::add Type  t[3],
const Type  t1[3],
const Type  t2[3]
[inline, static]
 

Definition at line 82 of file _Tuple3.h.

template<class Type>
void _Tuple3< Type >::add const _Tuple3< Type > &  t,
const _Tuple3< Type > &  t1
[inline]
 

Definition at line 76 of file _Tuple3.h.

References _Tuple3< Type >::x, _Tuple3< Type >::y, and _Tuple3< Type >::z.

template<class Type>
void _Tuple3< Type >::add const _Tuple3< Type > &  t  )  [inline]
 

Definition at line 70 of file _Tuple3.h.

References _Tuple3< Type >::x, _Tuple3< Type >::y, and _Tuple3< Type >::z.

template<class Type>
void _Tuple3< Type >::clamp Type  min,
Type  max,
const _Tuple3< Type > &  t
 

Definition at line 5 of file _Tuple3.cc.

References DEBUGTUPLE3, _Tuple3< Type >::x, _Tuple3< Type >::y, and _Tuple3< Type >::z.

template<class Type>
void _Tuple3< Type >::clamp Type  min,
Type  max
[inline]
 

Definition at line 99 of file _Tuple3.h.

References DEBUGTUPLE3.

template<class Type>
void _Tuple3< Type >::clampMax Type  min,
const _Tuple3< Type > &  t
 

Definition at line 34 of file _Tuple3.cc.

References DEBUGTUPLE3, _Tuple3< Type >::x, _Tuple3< Type >::y, and _Tuple3< Type >::z.

template<class Type>
void _Tuple3< Type >::clampMax Type  max  )  [inline]
 

Definition at line 109 of file _Tuple3.h.

References DEBUGTUPLE3.

template<class Type>
void _Tuple3< Type >::clampMin Type  min,
const _Tuple3< Type > &  t
 

Definition at line 44 of file _Tuple3.cc.

References DEBUGTUPLE3, _Tuple3< Type >::x, _Tuple3< Type >::y, and _Tuple3< Type >::z.

template<class Type>
void _Tuple3< Type >::clampMin Type  min  )  [inline]
 

Definition at line 104 of file _Tuple3.h.

References DEBUGTUPLE3.

template<class Type>
bool _Tuple3< Type >::epsilonEquals const _Tuple3< Type > &  t,
Type  epsilon
const [inline]
 

Definition at line 123 of file _Tuple3.h.

References DEBUGTUPLE3, Math::epsilonEquals(), _Tuple3< Type >::x, _Tuple3< Type >::y, and _Tuple3< Type >::z.

template<class Type>
bool _Tuple3< Type >::equals const _Tuple3< Type > &  t  )  const [inline]
 

Definition at line 118 of file _Tuple3.h.

References DEBUGTUPLE3, _Tuple3< Type >::x, _Tuple3< Type >::y, and _Tuple3< Type >::z.

template<class Type>
void _Tuple3< Type >::get _Tuple3< Type > &  t  )  const [inline]
 

Definition at line 155 of file _Tuple3.h.

References _Tuple3< Type >::x, _Tuple3< Type >::y, and _Tuple3< Type >::z.

template<class Type>
void _Tuple3< Type >::get int  t[3]  )  const [inline]
 

Definition at line 149 of file _Tuple3.h.

template<class Type>
void _Tuple3< Type >::get float  t[3]  )  const [inline]
 

Definition at line 143 of file _Tuple3.h.

template<class Type>
void _Tuple3< Type >::get double  t[3]  )  const [inline]
 

Definition at line 137 of file _Tuple3.h.

template<class Type>
void _Tuple3< Type >::get byte  t[3]  )  const [inline]
 

Definition at line 131 of file _Tuple3.h.

template<class Type>
void _Tuple3< Type >::interpolate _Tuple3< Type > &  t1,
const _Tuple3< Type > &  t2,
double  alpha
 

Definition at line 54 of file _Tuple3.cc.

References _Tuple3< Type >::x, _Tuple3< Type >::y, and _Tuple3< Type >::z.

template<class Type>
void _Tuple3< Type >::interpolate _Tuple3< Type > &  t,
double  alpha
[inline]
 

Definition at line 161 of file _Tuple3.h.

template<class Type>
static void _Tuple3< Type >::negate Type  t[3],
Type  t1[3]
[inline, static]
 

Definition at line 175 of file _Tuple3.h.

template<class Type>
void _Tuple3< Type >::negate const _Tuple3< Type > &  t  )  [inline]
 

Definition at line 171 of file _Tuple3.h.

References _Tuple3< Type >::x, _Tuple3< Type >::y, and _Tuple3< Type >::z.

template<class Type>
void _Tuple3< Type >::negate  )  [inline]
 

Definition at line 167 of file _Tuple3.h.

template<class Type>
static Type _Tuple3< Type >::norm const Type  t[3]  )  [inline, static]
 

Definition at line 197 of file _Tuple3.h.

template<class Type>
Type _Tuple3< Type >::norm  )  const [inline]
 

Definition at line 192 of file _Tuple3.h.

Referenced by _Vector3< Type >::length().

template<class Type>
static Type _Tuple3< Type >::normSquared const Type  t[3]  )  [inline, static]
 

Definition at line 186 of file _Tuple3.h.

References Math::sqr().

template<class Type>
Type _Tuple3< Type >::normSquared  )  const [inline]
 

Definition at line 182 of file _Tuple3.h.

References Math::sqr().

Referenced by _Vector3< Type >::lengthSquared().

template<class Type>
_Tuple3<Type> _Tuple3< Type >::operator * Type  c  )  const [inline]
 

Definition at line 349 of file _Tuple3.h.

References DEBUGTUPLE3.

template<class Type>
_Tuple3<Type>& _Tuple3< Type >::operator *= Type  c  )  [inline]
 

Definition at line 326 of file _Tuple3.h.

References DEBUGTUPLE3.

template<class Type>
_Tuple3< Type >::operator const Type *  )  const [inline]
 

Definition at line 378 of file _Tuple3.h.

template<class Type>
bool _Tuple3< Type >::operator!= const _Tuple3< Type > &  t  )  const [inline]
 

Definition at line 369 of file _Tuple3.h.

References DEBUGTUPLE3.

template<class Type>
_Tuple3<Type> _Tuple3< Type >::operator+ const _Tuple3< Type > &  t  )  const [inline]
 

Definition at line 339 of file _Tuple3.h.

References DEBUGTUPLE3.

template<class Type>
_Tuple3<Type>& _Tuple3< Type >::operator+= const _Tuple3< Type > &  t  )  [inline]
 

defined(_MSC_VER)

Definition at line 314 of file _Tuple3.h.

References DEBUGTUPLE3.

template<class Type>
_Tuple3<Type> _Tuple3< Type >::operator- const _Tuple3< Type > &  t  )  const [inline]
 

Definition at line 344 of file _Tuple3.h.

References DEBUGTUPLE3.

template<class Type>
_Tuple3<Type>& _Tuple3< Type >::operator-= const _Tuple3< Type > &  t  )  [inline]
 

Definition at line 320 of file _Tuple3.h.

References DEBUGTUPLE3.

template<class Type>
_Tuple3<Type> _Tuple3< Type >::operator/ Type  c  )  const [inline]
 

Definition at line 354 of file _Tuple3.h.

References DEBUGTUPLE3.

template<class Type>
_Tuple3<Type>& _Tuple3< Type >::operator/= Type  c  )  [inline]
 

Definition at line 332 of file _Tuple3.h.

References DEBUGTUPLE3.

template<class Type>
bool _Tuple3< Type >::operator== const _Tuple3< Type > &  t  )  const [inline]
 

Definition at line 364 of file _Tuple3.h.

References DEBUGTUPLE3, and Math::EPSILON.

template<class Type>
Type& _Tuple3< Type >::operator[] int  i  )  const [inline]
 

Definition at line 374 of file _Tuple3.h.

template<class Type>
static Type* _Tuple3< Type >::scale Type  t[3],
Type  s
[inline, static]
 

Definition at line 207 of file _Tuple3.h.

template<class Type>
void _Tuple3< Type >::scale Type  s  )  [inline]
 

Definition at line 201 of file _Tuple3.h.

template<class Type>
static Type* _Tuple3< Type >::scaleAdd Type  t[3],
Type  s,
const Type  t1[3],
const Type  t2[3]
[inline, static]
 

Definition at line 231 of file _Tuple3.h.

template<class Type>
void _Tuple3< Type >::scaleAdd Type  s,
const float  t1[3],
const float  t2[3]
[inline]
 

Definition at line 225 of file _Tuple3.h.

template<class Type>
void _Tuple3< Type >::scaleAdd Type  s,
const _Tuple3< Type > &  t1,
const _Tuple3< Type > &  t2
[inline]
 

Definition at line 219 of file _Tuple3.h.

References _Tuple3< Type >::x, _Tuple3< Type >::y, and _Tuple3< Type >::z.

template<class Type>
void _Tuple3< Type >::scaleAdd Type  s,
const _Tuple3< Type > &  t
[inline]
 

Definition at line 215 of file _Tuple3.h.

template<class Type>
void _Tuple3< Type >::set const _Tuple3< int > &  t  )  [inline]
 

Definition at line 270 of file _Tuple3.h.

References _Tuple3< Type >::x, _Tuple3< Type >::y, and _Tuple3< Type >::z.

template<class Type>
void _Tuple3< Type >::set const _Tuple3< float > &  t  )  [inline]
 

Definition at line 266 of file _Tuple3.h.

References _Tuple3< Type >::x, _Tuple3< Type >::y, and _Tuple3< Type >::z.

template<class Type>
void _Tuple3< Type >::set const _Tuple3< double > &  t  )  [inline]
 

Definition at line 262 of file _Tuple3.h.

References _Tuple3< Type >::x, _Tuple3< Type >::y, and _Tuple3< Type >::z.

template<class Type>
void _Tuple3< Type >::set const _Tuple3< byte > &  t  )  [inline]
 

Definition at line 258 of file _Tuple3.h.

References _Tuple3< Type >::x, _Tuple3< Type >::y, and _Tuple3< Type >::z.

template<class Type>
static Type* _Tuple3< Type >::set Type  t[3],
Type  xx,
Type  yy,
Type  zz
[inline, static]
 

Definition at line 250 of file _Tuple3.h.

template<class Type>
void _Tuple3< Type >::set Type  t[3]  )  [inline]
 

Definition at line 244 of file _Tuple3.h.

template<class Type>
void _Tuple3< Type >::set Type  xx = 0,
Type  yy = 0,
Type  zz = 0
[inline]
 

Definition at line 238 of file _Tuple3.h.

Referenced by _Matrix4< Type >::get(), _Matrix3< Type >::getColumn(), _Matrix3< Type >::getRow(), and _Vector3< Type >::normalize().

template<class Type>
static Type* _Tuple3< Type >::sub Type  t[3],
const Type  t1[3],
const Type  t2[3]
[inline, static]
 

Definition at line 288 of file _Tuple3.h.

template<class Type>
void _Tuple3< Type >::sub const _Tuple3< Type > &  t1,
const _Tuple3< Type > &  t2
[inline]
 

Definition at line 282 of file _Tuple3.h.

References _Tuple3< Type >::x, _Tuple3< Type >::y, and _Tuple3< Type >::z.

template<class Type>
static Type* _Tuple3< Type >::sub Type  t[3],
const Type  t1[3]
[inline, static]
 

Definition at line 278 of file _Tuple3.h.

template<class Type>
void _Tuple3< Type >::sub const _Tuple3< Type > &  t  )  [inline]
 

Definition at line 274 of file _Tuple3.h.


Member Data Documentation

template<class Type>
Type _Tuple3< Type >::x
 

Definition at line 33 of file _Tuple3.h.

Referenced by _Tuple3< Type >::absolute(), _Tuple3< Type >::add(), _Tuple3< Type >::clamp(), _Tuple3< Type >::clampMax(), _Tuple3< Type >::clampMin(), _Vector3< Type >::cross(), _Point3< Type >::distanceL1(), _Point3< Type >::distanceLinf(), _Point3< Type >::distanceSquared(), _Vector4< Type >::dot(), _Vector3< Type >::dot(), _Tuple3< Type >::epsilonEquals(), _Tuple3< Type >::equals(), _Tuple3< Type >::get(), _Tuple3< Type >::interpolate(), _Tuple3< Type >::negate(), _Vector3< Type >::normalize(), _Matrix4< Type >::rotationGL(), _Tuple3< Type >::scaleAdd(), _Tuple4< Type >::set(), _Tuple3< Type >::set(), _Matrix4< Type >::set(), _Matrix3< Type >::set(), _AxisAngle4< Type >::set(), _Matrix3< Type >::setColumn(), _Matrix3< Type >::setRow(), _Matrix4< Type >::setTranslation(), _Tuple3< Type >::sub(), _Matrix4< Type >::transform(), and _Matrix3< Type >::transform().

template<class Type>
Type _Tuple3< Type >::y
 

Definition at line 33 of file _Tuple3.h.

Referenced by _Tuple3< Type >::absolute(), _Tuple3< Type >::add(), _Tuple3< Type >::clamp(), _Tuple3< Type >::clampMax(), _Tuple3< Type >::clampMin(), _Vector3< Type >::cross(), _Point3< Type >::distanceL1(), _Point3< Type >::distanceLinf(), _Point3< Type >::distanceSquared(), _Vector4< Type >::dot(), _Vector3< Type >::dot(), _Tuple3< Type >::epsilonEquals(), _Tuple3< Type >::equals(), _Tuple3< Type >::get(), _Tuple3< Type >::interpolate(), _Tuple3< Type >::negate(), _Vector3< Type >::normalize(), _Matrix4< Type >::rotationGL(), _Tuple3< Type >::scaleAdd(), _Tuple4< Type >::set(), _Tuple3< Type >::set(), _Matrix4< Type >::set(), _Matrix3< Type >::set(), _AxisAngle4< Type >::set(), _Matrix3< Type >::setColumn(), _Matrix3< Type >::setRow(), _Matrix4< Type >::setTranslation(), _Tuple3< Type >::sub(), _Matrix4< Type >::transform(), and _Matrix3< Type >::transform().

template<class Type>
Type _Tuple3< Type >::z
 

Definition at line 33 of file _Tuple3.h.

Referenced by _Tuple3< Type >::absolute(), _Tuple3< Type >::add(), _Tuple3< Type >::clamp(), _Tuple3< Type >::clampMax(), _Tuple3< Type >::clampMin(), _Vector3< Type >::cross(), _Point3< Type >::distanceL1(), _Point3< Type >::distanceLinf(), _Point3< Type >::distanceSquared(), _Vector4< Type >::dot(), _Vector3< Type >::dot(), _Tuple3< Type >::epsilonEquals(), _Tuple3< Type >::equals(), _Tuple3< Type >::get(), _Tuple3< Type >::interpolate(), _Tuple3< Type >::negate(), _Vector3< Type >::normalize(), _Matrix4< Type >::rotationGL(), _Tuple3< Type >::scaleAdd(), _Tuple4< Type >::set(), _Tuple3< Type >::set(), _Matrix4< Type >::set(), _Matrix3< Type >::set(), _AxisAngle4< Type >::set(), _Matrix3< Type >::setColumn(), _Matrix3< Type >::setRow(), _Matrix4< Type >::setTranslation(), _Tuple3< Type >::sub(), _Matrix4< Type >::transform(), and _Matrix3< Type >::transform().


The documentation for this class was generated from the following files:
Generated on Thu Sep 29 13:39:45 2005 for vecmath by  doxygen 1.4.4