# Imath::Vec3< T > Class Template Reference

`#include <ImathVec.h>`

List of all members.

## Public Types

typedef T BaseType

## Public Member Functions

T & operator[] (int i)
const T & operator[] (int i) const
Vec3 ()
Vec3 (T a)
Vec3 (T a, T b, T c)
Vec3 (const Vec3 &v)
template<class S >
Vec3 (const Vec3< S > &v)
const Vec3operator= (const Vec3 &v)
template<class S >
Vec3 (const Vec4< S > &v)
template<class S >
Vec3 (const Vec4< S > &v, InfException)
template<class S >
void setValue (S a, S b, S c)
template<class S >
void setValue (const Vec3< S > &v)
template<class S >
void getValue (S &a, S &b, S &c) const
template<class S >
void getValue (Vec3< S > &v) const
T * getValue ()
const T * getValue () const
template<class S >
bool operator== (const Vec3< S > &v) const
template<class S >
bool operator!= (const Vec3< S > &v) const
bool equalWithAbsError (const Vec3< T > &v, T e) const
bool equalWithRelError (const Vec3< T > &v, T e) const
dot (const Vec3 &v) const
operator^ (const Vec3 &v) const
Vec3 cross (const Vec3 &v) const
const Vec3operator%= (const Vec3 &v)
Vec3 operator% (const Vec3 &v) const
const Vec3operator+= (const Vec3 &v)
Vec3 operator+ (const Vec3 &v) const
const Vec3operator-= (const Vec3 &v)
Vec3 operator- (const Vec3 &v) const
Vec3 operator- () const
const Vec3negate ()
const Vec3operator*= (const Vec3 &v)
const Vec3operator*= (T a)
Vec3 operator* (const Vec3 &v) const
Vec3 operator* (T a) const
const Vec3operator/= (const Vec3 &v)
const Vec3operator/= (T a)
Vec3 operator/ (const Vec3 &v) const
Vec3 operator/ (T a) const
length () const
length2 () const
const Vec3normalize ()
const Vec3normalizeExc () throw (Iex::MathExc)
const Vec3normalizeNonNull ()
Vec3< T > normalized () const
Vec3< T > normalizedExc () const throw (Iex::MathExc)
Vec3< T > normalizedNonNull () const
template<>
short length () const
template<>
const Vec3< short > & normalize ()
template<>
const Vec3< short > & normalizeExc () throw(Iex::MathExc)
template<>
const Vec3< short > & normalizeNonNull ()
template<>
Vec3< short > normalized () const
template<>
Vec3< short > normalizedExc () const throw(Iex::MathExc)
template<>
Vec3< short > normalizedNonNull () const
template<>
int length () const
template<>
const Vec3< int > & normalize ()
template<>
const Vec3< int > & normalizeExc () throw(Iex::MathExc)
template<>
const Vec3< int > & normalizeNonNull ()
template<>
Vec3< int > normalized () const
template<>
Vec3< int > normalizedExc () const throw(Iex::MathExc)
template<>
Vec3< int > normalizedNonNull () const

## Static Public Member Functions

static unsigned int dimensions ()
static T baseTypeMin ()
static T baseTypeMax ()
static T baseTypeSmallest ()
static T baseTypeEpsilon ()

x
y
z

## Detailed Description

### template<class T> class Imath::Vec3< T >

Definition at line 266 of file ImathVec.h.

## Member Typedef Documentation

template<class T>
 typedef T Imath::Vec3< T >::BaseType

Definition at line 470 of file ImathVec.h.

## Constructor & Destructor Documentation

template<class T >
 Imath::Vec3< T >::Vec3 ( ) ` [inline]`

Definition at line 1288 of file ImathVec.h.

template<class T>
 Imath::Vec3< T >::Vec3 ( T a ) ` [inline, explicit]`

Definition at line 1295 of file ImathVec.h.

template<class T>
 Imath::Vec3< T >::Vec3 ( T a, T b, T c ) ` [inline]`

Definition at line 1302 of file ImathVec.h.

template<class T>
 Imath::Vec3< T >::Vec3 ( const Vec3< T > & v ) ` [inline]`

Definition at line 1311 of file ImathVec.h.

template<class T >
template<class S >
 Imath::Vec3< T >::Vec3 ( const Vec3< S > & v ) ` [inline]`

Definition at line 1321 of file ImathVec.h.

template<class T >
template<class S >
 Imath::Vec3< T >::Vec3 ( const Vec4< S > & v ) ` [inline, explicit]`

Definition at line 1341 of file ImathVec.h.

template<class T >
template<class S >
 Imath::Vec3< T >::Vec3 ( const Vec4< S > & v, InfException ) ` [inline, explicit]`

Definition at line 1350 of file ImathVec.h.

## Member Function Documentation

template<class T>
 static T Imath::Vec3< T >::baseTypeEpsilon ( ) ` [inline, static]`

