Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members

FX::FXVec4d Class Reference

Double-precision 4-element vector. More...

#include <FXVec4d.h>

Inheritance diagram for FX::FXVec4d:

FX::FXQuatd List of all members.

Public Member Functions

 FXVec4d ()
 FXVec4d (const FXVec4d &v)
 FXVec4d (const FXVec3d &v, FXdouble ww=1.0)
 FXVec4d (const FXdouble v[])
 FXVec4d (FXdouble xx, FXdouble yy, FXdouble zz, FXdouble ww=1.0)
 FXVec4d (FXColor color)
FXdouble & operator[] (FXint i)
const FXdouble & operator[] (FXint i) const
FXVec4d & operator= (FXColor color)
FXVec4d & operator= (const FXVec3d &v)
FXVec4d & operator= (const FXVec4d &v)
FXVec4d & operator= (const FXdouble v[])
FXVec4d & set (const FXVec4d &v)
FXVec4d & set (const FXdouble v[])
FXVec4d & set (FXdouble xx, FXdouble yy, FXdouble zz, FXdouble ww)
FXVec4d & operator *= (FXdouble n)
FXVec4d & operator/= (FXdouble n)
FXVec4d & operator+= (const FXVec4d &v)
FXVec4d & operator-= (const FXVec4d &v)
 operator FXdouble * ()
 operator const FXdouble * () const
 operator FXVec3d & ()
 operator const FXVec3d & () const
 operator FXColor () const
FXVec4d operator+ () const
FXVec4d operator- () const
FXVec4d operator+ (const FXVec4d &v) const
FXVec4d operator- (const FXVec4d &v) const
FXVec4d operator * (const FXMat4d &m) const
FXdouble operator * (const FXVec4d &v) const
bool operator! () const
bool operator== (const FXVec4d &v) const
bool operator!= (const FXVec4d &v) const
bool operator< (const FXVec4d &v) const
bool operator<= (const FXVec4d &v) const
bool operator> (const FXVec4d &v) const
bool operator>= (const FXVec4d &v) const
FXdouble length2 () const
FXdouble length () const
FXVec4d & clamp (FXdouble lo, FXdouble hi)
FXdouble distance (const FXVec3d &p) const
bool crosses (const FXVec3d &a, const FXVec3d &b) const

Public Attributes

FXdouble x
FXdouble y
FXdouble z
FXdouble w

Friends

FXVec4d operator * (const FXVec4d &a, FXdouble n)
FXVec4d operator * (FXdouble n, const FXVec4d &a)
FXVec4d operator/ (const FXVec4d &a, FXdouble n)
FXVec4d operator/ (FXdouble n, const FXVec4d &a)
bool operator== (const FXVec4d &a, FXdouble n)
bool operator!= (const FXVec4d &a, FXdouble n)
bool operator== (FXdouble n, const FXVec4d &a)
bool operator!= (FXdouble n, const FXVec4d &a)
bool operator< (const FXVec4d &a, FXdouble n)
bool operator<= (const FXVec4d &a, FXdouble n)
bool operator> (const FXVec4d &a, FXdouble n)
bool operator>= (const FXVec4d &a, FXdouble n)
bool operator< (FXdouble n, const FXVec4d &a)
bool operator<= (FXdouble n, const FXVec4d &a)
bool operator> (FXdouble n, const FXVec4d &a)
bool operator>= (FXdouble n, const FXVec4d &a)
FXVec4d lo (const FXVec4d &a, const FXVec4d &b)
FXVec4d hi (const FXVec4d &a, const FXVec4d &b)
FXVec4d plane (const FXVec4d &vec)
FXVec4d plane (const FXVec3d &vec, FXdouble dist)
FXVec4d plane (const FXVec3d &vec, const FXVec3d &p)
FXVec4d plane (const FXVec3d &a, const FXVec3d &b, const FXVec3d &c)
FXVec4d normalize (const FXVec4d &v)
FXStream & operator<< (FXStream &store, const FXVec4d &v)
FXStream & operator>> (FXStream &store, FXVec4d &v)

