# TVector2Template< T > Class Template Reference
[Math classes]

Inheritance diagram for TVector2Template< T >:

List of all members.

## Public Member Functions
| TVector2Template (void)
| TVector2Template (const T &xx, const T &yy)
void | SetValues (const T &xx, const T &yy)
uint32 | GetDimension (void) const
const T & | operator() (const uint32 elemNum) const
T & | operator() (const uint32 elemNum)
const T & | operator[] (const uint32 elemNum) const
T & | operator[] (const uint32 elemNum)
T & | X (void)
T & | Y (void)
const T & | X (void) const
const T & | Y (void) const
T | GetMagnitude (void) const
T | GetMagnitudeSquared (void) const
T | GetArgument () const
T | GetDistance (const TVector2Template< T > &rhs) const
boolean | SetMagnitude (const T &newMagnitude)
void | SetToCenter (const TVector2Template< T > &v0, const TVector2Template< T > &v1)
boolean | Normalize (const T &zeroTolerance=0.0f)
boolean | NormalizeOrReplaceWith (const TVector2Template< T > &replacement, const T &zeroTolerance=T(0.0))
boolean | IsEqual (const TVector2Template< T > &compareVec, const T &zeroTolerance=T(0.0)) const
void | ClampValue (const TVector2Template< T > &min, const TVector2Template< T > &max)
void | Negate (void)
void | Interpolate (const TVector2Template< T > &vstart, const TVector2Template< T > &vend, const T &t)
void | Swap (TVector2Template< T > &v)
T | Cross (const TVector2Template< T > &v) const
TVector2Template< T > & | operator/= (const T &scalar)
TVector2Template< T > & | operator*= (const T &scalar)
TVector2Template< T > & | operator+= (const TVector2Template< T > &v)
TVector2Template< T > & | operator-= (const TVector2Template< T > &v)
TVector2Template< T > | operator* (const T &s) const
T | operator* (const TVector2Template< T > &b) const
TVector2Template< T > | operator/ (const T &s) const
template<class U >
TVector2Template< T > & | operator= (const TVector2Template< U > &v)
TVector2Template< T > & | operator= (const int32 i)
T | Normalize (TVector2Template< T > &result) const
T | GetNorm () const
T | GetSquaredNorm () const
## Public Attributes
T | x
T | y
## Static Public Attributes
static const TVector2Template< T > | kZero
static const TVector2Template< T > | kOnes
static const TVector2Template< T > | kUnitX
static const TVector2Template< T > | kUnitY
static const TVector2Template< T > | kNegativeX
static const TVector2Template< T > | kNegativeY

## Detailed Description

### template<class T>
class TVector2Template< T >

Defines a two dimensional vector.

## Constructor & Destructor Documentation

template<class T >

TVector2Template< T >::TVector2Template | ( | void |  | ) | `[inline]`

template<class T>

TVector2Template< T >::TVector2Template | ( | const T & | xx,
|  | const T & | yy |
| ) |  |  | `[inline]`

## Member Function Documentation

template<class T>

void TVector2Template< T >::ClampValue | ( | const TVector2Template< T > & | min,
|  | const TVector2Template< T > & | max |
| ) |  |  |

template<class T>

T TVector2Template< T >::Cross | ( | const TVector2Template< T > & | v | ) | const`[inline]`

template<class T >

T TVector2Template< T >::GetArgument | ( |  | ) | const`[inline]`

template<class T >

uint32 TVector2Template< T >::GetDimension | ( | void |  | ) | const`[inline]`

template<class T>

T TVector2Template< T >::GetDistance | ( | const TVector2Template< T > & | rhs | ) | const`[inline]`

template<class T >

T TVector2Template< T >::GetMagnitude | ( | void |  | ) | const`[inline]`

template<class T >

T TVector2Template< T >::GetMagnitudeSquared | ( | void |  | ) | const`[inline]`

template<class T>

T TVector2Template< T >::GetNorm | ( |  | ) | const`[inline]`

template<class T>

T TVector2Template< T >::GetSquaredNorm | ( |  | ) | const`[inline]`

template<class T>

void TVector2Template< T >::Interpolate | ( | const TVector2Template< T > & | vstart,
|  | const TVector2Template< T > & | vend,
|  | const T & | t |
| ) |  |  | `[inline]`

