Public Member Functions  
vector3 (const Ogre::Vector3 &vec)  
operator Ogre::Vector3 () const  
vector3 (const real fX, const real fY, const real fZ)  
vector3 (const real &scaler)  
vector3 (const vector3int32 &cast)  
bool  operator<= (const vector3 &rhs) const 
bool  operator>= (const vector3 &rhs) const 
vector3  getFloor (void) const 
vector3  getAbs (void) const 
void  swap (vector3 &other) 
real  operator[] (const size_t i) const 
real &  operator[] (const size_t i) 
real *  ptr () 
Pointer accessor for direct copying.  
const real *  ptr () const 
Pointer accessor for direct copying.  
vector3 &  operator= (const real fScaler) 
bool  operator== (const vector3 &rkVector) const 
bool  operator!= (const vector3 &rkVector) const 
vector3  operator+ (const vector3 &rkVector) const 
vector3  operator (const vector3 &rkVector) const 
vector3  operator* (const real fScalar) const 
vector3  operator* (const vector3 &rhs) const 
vector3  operator/ (const real fScalar) const 
vector3  operator/ (const vector3 &rhs) const 
const vector3 &  operator+ () const 
vector3  operator () const 
vector3 &  operator+= (const vector3 &rkVector) 
vector3 &  operator+= (const real fScalar) 
vector3 &  operator= (const vector3 &rkVector) 
vector3 &  operator= (const real fScalar) 
vector3 &  operator*= (const real fScalar) 
vector3 &  operator*= (const vector3 &rkVector) 
vector3 &  operator/= (const real fScalar) 
vector3 &  operator/= (const vector3 &rkVector) 
real  length () const 
real  squaredLength () const 
real  distance (const vector3 &rhs) const 
real  squaredDistance (const vector3 &rhs) const 
real  dotProduct (const vector3 &vec) const 
real  absDotProduct (const vector3 &vec) const 
real  normalise () 
vector3  crossProduct (const vector3 &rkVector) const 
vector3  midPoint (const vector3 &vec) const 
bool  operator< (const vector3 &rhs) const 
bool  operator> (const vector3 &rhs) const 
void  makeFloor (const vector3 &cmp) 
void  makeCeil (const vector3 &cmp) 
vector3  perpendicular (void) const 
real  angleBetween (const vector3 &dest) const 
quaternion  getRotationTo (const vector3 &dest, const vector3 &fallbackAxis=vector3::ZERO) const 
bool  isZeroLength (void) const 
vector3  getNormalise () const 
vector3  normalisedCopy (void) const 
vector3  reflect (const vector3 &normal) const 
bool  positionCloses (const vector3 &rhs, real tolerance=1e03f) const 
vector3  primaryAxis () const 
Extract the primary (dominant) axis from this direction vector.  
Public Attributes  
real  x 
real  y 
real  z 
Static Public Attributes  
static const vector3  ZERO = vector3(0.) 
static const vector3  UNIT_X = vector3(1., 0., 0.) 
static const vector3  UNIT_Y = vector3(0., 1., 0.) 
static const vector3  UNIT_Z = vector3(0., 0., 1.) 
static const vector3  NEGATIVE_UNIT_X = vector3(1., 0., 0.) 
static const vector3  NEGATIVE_UNIT_Y = vector3(0., 1., 0.) 
static const vector3  NEGATIVE_UNIT_Z = vector3(0., 0., 1.) 
static const vector3  UNIT_SCALE = vector3(1., 1., 1.) 
Friends  
vector3  operator* (const real fScalar, const vector3 &rkVector) 
vector3  operator/ (const real fScalar, const vector3 &rkVector) 
vector3  operator+ (const vector3 &lhs, const real rhs) 
vector3  operator+ (const real lhs, const vector3 &rhs) 
vector3  operator (const vector3 &lhs, const real rhs) 
vector3  operator (const real lhs, const vector3 &rhs) 

inline 
Calculates the absolute dot (scalar) product of this vector with another.
vec  Vector with which to calculate the absolute dot product (together with this one). 

inline 
Gets the angle between 2 vectors.
Calculates the crossproduct of 2 vectors, i.e. the vector that lies perpendicular to them both.
rkVector  Vector which, together with this one, will be used to calculate the crossproduct. 

inline 
Returns the distance to another vector.

inline 
Calculates the dot (scalar) product of this vector with another.
vec  Vector with which to calculate the dot product (together with this one). 

inline 
As normalise, except that this vector is unaffected and the normalised vector is returned as a copy.
quaternion vector3::getRotationTo  (  const vector3 &  dest, 
const vector3 &  fallbackAxis = vector3::ZERO 

)  const 
Gets the shortest arc quaternion to rotate this vector to the destination vector.

inline 
Returns true if this vector is zero length.

inline 
Returns the length (magnitude) of the vector.

inline 
Sets this vector's components to the maximum of its own and the ones of the passed in vector.

inline 
Sets this vector's components to the minimum of its own and the ones of the passed in vector.
Returns a vector at a point half way between this and the passed in vector.

inline 
Normalises the vector.

inline 
As normalise, except that this vector is unaffected and the normalised vector is returned as a copy.

inline 
Returns true if the vector's scalar components are all greater that the ones of the vector it is compared against.

inline 

inline 
Returns true if the vector's scalar components are all smaller that the ones of the vector it is compared against.

inline 
Generates a vector perpendicular to this vector (eg an 'up' vector).

inline 
Returns whether this vector is within a positional tolerance of another vector, also take scale of the vectors into account.
rhs  The vector to compare with 
tolerance  The amount (related to the scale of vectors) that distance of the vector may vary by and still be considered close 
Calculates a reflection vector to the plane with the given normal .

inline 
Returns the square of the distance to another vector.

inline 
Returns the square of the length(magnitude) of the vector.

inline 
Exchange the contents of this vector with another.