vmml::Vector4< T > Class Template Reference

List of all members.

Public Types

typedef T * iterator
typedef const T * const_iterator

Public Member Functions

 Vector4 (const T aa)
 Vector4 (const T xx, const T yy, const T zz, const T ww)
 Vector4 (const float *aa)
 Vector4 (const double *aa)
 Vector4 (const Vector3< T > &xxyyzz, const T aa)
template<typename U >
 Vector4 (const Vector4< U > &a)
void set (T xx, T yy, T zz, T ww)
void set (const float *aa)
void set (const double *aa)
void set (const Vector3< T > &xyz_, const T &w_)
bool set (const std::string &values, char delimiter= ' ')
bool set (const std::vector< std::string > &values)
const Vector4operator= (T aa)
const Vector4operator= (const Vector3< T > &aa)
const Vector4operator= (const Vector4 &aa)
template<typename U >
const Vector4operator= (const Vector4< U > &aa)
T & operator[] (size_t position)
const T & operator[] (size_t position) const
length () const
lengthSquared () const
normalize ()
normalise ()
Vector4 getNormalized () const
Vector3< T > getNormalizedVector3 () const
Vector4 operator+ (const T aa) const
Vector4 operator- (const T aa) const
Vector4 operator* (const T aa) const
Vector4 operator/ (T aa) const
Vector4 operator- () const
const Vector4operator+= (T aa)
const Vector4operator-= (T aa)
const Vector4operator*= (T aa)
const Vector4operator/= (T aa)
Vector4 operator+ (const Vector4 &aa) const
Vector4 operator- (const Vector4 &aa) const
Vector4 operator* (const Vector4 &aa) const
Vector4 operator/ (const Vector4 &aa) const
const Vector4operator+= (const Vector4 &aa)
const Vector4operator-= (const Vector4 &aa)
const Vector4operator*= (const Vector4 &aa)
const Vector4operator/= (const Vector4 &aa)
dot (const Vector4 &aa) const
bool operator== (const Vector4 &aa) const
bool operator!= (const Vector4 &aa) const
bool isAkin (const Vector4 &a, const T &delta=std::numeric_limits< T >::epsilon()) const
void clamp (T lower, T upper)
void invert ()
getMinComponent ()
getMaxComponent ()
void randomize ()
Vector3< T > projectPointOntoSphere (const Vector3< T > &point) const
getDistanceToSphere (const Vector3< T > &point) const
Vector3< T > & getSphereCenter ()
const Vector3< T > & getSphereCenter () const
Vector3< T > projectPointOntoPlane (const Vector3< T > &point) const
getDistanceToPlane (const Vector3< T > &point) const
void normalizePlane ()
bool getString (std::string &result, const std::string &delimiter=" ") const
size_t smaller (const Vector4 &a) const
size_t smaller (const Vector4 &a, const size_t axis) const
size_t greater (const Vector4 &a) const
size_t greater (const Vector4 &a, const size_t axis) const
iterator begin ()
const_iterator begin () const
iterator end ()
const_iterator end () const
template<>
float length () const
template<>
void normalizePlane ()
template<>
Vector4< float > operator/ (float aa) const
template<>
Vector4< double > operator/ (double aa) const
template<>
const Vector4< float > & operator/= (float aa)
template<>
const Vector4< double > & operator/= (double aa)
template<>
bool isAkin (const Vector4 &rhs, const float &delta) const

Public Attributes

union {
   struct {
      T   x
      T   y
      T   z
      T   w
   } 
   struct {
      T   r
      T   g
      T   b
      T   a
   } 
   struct {
      struct {
         T   x
         T   y
         T   z
      }   normal
      T   distance
   } 
   struct {
      struct {
         T   x
         T   y
         T   z
      }   center
      T   radius
   } 
   struct {
      T   lowerLeftX
      T   lowerLeftY
      T   width
      T   height
   } 
   T   xyzw [4]
   T   rgba [4]
   T   array [4]
}; 

Static Public Attributes

static const Vector4 ZERO

Friends

std::ostream & operator<< (std::ostream &os, const Vector4 &v)

template<typename T>
class vmml::Vector4< T >


Member Function Documentation

template<typename T >
Vector3< T > vmml::Vector4< T >::getNormalizedVector3 (  )  const [inline]

Return normalized Vector3, using only xyz coordinates


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

Generated by  doxygen 1.6.2