|
Public Member Functions |
| Vector3 () |
| Default constructor. Initialises data to 0.0f.
|
| Vector3 (const float vx, const float vy, const float vz) |
| Constructor that builds the vector data from floats given through arguments.
|
| Vector3 (const Vector3 &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, 0) ?
|
void | Normalize () |
| Normalises a given vector. In clear words, changes the vector so that its "length" is 1.
|
Vector3 | RotateX (float angle) |
| rotates a vector around the X axis by a given angle, in radians
|
Vector3 | RotateY (float angle) |
| rotates a vector around the Y axis by a given angle, in radians
|
Vector3 | RotateZ (float angle) |
| rotates a vector around the Z axis by a given angle, in radians
|
Vector3 | Rotate (float angle, const Vector3 &axe, const Vector3 &v) |
float | Distance (const Vector3 &v) |
| returns the distance between two Vector3's used as vertices
|
std::string | ToString () |
| Returns a string that represents the actual object.
|
Vector3 & | operator= (const Vector3 &v) |
| Affectation operator.
|
float & | operator[] (unsigned int i) |
| Indexing operator.
|
const float & | operator[] (unsigned int i) const |
| Indexing operator.
|
Vector3 & | operator+= (const Vector3 &v) |
| Adds a Vector3 to this one.
|
Vector3 & | operator-= (const Vector3 &v) |
| Subtracts a Vector3 from this one.
|
Vector3 & | operator *= (float f) |
| Multiplies this Vector3 by a float.
|
Vector3 & | operator/= (float f) |
| Divides the Vector3 by a float.
|
Static Public Member Functions |
static Vector3 | MakeNormal (const Vector3 &v1, const Vector3 &v2, const Vector3 &v3) |
| creates a normal vector from 3 vertices. This normal is created from vectors (v1,v2) and (v1,v3)
|
static float | DotProduct (const Vector3 &v1, const Vector3 &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 Vector3 | CrossProduct (const Vector3 &v1, const Vector3 &v2) |
| Returns the cross product of 2 vectors. The cross product of two vectors v1 and v2 is the vector that is perpendicular to v1 and v2. The result is NOT normalized.
|
static Vector3 | Average (const Vector3 &v1, const Vector3 &v2) |
| averages 2 vectors
|
Public Attributes |
float | x |
| Accessors.
|
float | y |
float | z |
Friends |
bool | operator== (const Vector3 &v1, const Vector3 &v2) |
| Comparison Operator.
|
bool | operator!= (const Vector3 &v1, const Vector3 &v2) |
| Difference Operator.
|
Vector3 | operator- (const Vector3 &v) |
| Negates this vector.
|
Vector3 | operator+ (const Vector3 &v1, const Vector3 &v2) |
| Adds 2 Vector3.
|
Vector3 | operator- (const Vector3 &v1, const Vector3 &v2) |
| Subtracts one Vector2 from another.
|
Vector3 | operator * (const Vector3 &v, float f) |
| Multiplies a Vector3 by a float.
|
Vector3 | operator * (float f, const Vector3 &v) |
| Multiplies a Vector3 by a float.
|
Vector3 | operator/ (const Vector3 &v, float f) |
| Divides a Vector3 by a float.
|