# Imath::Vec4< 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
Vec4 ()
Vec4 (T a)
Vec4 (T a, T b, T c, T d)
Vec4 (const Vec4 &v)
template<class S >
Vec4 (const Vec4< S > &v)
const Vec4operator= (const Vec4 &v)
template<class S >
Vec4 (const Vec3< S > &v)
template<class S >
bool operator== (const Vec4< S > &v) const
template<class S >
bool operator!= (const Vec4< S > &v) const
bool equalWithAbsError (const Vec4< T > &v, T e) const
bool equalWithRelError (const Vec4< T > &v, T e) const
dot (const Vec4 &v) const
operator^ (const Vec4 &v) const
const Vec4operator+= (const Vec4 &v)
Vec4 operator+ (const Vec4 &v) const
const Vec4operator-= (const Vec4 &v)
Vec4 operator- (const Vec4 &v) const
Vec4 operator- () const
const Vec4negate ()
const Vec4operator*= (const Vec4 &v)
const Vec4operator*= (T a)
Vec4 operator* (const Vec4 &v) const
Vec4 operator* (T a) const
const Vec4operator/= (const Vec4 &v)
const Vec4operator/= (T a)
Vec4 operator/ (const Vec4 &v) const
Vec4 operator/ (T a) const
length () const
length2 () const
const Vec4normalize ()
const Vec4normalizeExc () throw (Iex::MathExc)
const Vec4normalizeNonNull ()
Vec4< T > normalized () const
Vec4< T > normalizedExc () const throw (Iex::MathExc)
Vec4< T > normalizedNonNull () const
template<>
short length () const
template<>
const Vec4< short > & normalize ()
template<>
const Vec4< short > & normalizeExc () throw(Iex::MathExc)
template<>
const Vec4< short > & normalizeNonNull ()
template<>
Vec4< short > normalized () const
template<>
Vec4< short > normalizedExc () const throw(Iex::MathExc)
template<>
Vec4< short > normalizedNonNull () const
template<>
int length () const
template<>
const Vec4< int > & normalize ()
template<>
const Vec4< int > & normalizeExc () throw(Iex::MathExc)
template<>
const Vec4< int > & normalizeNonNull ()
template<>
Vec4< int > normalized () const
template<>
Vec4< int > normalizedExc () const throw(Iex::MathExc)
template<>
Vec4< 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
w

## Detailed Description

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

Definition at line 479 of file ImathVec.h.

## Member Typedef Documentation

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

Definition at line 652 of file ImathVec.h.

## Constructor & Destructor Documentation

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

Definition at line 1782 of file ImathVec.h.

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

Definition at line 1789 of file ImathVec.h.

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

Definition at line 1796 of file ImathVec.h.

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

Definition at line 1806 of file ImathVec.h.

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

Definition at line 1817 of file ImathVec.h.

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

Definition at line 1839 of file ImathVec.h.

## Member Function Documentation

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

Definition at line 643 of file ImathVec.h.

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

Definition at line 641 of file ImathVec.h.

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

Definition at line 640 of file ImathVec.h.

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

Definition at line 642 of file ImathVec.h.

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

Definition at line 633 of file ImathVec.h.

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

Definition at line 1887 of file ImathVec.h.

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

Definition at line 1865 of file ImathVec.h.

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

Definition at line 1876 of file ImathVec.h.

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

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

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

Definition at line 2066 of file ImathVec.h.

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

Definition at line 2078 of file ImathVec.h.

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

Definition at line 1945 of file ImathVec.h.

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

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

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

Definition at line 2085 of file ImathVec.h.

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

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

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

Definition at line 2137 of file ImathVec.h.

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

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

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

Definition at line 2149 of file ImathVec.h.

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

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

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

Definition at line 2162 of file ImathVec.h.

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

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

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

Definition at line 2108 of file ImathVec.h.

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

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

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

Definition at line 2125 of file ImathVec.h.

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

Definition at line 1858 of file ImathVec.h.

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

Definition at line 1985 of file ImathVec.h.

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

Definition at line 1978 of file ImathVec.h.

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

Definition at line 1967 of file ImathVec.h.

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

Definition at line 1956 of file ImathVec.h.

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

Definition at line 1913 of file ImathVec.h.

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

Definition at line 1902 of file ImathVec.h.

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

Definition at line 1938 of file ImathVec.h.

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

Definition at line 1931 of file ImathVec.h.

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

Definition at line 1920 of file ImathVec.h.

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

Definition at line 2021 of file ImathVec.h.

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

Definition at line 2014 of file ImathVec.h.

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

Definition at line 2003 of file ImathVec.h.

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

Definition at line 1992 of file ImathVec.h.

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

Definition at line 1827 of file ImathVec.h.

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

Definition at line 1850 of file ImathVec.h.

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

Definition at line 1775 of file ImathVec.h.

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

Definition at line 1768 of file ImathVec.h.

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

Definition at line 1894 of file ImathVec.h.

## Member Data Documentation

template<class T>
 T Imath::Vec4< T >::w

Definition at line 487 of file ImathVec.h.

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

Definition at line 487 of file ImathVec.h.

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

Definition at line 487 of file ImathVec.h.

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

Definition at line 487 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