Point Use points when you need to represent a position. More...
#include <Point.h>
Public Types | |
enum | Params { Size = SIZE } |
The number of components this VecB has. More... | |
typedef DATA_TYPE | DataType |
The datatype used for the components of this VecB. | |
typedef VecBase< DATA_TYPE, SIZE > | BaseType |
Placeholder for the base type. | |
typedef Point< DATA_TYPE, SIZE > | VecType |
Public Member Functions | |
Point () | |
Default constructor. | |
template<typename REP2 > | |
VecType & | operator= (const VecBase< DATA_TYPE, SIZE, REP2 > &rhs) |
Assign from different rep. | |
Value constructors | |
template<typename REP2 > | |
Point (const VecBase< DATA_TYPE, SIZE, REP2 > &rVec) | |
Point (const DATA_TYPE &val0, const DATA_TYPE &val1) | |
Construct a 2-D point with 2 given values. | |
Point (const DATA_TYPE &val0, const DATA_TYPE &val1, const DATA_TYPE &val2) | |
Construct a 3-D point with 2 given values. | |
Point (const DATA_TYPE &val0, const DATA_TYPE &val1, const DATA_TYPE &val2, const DATA_TYPE &val3) | |
Construct a 4-D point with 2 given values. |
Point Use points when you need to represent a position.
Don't use points to represent a Vector. One difference you should note is that ceratain matrix operations are different between Point and Vec such as xform and operator*. A Vec xform by matrix is simply a rotation, while a Point xformed by a matrix is a full matrix transform (rotation, skew, translation, scale).
Definition at line 30 of file Point.h.
typedef VecBase<DATA_TYPE, SIZE> gmtl::Point< DATA_TYPE, SIZE >::BaseType |
typedef DATA_TYPE gmtl::Point< DATA_TYPE, SIZE >::DataType |
The datatype used for the components of this VecB.
Reimplemented from gmtl::VecBase< DATA_TYPE, SIZE >.
typedef Point<DATA_TYPE, SIZE> gmtl::Point< DATA_TYPE, SIZE >::VecType |
enum gmtl::Point::Params |
The number of components this VecB has.
Reimplemented from gmtl::VecBase< DATA_TYPE, SIZE >.
Definition at line 34 of file Point.h.
{ Size = SIZE };
gmtl::Point< DATA_TYPE, SIZE >::Point | ( | ) | [inline] |
gmtl::Point< DATA_TYPE, SIZE >::Point | ( | const VecBase< DATA_TYPE, SIZE, REP2 > & | rVec | ) | [inline] |
gmtl::Point< DATA_TYPE, SIZE >::Point | ( | const DATA_TYPE & | val0, | |
const DATA_TYPE & | val1 | |||
) | [inline] |
Construct a 2-D point with 2 given values.
Definition at line 74 of file Point.h.
: BaseType(val0, val1) { // @todo need compile time assert gmtlASSERT( SIZE == 2 && "out of bounds element access in Point" ); }
gmtl::Point< DATA_TYPE, SIZE >::Point | ( | const DATA_TYPE & | val0, | |
const DATA_TYPE & | val1, | |||
const DATA_TYPE & | val2 | |||
) | [inline] |
Construct a 3-D point with 2 given values.
Definition at line 84 of file Point.h.
: BaseType(val0, val1, val2) { // @todo need compile time assert gmtlASSERT( SIZE == 3 && "out of bounds element access in Point" ); }
gmtl::Point< DATA_TYPE, SIZE >::Point | ( | const DATA_TYPE & | val0, | |
const DATA_TYPE & | val1, | |||
const DATA_TYPE & | val2, | |||
const DATA_TYPE & | val3 | |||
) | [inline] |
Construct a 4-D point with 2 given values.
Definition at line 94 of file Point.h.
: BaseType(val0, val1, val2, val3) { // @todo need compile time assert gmtlASSERT( SIZE == 4 && "out of bounds element access in Point" ); }
VecType& gmtl::Point< DATA_TYPE, SIZE >::operator= | ( | const VecBase< DATA_TYPE, SIZE, REP2 > & | rhs | ) | [inline] |
Assign from different rep.
Definition at line 111 of file Point.h.
{ BaseType::operator=(rhs); return *this; }