Definition at line 461 of file ImathVec.h.

template<class T>
 static T Imath::Vec3< T >::baseTypeMax ( ) ` [inline, static]`

Definition at line 459 of file ImathVec.h.

template<class T>
 static T Imath::Vec3< T >::baseTypeMin ( ) ` [inline, static]`

Definition at line 458 of file ImathVec.h.

template<class T>
 static T Imath::Vec3< T >::baseTypeSmallest ( ) ` [inline, static]`

Definition at line 460 of file ImathVec.h.

template<class T >
 Vec3< T > Imath::Vec3< T >::cross ( const Vec3< T > & v ) const` [inline]`

Definition at line 1480 of file ImathVec.h.

template<class T>
 static unsigned int Imath::Vec3< T >::dimensions ( ) ` [inline, static]`

Definition at line 451 of file ImathVec.h.

template<class T >
 T Imath::Vec3< T >::dot ( const Vec3< T > & v ) const` [inline]`

Definition at line 1466 of file ImathVec.h.

template<class T>
 bool Imath::Vec3< T >::equalWithAbsError ( const Vec3< T > & v, T e ) const` [inline]`

Definition at line 1444 of file ImathVec.h.

template<class T>
 bool Imath::Vec3< T >::equalWithRelError ( const Vec3< T > & v, T e ) const` [inline]`

Definition at line 1455 of file ImathVec.h.

template<class T >
 const T * Imath::Vec3< T >::getValue ( ) const` [inline]`

Definition at line 1421 of file ImathVec.h.

template<class T >
 T * Imath::Vec3< T >::getValue ( ) ` [inline]`

Definition at line 1414 of file ImathVec.h.

template<class T >
template<class S >
 void Imath::Vec3< T >::getValue ( Vec3< S > & v ) const` [inline]`

Definition at line 1405 of file ImathVec.h.

template<class T >
template<class S >
 void Imath::Vec3< T >::getValue ( S & a, S & b, S & c ) const` [inline]`

Definition at line 1395 of file ImathVec.h.

template<>
 int Imath::Vec3< int >::length ( ) const` [inline]`

template<>
 short Imath::Vec3< short >::length ( ) const` [inline]`

template<class T >
 T Imath::Vec3< T >::length ( ) const` [inline]`

Definition at line 1662 of file ImathVec.h.

template<class T >
 T Imath::Vec3< T >::length2 ( ) const` [inline]`

Definition at line 1674 of file ImathVec.h.

template<class T >
 const Vec3< T > & Imath::Vec3< T >::negate ( ) ` [inline]`

Reimplemented in Imath::Color3< T >.

Definition at line 1552 of file ImathVec.h.

template<>
 const Vec3< int > & Imath::Vec3< int >::normalize ( ) ` [inline]`

template<>
 const Vec3< short > & Imath::Vec3< short >::normalize ( ) ` [inline]`

template<class T >
 const Vec3< T > & Imath::Vec3< T >::normalize ( ) ` [inline]`

Definition at line 1681 of file ImathVec.h.

template<>
 Vec3< int > Imath::Vec3< int >::normalized ( ) const` [inline]`

template<>
 Vec3< short > Imath::Vec3< short >::normalized ( ) const` [inline]`

template<class T >
 Vec3< T > Imath::Vec3< T >::normalized ( ) const` [inline]`

Definition at line 1730 of file ImathVec.h.

template<>
 Vec3< int > Imath::Vec3< int >::normalizedExc ( ) const throw(Iex::MathExc)` [inline]`

template<>
 Vec3< short > Imath::Vec3< short >::normalizedExc ( ) const throw(Iex::MathExc)` [inline]`

template<class T >
 Vec3< T > Imath::Vec3< T >::normalizedExc ( ) const throw (Iex::MathExc)` [inline]`

Definition at line 1742 of file ImathVec.h.

template<>
 Vec3< int > Imath::Vec3< int >::normalizedNonNull ( ) const` [inline]`

template<>
 Vec3< short > Imath::Vec3< short >::normalizedNonNull ( ) const` [inline]`

template<class T >
 Vec3< T > Imath::Vec3< T >::normalizedNonNull ( ) const` [inline]`

Definition at line 1755 of file ImathVec.h.

template<>
 const Vec3< int > & Imath::Vec3< int >::normalizeExc ( ) throw(Iex::MathExc)` [inline]`

template<>
 const Vec3< short > & Imath::Vec3< short >::normalizeExc ( ) throw(Iex::MathExc)` [inline]`

template<class T >
 const Vec3< T > & Imath::Vec3< T >::normalizeExc ( ) throw (Iex::MathExc)` [inline]`

Definition at line 1703 of file ImathVec.h.

template<>
 const Vec3< int > & Imath::Vec3< int >::normalizeNonNull ( ) ` [inline]`

template<>
 const Vec3< short > & Imath::Vec3< short >::normalizeNonNull ( ) ` [inline]`

