Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

Moteur3D::Vector2 Class Reference

The Vector2 class represents a 2-dimensions vector. More...

#include <Vector2.h>

List of all members.

Public Member Functions

 Vector2 ()
 Default constructor. Initialises data to 0.0f.
 Vector2 (const float vx, const float vy)
 Constructor that builds the vector data from floats given through arguments.
 Vector2 (const Vector2 &v)
 Copy Constructor.
float Magnitude ()
 Returns the magnitude of a vector. Primarily used for normalizing vectors.
float Magnitude2 ()
 Returns the squared magnitude of a vector.
bool IsZero ()
 Is the vector equal to (0, 0) ?
void Normalize ()
 Normalises a given vector. In clear words, changes the vector so that its "length" is 1.
void Rotate (float angle)
 rotates a vector around the X axis by a given angle, in radians
float Distance (const Vector2 &v)
 returns the distance between two Vector2's used as vertices
float VectorAngle (const Vector2 &v)
 returns the angle between two Vector2's used as vertices
std::string ToString ()
 Returns a string that represents the actual object.
Vector2operator= (const Vector2 &v)
 Affectation operator.
float & operator[] (unsigned int i)
 Indexing operator.
const float & operator[] (unsigned int i) const
 Indexing operator.
Vector2operator+= (const Vector2 &v)
 Adds a Vector2 to this one.
Vector2operator-= (const Vector2 &v)
 Subtracts a Vector2 from this one.
Vector2operator *= (float f)
 Multiplies this Vector2 by a float.
Vector2operator/= (float f)
 Divides the Vector2 by a float.

Static Public Member Functions

static float DotProduct (const Vector2 &v1, const Vector2 &v2)
 Returns the dot product of 2 vectors. v1.v2 == |v1|*|v2|*cos(v1,v2). So this gives the cosine of the angle between 2 vectors.
static Vector2 Average (const Vector2 &v1, const Vector2 &v2)
 averages 2 vectors

Public Attributes

float x
 Accessors.
float y

Friends

bool operator== (const Vector2 &v1, const Vector2 &v2)
 Comparison Operator.
bool operator!= (const Vector2 &v1, const Vector2 &v2)
 Difference Operator.
Vector2 operator- (const Vector2 &v)
 Negates this vector.
Vector2 operator+ (const Vector2 &v1, const Vector2 &v2)
 Adds 2 Vector2.
Vector2 operator- (const Vector2 &v1, const Vector2 &v2)
 Subtracts one Vector2 from another.
Vector2 operator * (const Vector2 &v, float f)
 Multiplies a Vector2 by a float.
Vector2 operator * (float f, const Vector2 &v)
 Multiplies a Vector2 by a float.
Vector2 operator/ (const Vector2 &v, float f)
 Divides a Vector2 by a float.


Detailed Description

The Vector2 class represents a 2-dimensions vector.


Constructor & Destructor Documentation

Moteur3D::Vector2::Vector2  )  [inline]
 

Default constructor. Initialises data to 0.0f.

Moteur3D::Vector2::Vector2 const float  vx,
const float  vy
[inline]
 

Constructor that builds the vector data from floats given through arguments.

Moteur3D::Vector2::Vector2 const Vector2 v  )  [inline]
 

Copy Constructor.


Member Function Documentation

static Vector2 Moteur3D::Vector2::Average const Vector2 v1,
const Vector2 v2
[inline, static]
 

averages 2 vectors

float Moteur3D::Vector2::Distance const Vector2 v  )  [inline]
 

returns the distance between two Vector2's used as vertices

static float Moteur3D::Vector2::DotProduct const Vector2 v1,
const Vector2 v2
[static]
 

Returns the dot product of 2 vectors. v1.v2 == |v1|*|v2|*cos(v1,v2). So this gives the cosine of the angle between 2 vectors.

bool Moteur3D::Vector2::IsZero  )  [inline]
 

Is the vector equal to (0, 0) ?

float Moteur3D::Vector2::Magnitude  ) 
 

Returns the magnitude of a vector. Primarily used for normalizing vectors.

float Moteur3D::Vector2::Magnitude2  ) 
 

Returns the squared magnitude of a vector.

void Moteur3D::Vector2::Normalize  ) 
 

Normalises a given vector. In clear words, changes the vector so that its "length" is 1.

Vector2& Moteur3D::Vector2::operator *= float  f  )  [inline]
 

Multiplies this Vector2 by a float.

Vector2& Moteur3D::Vector2::operator+= const Vector2 v  )  [inline]
 

Adds a Vector2 to this one.

Vector2& Moteur3D::Vector2::operator-= const Vector2 v  )  [inline]
 

Subtracts a Vector2 from this one.

Vector2& Moteur3D::Vector2::operator/= float  f  )  [inline]
 

Divides the Vector2 by a float.

Vector2& Moteur3D::Vector2::operator= const Vector2 v  )  [inline]
 

Affectation operator.

const float& Moteur3D::Vector2::operator[] unsigned int  i  )  const [inline]
 

Indexing operator.

float& Moteur3D::Vector2::operator[] unsigned int  i  )  [inline]
 

Indexing operator.

void Moteur3D::Vector2::Rotate float  angle  ) 
 

rotates a vector around the X axis by a given angle, in radians

std::string Moteur3D::Vector2::ToString  ) 
 

Returns a string that represents the actual object.

Returns:
see brief :)

float Moteur3D::Vector2::VectorAngle const Vector2 v  ) 
 

returns the angle between two Vector2's used as vertices


Friends And Related Function Documentation

Vector2 operator * float  f,
const Vector2 v
[friend]
 

Multiplies a Vector2 by a float.

Vector2 operator * const Vector2 v,
float  f
[friend]
 

Multiplies a Vector2 by a float.

bool operator!= const Vector2 v1,
const Vector2 v2
[friend]
 

Difference Operator.

Vector2 operator+ const Vector2 v1,
const Vector2 v2
[friend]
 

Adds 2 Vector2.

Vector2 operator- const Vector2 v1,
const Vector2 v2
[friend]
 

Subtracts one Vector2 from another.

Vector2 operator- const Vector2 v  )  [friend]
 

Negates this vector.

Vector2 operator/ const Vector2 v,
float  f
[friend]
 

Divides a Vector2 by a float.

bool operator== const Vector2 v1,
const Vector2 v2
[friend]
 

Comparison Operator.


Member Data Documentation

float Moteur3D::Vector2::x
 

Accessors.

float Moteur3D::Vector2::y
 


The documentation for this class was generated from the following file:
Generated on Sat Oct 15 15:05:51 2005 for Moteur3D by  doxygen 1.4.4