Detailed Description

Double-precision 4-element vector.


Constructor & Destructor Documentation

FX::FXVec4d::FXVec4d (   )  [inline]
 

Default constructor.

FX::FXVec4d::FXVec4d (  const FXVec4d &  v  )  [inline]
 

Initialize from another vector.

FX::FXVec4d::FXVec4d (  const FXVec3d &  v,
FXdouble  ww = 1.0
)  [inline]
 

Construct with 3-vector and optional scalar.

FX::FXVec4d::FXVec4d (  const FXdouble  v[]  )  [inline]
 

Initialize from array of doubles.

FX::FXVec4d::FXVec4d (  FXdouble  xx,
FXdouble  yy,
FXdouble  zz,
FXdouble  ww = 1.0
)  [inline]
 

Initialize with components.

FX::FXVec4d::FXVec4d (  FXColor  color  ) 
 

Initialize with color.


Member Function Documentation

FXdouble& FX::FXVec4d::operator[] (  FXint  i  )  [inline]
 

Return a non-const reference to the ith element.

const FXdouble& FX::FXVec4d::operator[] (  FXint  i  )  const [inline]
 

Return a const reference to the ith element.

FXVec4d& FX::FXVec4d::operator= (  FXColor  color  ) 
 

Assign color.

FXVec4d& FX::FXVec4d::operator= (  const FXVec3d &  v  )  [inline]
 

Assignment.

FXVec4d& FX::FXVec4d::operator= (  const FXVec4d &  v  )  [inline]
 

FXVec4d& FX::FXVec4d::operator= (  const FXdouble  v[]  )  [inline]
 

Assignment from array of doubles.

FXVec4d& FX::FXVec4d::set (  const FXVec4d &  v  )  [inline]
 

Set value from another vector.

FXVec4d& FX::FXVec4d::set (  const FXdouble  v[]  )  [inline]
 

Set value from array of floats.

FXVec4d& FX::FXVec4d::set (  FXdouble  xx,
FXdouble  yy,
FXdouble  zz,
FXdouble  ww
)  [inline]
 

Set value from components.

FXVec4d& FX::FXVec4d::operator *= (  FXdouble  n  )  [inline]
 

Assigning operators.

FXVec4d& FX::FXVec4d::operator/= (  FXdouble  n  )  [inline]
 

FXVec4d& FX::FXVec4d::operator+= (  const FXVec4d &  v  )  [inline]
 

FXVec4d& FX::FXVec4d::operator-= (  const FXVec4d &  v  )  [inline]
 

FX::FXVec4d::operator FXdouble * (   )  [inline]
 

Conversion.

FX::FXVec4d::operator const FXdouble * (   )  const [inline]
 

FX::FXVec4d::operator FXVec3d & (   )  [inline]
 

FX::FXVec4d::operator const FXVec3d & (   )  const [inline]
 

FX::FXVec4d::operator FXColor (   )  const
 

Convert to color.

FXVec4d FX::FXVec4d::operator+ (   )  const [inline]
 

Unary.

FXVec4d FX::FXVec4d::operator- (   )  const [inline]
 

FXVec4d FX::FXVec4d::operator+ (  const FXVec4d &  v  )  const [inline]
 

Vector and vector.

FXVec4d FX::FXVec4d::operator- (  const FXVec4d &  v  )  const [inline]
 

FXVec4d FX::FXVec4d::operator * (  const FXMat4d &  m  )  const
 

Vector and matrix.

FXdouble FX::FXVec4d::operator * (  const FXVec4d &  v  )  const [inline]
 

Dot product.

bool FX::FXVec4d::operator! (   )  const [inline]
 

Test if zero.

bool FX::FXVec4d::operator== (  const FXVec4d &  v  )  const [inline]
 

Equality tests.

bool FX::FXVec4d::operator!= (  const FXVec4d &  v  )  const [inline]
 