template<class T >
 const Vec3< T > & Imath::Vec3< T >::normalizeNonNull ( ) ` [inline]`

Definition at line 1719 of file ImathVec.h.

template<class T >
template<class S >
 bool Imath::Vec3< T >::operator!= ( const Vec3< S > & v ) const` [inline]`

Definition at line 1437 of file ImathVec.h.

template<class T >
 Vec3< T > Imath::Vec3< T >::operator% ( const Vec3< T > & v ) const` [inline]`

Definition at line 1502 of file ImathVec.h.

template<class T >
 const Vec3< T > & Imath::Vec3< T >::operator%= ( const Vec3< T > & v ) ` [inline]`

Definition at line 1489 of file ImathVec.h.

template<class T>
 Vec3< T > Imath::Vec3< T >::operator* ( T a ) const` [inline]`

Reimplemented in Imath::Color3< T >.

Definition at line 1589 of file ImathVec.h.

template<class T >
 Vec3< T > Imath::Vec3< T >::operator* ( const Vec3< T > & v ) const` [inline]`

Definition at line 1582 of file ImathVec.h.

template<class T>
 const Vec3< T > & Imath::Vec3< T >::operator*= ( T a ) ` [inline]`

Reimplemented in Imath::Color3< T >.

Definition at line 1572 of file ImathVec.h.

template<class T >
 const Vec3< T > & Imath::Vec3< T >::operator*= ( const Vec3< T > & v ) ` [inline]`

Definition at line 1562 of file ImathVec.h.

template<class T >
 Vec3< T > Imath::Vec3< T >::operator+ ( const Vec3< T > & v ) const` [inline]`

Definition at line 1521 of file ImathVec.h.

template<class T >
 const Vec3< T > & Imath::Vec3< T >::operator+= ( const Vec3< T > & v ) ` [inline]`

Definition at line 1511 of file ImathVec.h.

template<class T >
 Vec3< T > Imath::Vec3< T >::operator- ( ) const` [inline]`

Reimplemented in Imath::Color3< T >.

Definition at line 1545 of file ImathVec.h.

template<class T >
 Vec3< T > Imath::Vec3< T >::operator- ( const Vec3< T > & v ) const` [inline]`

Definition at line 1538 of file ImathVec.h.

template<class T >
 const Vec3< T > & Imath::Vec3< T >::operator-= ( const Vec3< T > & v ) ` [inline]`

Definition at line 1528 of file ImathVec.h.

template<class T>
 Vec3< T > Imath::Vec3< T >::operator/ ( T a ) const` [inline]`

Reimplemented in Imath::Color3< T >.

Definition at line 1623 of file ImathVec.h.

template<class T >
 Vec3< T > Imath::Vec3< T >::operator/ ( const Vec3< T > & v ) const` [inline]`

Definition at line 1616 of file ImathVec.h.

template<class T>
 const Vec3< T > & Imath::Vec3< T >::operator/= ( T a ) ` [inline]`

Reimplemented in Imath::Color3< T >.

Definition at line 1606 of file ImathVec.h.

template<class T >
 const Vec3< T > & Imath::Vec3< T >::operator/= ( const Vec3< T > & v ) ` [inline]`

Definition at line 1596 of file ImathVec.h.

template<class T >
 const Vec3< T > & Imath::Vec3< T >::operator= ( const Vec3< T > & v ) ` [inline]`

Reimplemented in Imath::Euler< T >.

Definition at line 1330 of file ImathVec.h.

template<class T >
template<class S >
 bool Imath::Vec3< T >::operator== ( const Vec3< S > & v ) const` [inline]`

Definition at line 1429 of file ImathVec.h.

template<class T >
 const T & Imath::Vec3< T >::operator[] ( int i ) const` [inline]`

Definition at line 1281 of file ImathVec.h.

template<class T >
 T & Imath::Vec3< T >::operator[] ( int i ) ` [inline]`

Definition at line 1274 of file ImathVec.h.

template<class T >
 T Imath::Vec3< T >::operator^ ( const Vec3< T > & v ) const` [inline]`

Definition at line 1473 of file ImathVec.h.

template<class T >
template<class S >
 void Imath::Vec3< T >::setValue ( const Vec3< S > & v ) ` [inline]`

Definition at line 1385 of file ImathVec.h.

template<class T >
template<class S >
 void Imath::Vec3< T >::setValue ( S a, S b, S c ) ` [inline]`

Definition at line 1375 of file ImathVec.h.

## Member Data Documentation

template<class T>
 T Imath::Vec3< T >::x

Definition at line 274 of file ImathVec.h.

template<class T>
 T Imath::Vec3< T >::y

Definition at line 274 of file ImathVec.h.

template<class T>
 T Imath::Vec3< T >::z

Definition at line 274 of file ImathVec.h.

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

Generated on Mon Jan 28 00:49:32 2013 for HDK by  1.5.9