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

FX::FXVec3d Class Reference

Double-precision 3-element vector. More...

#include <FXVec3d.h>

List of all members.

Public Member Functions

 FXVec3d ()
 FXVec3d (const FXVec3d &v)
 FXVec3d (const FXdouble v[])
 FXVec3d (FXdouble xx, FXdouble yy, FXdouble zz=1.0)
 FXVec3d (FXColor color)
FXdouble & operator[] (FXint i)
const FXdouble & operator[] (FXint i) const
FXVec3doperator= (FXColor color)
FXVec3doperator= (const FXVec3d &v)
FXVec3doperator= (const FXdouble v[])
FXVec3doperator *= (FXdouble n)
FXVec3doperator/= (FXdouble n)
FXVec3doperator+= (const FXVec3d &v)
FXVec3doperator-= (const FXVec3d &v)
 operator FXdouble * ()
 operator const FXdouble * () const
 operator FXVec2d & ()
 operator const FXVec2d & () const
 operator FXColor () const

Public Attributes

FXdouble x
FXdouble y
FXdouble z

Friends

FXVec3d operator+ (const FXVec3d &v)
FXVec3d operator- (const FXVec3d &v)
FXVec3d operator+ (const FXVec3d &a, const FXVec3d &b)
FXVec3d operator- (const FXVec3d &a, const FXVec3d &b)
FXVec3d operator * (const FXVec3d &a, FXdouble n)
FXVec3d operator * (FXdouble n, const FXVec3d &a)
FXVec3d operator/ (const FXVec3d &a, FXdouble n)
FXVec3d operator/ (FXdouble n, const FXVec3d &a)
FXdouble operator * (const FXVec3d &a, const FXVec3d &b)
FXVec3d operator^ (const FXVec3d &a, const FXVec3d &b)
int operator! (const FXVec3d &a)
int operator== (const FXVec3d &a, const FXVec3d &b)
int operator!= (const FXVec3d &a, const FXVec3d &b)
int operator== (const FXVec3d &a, FXdouble n)
int operator!= (const FXVec3d &a, FXdouble n)
int operator== (FXdouble n, const FXVec3d &a)
int operator!= (FXdouble n, const FXVec3d &a)
int operator< (const FXVec3d &a, const FXVec3d &b)
int operator<= (const FXVec3d &a, const FXVec3d &b)
int operator> (const FXVec3d &a, const FXVec3d &b)
int operator>= (const FXVec3d &a, const FXVec3d &b)
int operator< (const FXVec3d &a, FXdouble n)
int operator<= (const FXVec3d &a, FXdouble n)
int operator> (const FXVec3d &a, FXdouble n)
int operator>= (const FXVec3d &a, FXdouble n)
int operator< (FXdouble n, const FXVec3d &a)
int operator<= (FXdouble n, const FXVec3d &a)
int operator> (FXdouble n, const FXVec3d &a)
int operator>= (FXdouble n, const FXVec3d &a)
FXdouble len2 (const FXVec3d &a)
FXdouble len (const FXVec3d &a)
FXVec3d normalize (const FXVec3d &a)
FXVec3d lo (const FXVec3d &a, const FXVec3d &b)
FXVec3d hi (const FXVec3d &a, const FXVec3d &b)
FXVec3d normal (const FXVec3d &a, const FXVec3d &b, const FXVec3d &c)
FXVec3d normal (const FXVec3d &a, const FXVec3d &b, const FXVec3d &c, const FXVec3d &d)
FXStreamoperator<< (FXStream &store, const FXVec3d &v)
FXStreamoperator>> (FXStream &store, FXVec3d &v)


Detailed Description

Double-precision 3-element vector.


Constructor & Destructor Documentation

FX::FXVec3d::FXVec3d  )  [inline]
 

Default constructor.

FX::FXVec3d::FXVec3d const FXVec3d v  )  [inline]
 

Copy constructor.

FX::FXVec3d::FXVec3d const FXdouble  v[]  )  [inline]
 

Initialize from array of doubles.

FX::FXVec3d::FXVec3d FXdouble  xx,
FXdouble  yy,
FXdouble  zz = 1.0
[inline]
 

Initialize with components.

FX::FXVec3d::FXVec3d FXColor  color  ) 
 

Initialize with color.


Member Function Documentation

FXdouble& FX::FXVec3d::operator[] FXint  i  )  [inline]
 

Return a non-const reference to the ith element.

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

Return a const reference to the ith element.

FXVec3d& FX::FXVec3d::operator= FXColor  color  ) 
 

Assign color.

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

Assignment.

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

Assignment from array of doubles.

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

Assigning operators.

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

Conversions.

FX::FXVec3d::operator FXColor  )  const
 

Convert to color.


Friends And Related Function Documentation

FXVec3d operator+ const FXVec3d v  )  [friend]
 

Unary.

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

Adding.

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

Subtracting.

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

Scaling.

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

Dot product.

FXVec3d operator^ const FXVec3d a,
const FXVec3d b
[friend]
 

Cross product.

int operator! const FXVec3d a  )  [friend]
 

Test if zero.

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

Equality tests.

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

Inequality tests.

FXdouble len2 const FXVec3d a  )  [friend]
 

Length and square of length.

FXVec3d normalize const FXVec3d a  )  [friend]
 

Normalize vector.

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

Lowest or highest components.

FXVec3d normal const FXVec3d a,
const FXVec3d b,
const FXVec3d c
[friend]
 

Compute normal from three points a,b,c.

FXVec3d normal const FXVec3d a,
const FXVec3d b,
const FXVec3d c,
const FXVec3d d
[friend]
 

Compute approximate normal from four points a,b,c,d.

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

Save vector to a stream.

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

Load vector from a stream.

Copyright © 1997-2005 Jeroen van der Zijp