template<class T>

boolean TVector2Template< T >::IsEqual | ( | const TVector2Template< T > & | compareVec,
|  | const T & | zeroTolerance = `T(0.0)` |
| ) |  |  | const

template<class T >

void TVector2Template< T >::Negate | ( | void |  | ) | `[inline]`

template<class T>

T TVector2Template< T >::Normalize | ( | TVector2Template< T > & | result | ) | const

template<class T>

boolean TVector2Template< T >::Normalize | ( | const T & | zeroTolerance = `0.0f` | ) | `[inline]`

template<class T>

boolean TVector2Template< T >::NormalizeOrReplaceWith | ( | const TVector2Template< T > & | replacement,
|  | const T & | zeroTolerance = `T(0.0)` |
| ) |  |  | `[inline]`

template<class T >

T & TVector2Template< T >::operator() | ( | const uint32 | elemNum | ) | `[inline]`

template<class T >

const T & TVector2Template< T >::operator() | ( | const uint32 | elemNum | ) | const`[inline]`

template<class T>

T TVector2Template< T >::operator* | ( | const TVector2Template< T > & | b | ) | const`[inline]`

template<class T>

TVector2Template< T > TVector2Template< T >::operator* | ( | const T & | s | ) | const`[inline]`

template<class T>

TVector2Template< T > & TVector2Template< T >::operator*= | ( | const T & | scalar | ) | `[inline]`

template<class T>

TVector2Template< T > & TVector2Template< T >::operator+= | ( | const TVector2Template< T > & | v | ) | `[inline]`

template<class T>

TVector2Template< T > & TVector2Template< T >::operator-= | ( | const TVector2Template< T > & | v | ) | `[inline]`

template<class T>

TVector2Template< T > TVector2Template< T >::operator/ | ( | const T & | s | ) | const`[inline]`

template<class T>

TVector2Template< T > & TVector2Template< T >::operator/= | ( | const T & | scalar | ) | `[inline]`

template<class T>

TVector2Template<T>& TVector2Template< T >::operator= | ( | const int32 | i | ) | `[inline]`

template<class T>
template<class U >

TVector2Template<T>& TVector2Template< T >::operator= | ( | const TVector2Template< U > & | v | ) | `[inline]`

template<class T >

T & TVector2Template< T >::operator[] | ( | const uint32 | elemNum | ) | `[inline]`

template<class T >

const T & TVector2Template< T >::operator[] | ( | const uint32 | elemNum | ) | const`[inline]`

template<class T>

boolean TVector2Template< T >::SetMagnitude | ( | const T & | newMagnitude | ) |

template<class T>

void TVector2Template< T >::SetToCenter | ( | const TVector2Template< T > & | v0,
|  | const TVector2Template< T > & | v1 |
| ) |  |  |

template<class T>

void TVector2Template< T >::SetValues | ( | const T & | xx,
|  | const T & | yy |
| ) |  |  | `[inline]`

template<class T>

void TVector2Template< T >::Swap | ( | TVector2Template< T > & | v | ) |

template<class T >

const T & TVector2Template< T >::X | ( | void |  | ) | const`[inline]`

template<class T >

T & TVector2Template< T >::X | ( | void |  | ) | `[inline]`

template<class T >

const T & TVector2Template< T >::Y | ( | void |  | ) | const`[inline]`

template<class T >

T & TVector2Template< T >::Y | ( | void |  | ) | `[inline]`

## Member Data Documentation

template<class T>

const TVector2Template<T> TVector2Template< T >::kNegativeX`[static]`

template<class T>

const TVector2Template<T> TVector2Template< T >::kNegativeY`[static]`

template<class T>

const TVector2Template<T> TVector2Template< T >::kOnes`[static]`

template<class T>

const TVector2Template<T> TVector2Template< T >::kUnitX`[static]`

template<class T>

const TVector2Template<T> TVector2Template< T >::kUnitY`[static]`

template<class T>

const TVector2Template<T> TVector2Template< T >::kZero`[static]`

template<class T>

T TVector2Template< T >::x

template<class T>

T TVector2Template< T >::y

The documentation for this class was generated from the following file:

- Vector2.h