#include <mvVec3.h>
Public Member Functions | |
void | AcrossB (const mvVec3 &a, const mvVec3 &b) |
in place cross product | |
mvFloat | cosineMeasure (const mvVec3 &v) const |
cosine measure - angle between two vectors | |
mvVec3 | cross (const mvVec3 &rhs) const |
cross product | |
mvFloat | dot (const mvVec3 &v) const |
dot product | |
const mvFloat * | getPointer () const |
returns XYZ array pointer | |
mvFloat | getX () const |
returns X | |
mvFloat | getY () const |
returns Y | |
mvFloat | getZ () const |
returns Z | |
mvFloat | length (void) const |
length of vector | |
mvFloat | lengthSquared (void) const |
length squared | |
mvVec3 (const mvVec3 &rhs) | |
constructor | |
mvVec3 (const mvFloat *array) | |
constructor | |
mvVec3 (const mvFloat &X, const mvFloat &Y, const mvFloat &Z) | |
constructor | |
mvVec3 (void) | |
constructor | |
mvVec3 | normalize (void) const |
normalize: returns normalized version | |
mvFloat | normalizedDotProduct (const mvVec3 &v) const |
normalized dot product - | |
mvVec3 | operator * (const mvFloat s) const |
vector times scalar product (scale length of vector times argument) | |
const mvVec3 & | operator *= (const mvFloat &s) |
*= (scaled by constant then assigned) | |
bool | operator!= (const mvVec3 &v) const |
vector inequality | |
mvVec3 | operator+ (const mvVec3 &v) const |
vector addition through + operator | |
const mvVec3 & | operator+= (const mvFloat &s) |
+= adds constant mvFloat to all members | |
const mvVec3 & | operator+= (const mvVec3 &v) |
+= (add togwther and assignment) | |
mvVec3 | operator- (void) const |
unary minus or negates vector (-v) | |
mvVec3 | operator- (const mvVec3 &v) const |
vector subtraction through - operator | |
const mvVec3 & | operator-= (const mvFloat &s) |
-= subtracts constant mvFloat to all members | |
const mvVec3 & | operator-= (const mvVec3 &v) |
-= (calculate differemce them assigmed) | |
mvVec3 | operator/ (const mvFloat s) const |
vector divided by a scalar (divide length of vector by argument) | |
const mvVec3 & | operator/= (const mvFloat &s) |
/= divides constant float to all members | |
const mvVec3 & | operator= (const mvVec3 &v) |
assignment | |
bool | operator== (const mvVec3 &v) const |
vector equality | |
const mvVec3 & | set (const mvFloat _x, const mvFloat _y, const mvFloat _z) |
set XYZ coordinates to given three mvFloats | |
void | setX (const mvFloat &x) |
set x component of vector | |
void | setY (const mvFloat &y) |
set y component of vector | |
void | setZ (const mvFloat &z) |
set z component of vector | |
void | toZeroVec () |
reset vector |
this class contains an array of mvFloat (or floating variables) which are used to store details such as position, velocity and force in 3D space.
mvVec3::mvVec3 | ( | void | ) |
constructor
default value of vector is (0,0,0)
constructor
[in] | X | x value of vector |
[in] | Y | y value of vector |
[in] | Z | z value of vector |
mvVec3::mvVec3 | ( | const mvFloat * | array | ) | [explicit] |
constructor
[in] | array | pointer to a mvFloat array of length 3 (or MV_VEC3_NO_OF_COMPONENTS) |
mvVec3::mvVec3 | ( | const mvVec3 & | rhs | ) |
in place cross product
[in] | a | Vector on Left hand side of equation |
[in] | b | Vector on Right hand side of equation |
cosine measure - angle between two vectors
[in] | v | Vector to multiplied with current vector |
dot product
[in] | v | Vector to multiplied with current vector |
Returns the total of the dot product of the two vectors a & v as a mvFloat. Dot product is calculated by result = a.x * v.x + a.y * v.y + a.z * v.z Original vectors v & a is unchanged by dot function.
const mvFloat * mvVec3::getPointer | ( | ) | const |
returns XYZ array pointer
mvFloat mvVec3::length | ( | void | ) | const |
length of vector
mvFloat mvVec3::lengthSquared | ( | void | ) | const |
length squared
mvVec3 mvVec3::normalize | ( | void | ) | const |
normalize: returns normalized version
normalized dot product -
[in] | v | Vector to multiplied with current vector |
Formula: if a = this vector, b = vector v n.d.p = (a . b )\ (|a||b|) Original vectors v & a is unchanged by dot function.
*= (scaled by constant then assigned)
[in] | s | Constant mvFloat value |
bool mvVec3::operator!= | ( | const mvVec3 & | v | ) | const |
vector inequality
[in] | v | Vector to be compared |
vector addition through + operator
[in] | v | Vector on right hand side of + operator |
+= adds constant mvFloat to all members
[in] | s | Constant mvFloat value |
+= (add togwther and assignment)
[in] | v | Vector to be added |
mvVec3 mvVec3::operator- | ( | void | ) | const |
unary minus or negates vector (-v)
vector subtraction through - operator
[in] | v | Vector on right hand side of - operator |
-= subtracts constant mvFloat to all members
[in] | s | Constant mvFloat value |
-= (calculate differemce them assigmed)
[in] | v | Subtracting Vector |
vector divided by a scalar (divide length of vector by argument)
[in] | s | Scalar value as a mvFloat value. |
/= divides constant float to all members
[in] | s | Constant mvFloat value |
assignment
[in] | rhs | Vector of right side of assignment (=) |
bool mvVec3::operator== | ( | const mvVec3 & | v | ) | const |
vector equality
[in] | v | Vector to be compared |
set XYZ coordinates to given three mvFloats
[in] | _x | X component parameter |
[in] | _y | Y component parameter |
[in] | _z | Z component parameter |
void mvVec3::setX | ( | const mvFloat & | x | ) |
set x component of vector
[in] | x | X component value |
void mvVec3::setY | ( | const mvFloat & | y | ) |
set y component of vector
[in] | y | Y component value |
void mvVec3::setZ | ( | const mvFloat & | z | ) |
set z component of vector
[in] | z | Z component value |
void mvVec3::toZeroVec | ( | ) |
reset vector
set all members to zero