bool FX::FXVec4d::operator< (  const FXVec4d &  v  )  const [inline]
 

Inequality tests.

bool FX::FXVec4d::operator<= (  const FXVec4d &  v  )  const [inline]
 

bool FX::FXVec4d::operator> (  const FXVec4d &  v  )  const [inline]
 

bool FX::FXVec4d::operator>= (  const FXVec4d &  v  )  const [inline]
 

FXdouble FX::FXVec4d::length2 (   )  const [inline]
 

Length and square of length.

FXdouble FX::FXVec4d::length (   )  const [inline]
 

FXVec4d& FX::FXVec4d::clamp (  FXdouble  lo,
FXdouble  hi
)  [inline]
 

Clamp values of vector between limits.

FXdouble FX::FXVec4d::distance (  const FXVec3d &  p  )  const
 

Signed distance normalized plane and point.

bool FX::FXVec4d::crosses (  const FXVec3d &  a,
const FXVec3d &  b
)  const
 

Return true if edge a-b crosses plane.


Friends And Related Function Documentation

FXVec4d operator * (  const FXVec4d &  a,
FXdouble  n
)  [friend]
 

Scaling.

FXVec4d operator * (  FXdouble  n,
const FXVec4d &  a
)  [friend]
 

FXVec4d operator/ (  const FXVec4d &  a,
FXdouble  n
)  [friend]
 

FXVec4d operator/ (  FXdouble  n,
const FXVec4d &  a
)  [friend]
 

bool operator== (  const FXVec4d &  a,
FXdouble  n
)  [friend]
 

bool operator!= (  const FXVec4d &  a,
FXdouble  n
)  [friend]
 

bool operator== (  FXdouble  n,
const FXVec4d &  a
)  [friend]
 

bool operator!= (  FXdouble  n,
const FXVec4d &  a
)  [friend]
 

bool operator< (  const FXVec4d &  a,
FXdouble  n
)  [friend]
 

bool operator<= (  const FXVec4d &  a,
FXdouble  n
)  [friend]
 

bool operator> (  const FXVec4d &  a,
FXdouble  n
)  [friend]
 

bool operator>= (  const FXVec4d &  a,
FXdouble  n
)  [friend]
 

bool operator< (  FXdouble  n,
const FXVec4d &  a
)  [friend]
 

bool operator<= (  FXdouble  n,
const FXVec4d &  a
)  [friend]
 

bool operator> (  FXdouble  n,
const FXVec4d &  a
)  [friend]
 

bool operator>= (  FXdouble  n,
const FXVec4d &  a
)  [friend]
 

FXVec4d lo (  const FXVec4d &  a,
const FXVec4d &  b
)  [friend]
 

Lowest or highest components.

FXVec4d hi (  const FXVec4d &  a,
const FXVec4d &  b
)  [friend]
 

FXVec4d plane (  const FXVec4d &  vec  )  [friend]
 

Compute normalized plane equation ax+by+cz+d=0.

FXVec4d plane (  const FXVec3d &  vec,
FXdouble  dist
)  [friend]
 

FXVec4d plane (  const FXVec3d &  vec,
const FXVec3d &  p
)  [friend]
 

FXVec4d plane (  const FXVec3d &  a,
const FXVec3d &  b,
const FXVec3d &  c
)  [friend]
 

FXVec4d normalize (  const FXVec4d &  v  )  [friend]
 

Normalize vector.

FXStream& operator<< (  FXStream &  store,
const FXVec4d &  v
)  [friend]
 

Save to a stream.

FXStream& operator>> (  FXStream &  store,
FXVec4d &  v
)  [friend]
 

Load from a stream.


Member Data Documentation

FXdouble FX::FXVec4d::x
 

FXdouble FX::FXVec4d::y
 

FXdouble FX::FXVec4d::z
 

FXdouble FX::FXVec4d::w
 

Copyright © 1997-2005 Jeroen van der Zijp