vec Struct Reference

#include <geom.h>

List of all members.

Public Member Functions

 vec ()
 vec (float a, float b, float c)
 vec (float *v)
float & operator[] (int i)
float operator[] (int i) const
bool iszero () const
bool operator== (const vec &o) const
bool operator!= (const vec &o) const
vec operator- () const
vec & mul (float f)
vec & div (float f)
vec & add (float f)
vec & sub (float f)
vec & add (const vec &o)
vec & sub (const vec &o)
float squaredlen () const
float dot (const vec &o) const
float magnitude () const
vec & normalize ()
float dist (const vec &e) const
float dist (const vec &e, vec &t) const
float distxy (const vec &e) const
float magnitudexy () const
bool reject (const vec &o, float max) const
vec & cross (const vec &a, const vec &b)
void rotate_around_z (float angle)
void rotate_around_x (float angle)
void rotate_around_y (float angle)
vec & rotate (float angle, const vec &d)
vec & rotate (float c, float s, const vec &d)
void orthogonal (const vec &d)

Public Attributes

union {
   struct {
      float   x
      float   y
      float   z
   } 
   float   v [3]
   int   i [3]
}; 


Constructor & Destructor Documentation

vec::vec (  )  [inline]

vec::vec ( float  a,
float  b,
float  c 
) [inline]

vec::vec ( float *  v  )  [inline]


Member Function Documentation

vec& vec::add ( const vec &  o  )  [inline]

vec& vec::add ( float  f  )  [inline]

vec& vec::cross ( const vec &  a,
const vec &  b 
) [inline]

float vec::dist ( const vec &  e,
vec &  t 
) const [inline]

float vec::dist ( const vec &  e  )  const [inline]

float vec::distxy ( const vec &  e  )  const [inline]

vec& vec::div ( float  f  )  [inline]

float vec::dot ( const vec &  o  )  const [inline]

bool vec::iszero (  )  const [inline]

float vec::magnitude (  )  const [inline]

float vec::magnitudexy (  )  const [inline]

vec& vec::mul ( float  f  )  [inline]

vec& vec::normalize (  )  [inline]

bool vec::operator!= ( const vec &  o  )  const [inline]

vec vec::operator- (  )  const [inline]

bool vec::operator== ( const vec &  o  )  const [inline]

float vec::operator[] ( int  i  )  const [inline]

float& vec::operator[] ( int  i  )  [inline]

void vec::orthogonal ( const vec &  d  )  [inline]

bool vec::reject ( const vec &  o,
float  max 
) const [inline]

vec& vec::rotate ( float  c,
float  s,
const vec &  d 
) [inline]

vec& vec::rotate ( float  angle,
const vec &  d 
) [inline]

void vec::rotate_around_x ( float  angle  )  [inline]

void vec::rotate_around_y ( float  angle  )  [inline]

void vec::rotate_around_z ( float  angle  )  [inline]

float vec::squaredlen (  )  const [inline]

vec& vec::sub ( const vec &  o  )  [inline]

vec& vec::sub ( float  f  )  [inline]


Member Data Documentation

union { ... }

int vec::i[3]

float vec::v[3]

float vec::x

float vec::y

float vec::z


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

Generated on Mon Dec 8 21:41:37 2008 for AssaultCube by  doxygen 1.5.7.1