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
FXVec4doperator= (FXColor color)
FXVec4doperator= (const FXVec3d &v)
FXVec4doperator= (const FXVec4d &v)
FXVec4doperator= (const FXdouble v[])
FXVec4doperator *= (FXdouble n)
FXVec4doperator/= (FXdouble n)
FXVec4doperator+= (const FXVec4d &v)
FXVec4doperator-= (const FXVec4d &v)
 operator FXdouble * ()
 operator const FXdouble * () const
 operator FXVec3d & ()
 operator const FXVec3d & () const
 operator FXColor () const

Public Attributes

FXdouble x
FXdouble y
FXdouble z
FXdouble w

Friends

FXVec4d operator+ (const FXVec4d &v)
FXVec4d operator- (const FXVec4d &v)
FXVec4d operator+ (const FXVec4d &a, const FXVec4d &b)
FXVec4d operator- (const FXVec4d &a, const FXVec4d &b)
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)
FXdouble operator * (const FXVec4d &a, const FXVec4d &b)
int operator! (const FXVec4d &a)
int operator== (const FXVec4d &a, const FXVec4d &b)
int operator!= (const FXVec4d &a, const FXVec4d &b)
int operator== (const FXVec4d &a, FXdouble n)
int operator!= (const FXVec4d &a, FXdouble n)
int operator== (FXdouble n, const FXVec4d &a)
int operator!= (FXdouble n, const FXVec4d &a)
int operator< (const FXVec4d &a, const FXVec4d &b)
int operator<= (const FXVec4d &a, const FXVec4d &b)
int operator> (const FXVec4d &a, const FXVec4d &b)
int operator>= (const FXVec4d &a, const FXVec4d &b)
int operator< (const FXVec4d &a, FXdouble n)
int operator<= (const FXVec4d &a, FXdouble n)
int operator> (const FXVec4d &a, FXdouble n)
int operator>= (const FXVec4d &a, FXdouble n)
int operator< (FXdouble n, const FXVec4d &a)
int operator<= (FXdouble n, const FXVec4d &a)
int operator> (FXdouble n, const FXVec4d &a)
int operator>= (FXdouble n, const FXVec4d &a)
FXdouble len2 (const FXVec4d &a)
FXdouble len (const FXVec4d &a)
FXVec4d normalize (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)
FXdouble distance (const FXVec4d &plane, const FXVec3d &p)
FXbool crosses (const FXVec4d &plane, const FXVec3d &a, const FXVec3d &b)
FXStreamoperator<< (FXStream &store, const FXVec4d &v)
FXStreamoperator>> (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]
 

Copy constructor.

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 FXdouble  v[]  )  [inline]
 

Assignment from array of doubles.

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

Assigning operators.

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

Conversion.

FX::FXVec4d::operator FXColor  )  const
 

Convert to color.


Friends And Related Function Documentation

FXVec4d operator+ const FXVec4d v  )  [friend]
 

Unary.

FXVec4d operator+ const FXVec4d a,
const FXVec4d b
[friend]
 

Adding.

FXVec4d operator- const FXVec4d a,
const FXVec4d b
[friend]
 

Subtracting.

FXVec4d operator * const FXVec4d a,
FXdouble  n
[friend]
 

Scaling.

FXdouble operator * const FXVec4d a,
const FXVec4d b
[friend]
 

Dot product.

int operator! const FXVec4d a  )  [friend]
 

Test if zero.

int operator== const FXVec4d a,
const FXVec4d b
[friend]
 

Equality tests.

int operator< const FXVec4d a,
const FXVec4d b
[friend]
 

Inequality tests.

FXdouble len2 const FXVec4d a  )  [friend]
 

Length and square of length.

FXVec4d normalize const FXVec4d a  )  [friend]
 

Normalize vector.

FXVec4d lo const FXVec4d a,
const FXVec4d b
[friend]
 

Lowest or highest components.

FXVec4d plane const FXVec4d vec  )  [friend]
 

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

FXdouble distance const FXVec4d plane,
const FXVec3d p
[friend]
 

Signed distance normalized plane and point.

FXbool crosses const FXVec4d plane,
const FXVec3d a,
const FXVec3d b
[friend]
 

Return true if edge a-b crosses plane.

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

Save to a stream.

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

Load from a stream.

Copyright © 1997-2005 Jeroen van der Zijp