Main Page   Class Hierarchy   Alphabetical List   Data Structures   File List   Data Fields   Globals   Related Pages  

vec2_c Class Reference

2d vector class

#include <vector2.h>


Public Methods

 vec2_c ()
 standard constructor

 vec2_c (const vec2_c &)
 copy constructor

 vec2_c (const vec2_t)
 vector from vec2_t

 vec2_c (float, float)
 vector from floats

virtual ~vec2_c ()
 destructor

 operator const float * ()
 floats from vector

void set (float x, float y)
 set vector coordinates

void clear ()
 clear vector

float length ()
float length_squared ()
vec2_c operator- (const vec2_t)
 subtract vectors

vec2_c operator * (float)
 add vectors

vec2_c operator * (const vec2_t)
 scale by vector

vec2_c operator= (const vec2_t)
 assignment

bool operator== (const vec2_t)
 comparison

vec2_c ma (const vec_t s, const vec2_t vb)
vec2_c ma_vec (const vec2_t s, const vec2_t vb)
 add vectors scaled

vec2_c cross (const vec2_t v)
 create cross product

float dot (const vec2_t v)
 create dot product

vec2_c rotate (const vec_t angle)
 rotate a vector

vec2_c perpendicular ()

Static Public Methods

vec2_c hermite (const vec2_t p1, const vec2_t t1, const vec2_t p2, const vec2_t t2, const float frac)
vec2_c linear (const vec2_t p1, const vec2_t p2, const float frac)

Protected Attributes

vec2_t vec
 the data


Member Function Documentation

vec2_c hermite const vec2_t    p1,
const vec2_t    t1,
const vec2_t    p2,
const vec2_t    t2,
const float    frac
[static]
 

hermite interpolation Interpolates between two vectors using hermite interpolation.

Parameters:
p1  point 1
t1  tangent 1
p2  point 2
t2  tangent 2
frac  fraction

Definition at line 228 of file m_vector2.cpp.

References set_component(), and vec2_t.

float length  
 

determine the length of a vector Returns the distance of this vector from the origin / the length of this vector.(|v|)

Definition at line 100 of file m_vector2.cpp.

References vec, VECT_X, and VECT_Y.

float length_squared  
 

determine the length of a vector Returns the distance of this vector from the origin / the length of this vector.(|v|^2)

Definition at line 107 of file m_vector2.cpp.

References vec, VECT_X, and VECT_Y.

vec2_c linear const vec2_t    p1,
const vec2_t    p2,
const float    frac
[static]
 

linear interpolation Interpolates between two vectors using linear interpolation.

Parameters:
p1  point 1
p2  point 2
frac  fraction

Definition at line 208 of file m_vector2.cpp.

References _interpolate_float_linear(), set_component(), and vec2_t.

Referenced by brushface_c::cut(), kmf_c::set_frame(), and particle_type_c::update().

vec2_c ma const vec_t    s,
const vec2_t    vb
 

add two vectors scaled Scales vb by s, adds it and returns the result

Parameters:
s  scale
v  input vector

Definition at line 159 of file m_vector2.cpp.

References vec2_c(), vec2_t, and vec_t.

vec2_c ma_vec const vec2_t    s,
const vec2_t    vb
 

Parameters:
s  scale
v  input vector

Definition at line 164 of file m_vector2.cpp.

References vec2_c(), and vec2_t.

vec2_c perpendicular  
 

get a perpendicular vector Gets a vector that is perpendicular to the input vector.

vec2_c rotate const vec_t    angle
 

Parameters:
angle  angle

Definition at line 186 of file m_vector2.cpp.

References DEG2RAD, vec2_t, and vec_t.

void set float    x,
float    y
 

Parameters:
x  coordinates

Definition at line 84 of file m_vector2.cpp.

References vec.

Referenced by clear(), particle_type_c::particle_type_c(), and vec2_c().


The documentation for this class was generated from the following files:
Generated on Wed Dec 18 15:48:49 2002 for omicron engine by doxygen1.2.18