HDK
Vec3< T > Class Template Reference

`#include <ImathForward.h>`

Inheritance diagram for Vec3< T >:

## Public Types

typedef T BaseType

## Public Member Functions

Toperator[] (int i)

const Toperator[] (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

TgetValue ()

const TgetValue () 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

T dot (const Vec3 &v) const

T 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

T length () const

T length2 () const

const Vec3normalize ()

const Vec3normalizeExc ()

const Vec3normalizeNonNull ()

Vec3< Tnormalized () const

Vec3< TnormalizedExc () const

Vec3< TnormalizedNonNull () const

template<>
short length () const

template<>
const Vec3< short > & normalize ()

template<>
const Vec3< short > & normalizeExc ()

template<>
const Vec3< short > & normalizeNonNull ()

template<>
Vec3< short > normalized () const

template<>
Vec3< short > normalizedExc () const

template<>
Vec3< short > normalizedNonNull () const

template<>
int length () const

template<>
const Vec3< int > & normalize ()

template<>
const Vec3< int > & normalizeExc ()

template<>
const Vec3< int > & normalizeNonNull ()

template<>
Vec3< intnormalized () const

template<>
Vec3< intnormalizedExc () const

template<>
Vec3< intnormalizedNonNull () const

## Static Public Member Functions

static unsigned int dimensions ()

static T baseTypeMin ()

static T baseTypeMax ()

static T baseTypeSmallest ()

static T baseTypeEpsilon ()

T x

T y

T z

## Detailed Description

### template<class T> class Vec3< T >

Definition at line 64 of file ImathForward.h.

## Member Typedef Documentation

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

Definition at line 471 of file ImathVec.h.

## Constructor & Destructor Documentation

template<class T >
 Vec3< T >::Vec3 ( )
inline

Definition at line 1289 of file ImathVec.h.

template<class T >
 Vec3< T >::Vec3 ( T a )
inlineexplicit

Definition at line 1296 of file ImathVec.h.

template<class T >
 Vec3< T >::Vec3 ( T a, T b, T c )
inline

Definition at line 1303 of file ImathVec.h.

template<class T >
 Vec3< T >::Vec3 ( const Vec3< T > & v )
inline

Definition at line 1312 of file ImathVec.h.

template<class T >
template<class S >
 Vec3< T >::Vec3 ( const Vec3< S > & v )
inline

Definition at line 1322 of file ImathVec.h.

template<class T >
template<class S >
 Vec3< T >::Vec3 ( const Vec4< S > & v )
inlineexplicit

Definition at line 1342 of file ImathVec.h.

template<class T >
template<class S >
 Vec3< T >::Vec3 ( const Vec4< S > & v, InfException )
explicit

Definition at line 1351 of file ImathVec.h.

## Member Function Documentation

template<class T>
 static T Vec3< T >::baseTypeEpsilon ( )
inlinestatic

Definition at line 462 of file ImathVec.h.

template<class T>
 static T Vec3< T >::baseTypeMax ( )
inlinestatic

Definition at line 460 of file ImathVec.h.

template<class T>
 static T Vec3< T >::baseTypeMin ( )
inlinestatic

Definition at line 459 of file ImathVec.h.

template<class T>
 static T Vec3< T >::baseTypeSmallest ( )
inlinestatic

Definition at line 461 of file ImathVec.h.

template<class T >
 Vec3< T > Vec3< T >::cross ( const Vec3< T > & v ) const
inline

Definition at line 1481 of file ImathVec.h.

template<class T>
 static unsigned int Vec3< T >::dimensions ( )
inlinestatic

Definition at line 452 of file ImathVec.h.

template<class T >
 T Vec3< T >::dot ( const Vec3< T > & v ) const
inline

Definition at line 1467 of file ImathVec.h.

template<class T >
 bool Vec3< T >::equalWithAbsError ( const Vec3< T > & v, T e ) const

Definition at line 1445 of file ImathVec.h.

template<class T >
 bool Vec3< T >::equalWithRelError ( const Vec3< T > & v, T e ) const

Definition at line 1456 of file ImathVec.h.

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

Definition at line 1396 of file ImathVec.h.

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

Definition at line 1406 of file ImathVec.h.

template<class T >
 T * Vec3< T >::getValue ( )
inline

Definition at line 1415 of file ImathVec.h.

template<class T >
 const T * Vec3< T >::getValue ( ) const
inline

Definition at line 1422 of file ImathVec.h.

template<class T >
 T Vec3< T >::length ( void ) const
inline

Definition at line 1663 of file ImathVec.h.

template<>
 short Vec3< short >::length ( ) const
template<>
 int Vec3< int >::length ( ) const
template<class T >
 T Vec3< T >::length2 ( ) const
inline

Definition at line 1675 of file ImathVec.h.

template<class T >
 const Vec3< T > & Vec3< T >::negate ( )
inline

Definition at line 1553 of file ImathVec.h.

template<class T >
 const Vec3< T > & Vec3< T >::normalize ( )

Definition at line 1682 of file ImathVec.h.

template<>
 const Vec3< short > & Vec3< short >::normalize ( )
template<>
 const Vec3< int > & Vec3< int >::normalize ( )
template<class T >
 Vec3< T > Vec3< T >::normalized ( ) const

Definition at line 1731 of file ImathVec.h.

template<>
 Vec3< short > Vec3< short >::normalized ( ) const
template<>
 Vec3< int > Vec3< int >::normalized ( ) const
template<class T >
 Vec3< T > Vec3< T >::normalizedExc ( ) const

Definition at line 1743 of file ImathVec.h.

template<>
 Vec3< short > Vec3< short >::normalizedExc ( ) const
template<>
 Vec3< int > Vec3< int >::normalizedExc ( ) const
template<class T >
 Vec3< T > Vec3< T >::normalizedNonNull ( ) const
inline

Definition at line 1756 of file ImathVec.h.

template<>
 Vec3< short > Vec3< short >::normalizedNonNull ( ) const
template<>
 Vec3< int > Vec3< int >::normalizedNonNull ( ) const
template<class T >
 const Vec3< T > & Vec3< T >::normalizeExc ( )

Definition at line 1704 of file ImathVec.h.

template<>
 const Vec3< short > & Vec3< short >::normalizeExc ( )
template<>
 const Vec3< int > & Vec3< int >::normalizeExc ( )
template<class T >
 const Vec3< T > & Vec3< T >::normalizeNonNull ( )
inline

Definition at line 1720 of file ImathVec.h.

template<>
 const Vec3< short > & Vec3< short >::normalizeNonNull ( )
template<>
 const Vec3< int > & Vec3< int >::normalizeNonNull ( )
template<class T >
template<class S >
 bool Vec3< T >::operator!= ( const Vec3< S > & v ) const
inline

Definition at line 1438 of file ImathVec.h.

template<class T >
 Vec3< T > Vec3< T >::operator% ( const Vec3< T > & v ) const
inline

Definition at line 1503 of file ImathVec.h.

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

Definition at line 1490 of file ImathVec.h.

template<class T >
 Vec3< T > Vec3< T >::operator* ( const Vec3< T > & v ) const
inline

Definition at line 1583 of file ImathVec.h.

template<class T >
 Vec3< T > Vec3< T >::operator* ( T a ) const
inline

Definition at line 1590 of file ImathVec.h.

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

Definition at line 1563 of file ImathVec.h.

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

Definition at line 1573 of file ImathVec.h.

template<class T >
 Vec3< T > Vec3< T >::operator+ ( const Vec3< T > & v ) const
inline

Definition at line 1522 of file ImathVec.h.

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

Definition at line 1512 of file ImathVec.h.

template<class T >
 Vec3< T > Vec3< T >::operator- ( const Vec3< T > & v ) const
inline

Definition at line 1539 of file ImathVec.h.

template<class T >
 Vec3< T > Vec3< T >::operator- ( ) const
inline

Definition at line 1546 of file ImathVec.h.

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

Definition at line 1529 of file ImathVec.h.

template<class T >
 Vec3< T > Vec3< T >::operator/ ( const Vec3< T > & v ) const
inline

Definition at line 1617 of file ImathVec.h.

template<class T >
 Vec3< T > Vec3< T >::operator/ ( T a ) const
inline

Definition at line 1624 of file ImathVec.h.

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

Definition at line 1597 of file ImathVec.h.

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

Definition at line 1607 of file ImathVec.h.

template<class T >
 const Vec3< T > & Vec3< T >::operator= ( const Vec3< T > & v )
inline

Definition at line 1331 of file ImathVec.h.

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

Definition at line 1430 of file ImathVec.h.

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

Definition at line 1275 of file ImathVec.h.

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

Definition at line 1282 of file ImathVec.h.

template<class T >
 T Vec3< T >::operator^ ( const Vec3< T > & v ) const
inline

Definition at line 1474 of file ImathVec.h.

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

Definition at line 1376 of file ImathVec.h.

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

Definition at line 1386 of file ImathVec.h.

## Member Data Documentation

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

Definition at line 275 of file ImathVec.h.

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

Definition at line 275 of file ImathVec.h.

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

Definition at line 275 of file ImathVec.h.

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