OGRE
1.10.12
Object-Oriented Graphics Rendering Engine
|
Standard 2-dimensional vector. More...
#include <OgreVector2.h>
Public Member Functions | |
Vector2 () | |
Default constructor. More... | |
Vector2 (const Real fX, const Real fY) | |
Vector2 (const Real scaler) | |
Vector2 (const Real afCoordinate[2]) | |
Vector2 (const int afCoordinate[2]) | |
Vector2 (Real *const r) | |
Ogre::Radian | angleBetween (const Ogre::Vector2 &other) const |
Gets the angle between 2 vectors. More... | |
Ogre::Radian | angleTo (const Ogre::Vector2 &other) const |
Gets the oriented angle between 2 vectors. More... | |
Real | crossProduct (const Vector2 &rkVector) const |
Calculates the 2 dimensional cross-product of 2 vectors, which results in a single floating point value which is 2 times the area of the triangle. More... | |
Real | distance (const Vector2 &rhs) const |
Returns the distance to another vector. More... | |
Real | dotProduct (const Vector2 &vec) const |
Calculates the dot (scalar) product of this vector with another. More... | |
bool | isNaN () const |
Check whether this vector contains valid values. More... | |
bool | isZeroLength (void) const |
Returns true if this vector is zero length. More... | |
Real | length () const |
Returns the length (magnitude) of the vector. More... | |
void | makeCeil (const Vector2 &cmp) |
Sets this vector's components to the maximum of its own and the ones of the passed in vector. More... | |
void | makeFloor (const Vector2 &cmp) |
Sets this vector's components to the minimum of its own and the ones of the passed in vector. More... | |
Vector2 | midPoint (const Vector2 &vec) const |
Returns a vector at a point half way between this and the passed in vector. More... | |
Real | normalise () |
Normalises the vector. More... | |
Vector2 | normalisedCopy (void) const |
As normalise, except that this vector is unaffected and the normalised vector is returned as a copy. More... | |
bool | operator!= (const Vector2 &rkVector) const |
Vector2 | operator* (const Real fScalar) const |
Vector2 | operator* (const Vector2 &rhs) const |
Vector2 & | operator*= (const Real fScalar) |
Vector2 & | operator*= (const Vector2 &rkVector) |
Vector2 | operator+ (const Vector2 &rkVector) const |
const Vector2 & | operator+ () const |
Vector2 & | operator+= (const Vector2 &rkVector) |
Vector2 & | operator+= (const Real fScaler) |
Vector2 | operator- (const Vector2 &rkVector) const |
Vector2 | operator- () const |
Vector2 & | operator-= (const Vector2 &rkVector) |
Vector2 & | operator-= (const Real fScaler) |
Vector2 | operator/ (const Real fScalar) const |
Vector2 | operator/ (const Vector2 &rhs) const |
Vector2 & | operator/= (const Real fScalar) |
Vector2 & | operator/= (const Vector2 &rkVector) |
bool | operator< (const Vector2 &rhs) const |
Returns true if the vector's scalar components are all greater that the ones of the vector it is compared against. More... | |
Vector2 & | operator= (const Vector2 &rkVector) |
Assigns the value of the other vector. More... | |
Vector2 & | operator= (const Real fScalar) |
bool | operator== (const Vector2 &rkVector) const |
bool | operator> (const Vector2 &rhs) const |
Returns true if the vector's scalar components are all smaller that the ones of the vector it is compared against. More... | |
Real | operator[] (const size_t i) const |
Real & | operator[] (const size_t i) |
Vector2 | perpendicular (void) const |
Generates a vector perpendicular to this vector (eg an 'up' vector). More... | |
Real * | ptr () |
Pointer accessor for direct copying. More... | |
const Real * | ptr () const |
Pointer accessor for direct copying. More... | |
Vector2 | randomDeviant (Radian angle) const |
Generates a new random vector which deviates from this vector by a given angle in a random direction. More... | |
Vector2 | reflect (const Vector2 &normal) const |
Calculates a reflection vector to the plane with the given normal . More... | |
Real | squaredDistance (const Vector2 &rhs) const |
Returns the square of the distance to another vector. More... | |
Real | squaredLength () const |
Returns the square of the length(magnitude) of the vector. More... | |
void | swap (Vector2 &other) |
Exchange the contents of this vector with another. More... | |
Public Attributes | |
Real | x |
Real | y |
Static Public Attributes | |
static const Vector2 | NEGATIVE_UNIT_X |
static const Vector2 | NEGATIVE_UNIT_Y |
static const Vector2 | UNIT_SCALE |
static const Vector2 | UNIT_X |
static const Vector2 | UNIT_Y |
static const Vector2 | ZERO |
Friends | |
Vector2 | operator* (const Real fScalar, const Vector2 &rkVector) |
Vector2 | operator+ (const Vector2 &lhs, const Real rhs) |
Vector2 | operator+ (const Real lhs, const Vector2 &rhs) |
Vector2 | operator- (const Vector2 &lhs, const Real rhs) |
Vector2 | operator- (const Real lhs, const Vector2 &rhs) |
Vector2 | operator/ (const Real fScalar, const Vector2 &rkVector) |
_OgreExport friend std::ostream & | operator<< (std::ostream &o, const Vector2 &v) |
Function for writing to a stream. More... | |
Standard 2-dimensional vector.
|
inline |
Default constructor.
|
inlineexplicit |
|
inlineexplicit |
|
inlineexplicit |
|
inlineexplicit |
|
inline |
Exchange the contents of this vector with another.
References std::swap(), x, and y.
|
inline |
|
inline |
|
inline |
Pointer accessor for direct copying.
Referenced by Ogre::RTShader::UniformParameter::setGpuParameter().
|
inline |
Pointer accessor for direct copying.
|
inline |
|
inline |
|
inline |
Returns the length (magnitude) of the vector.
References Ogre::Math::Sqrt().
Referenced by angleBetween().
|
inline |
Returns the square of the length(magnitude) of the vector.
Returns the distance to another vector.
Returns the square of the distance to another vector.
Calculates the dot (scalar) product of this vector with another.
vec | Vector with which to calculate the dot product (together with this one). |
|
inline |
Normalises the vector.
References Ogre::Math::Sqrt().
Referenced by normalisedCopy().
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Generates a vector perpendicular to this vector (eg an 'up' vector).
Generates a new random vector which deviates from this vector by a given angle in a random direction.
angle | The angle at which to deviate in radians |
References Ogre::Math::Cos(), Ogre::Math::RangeRandom(), and Ogre::Math::Sin().
|
inline |
Returns true if this vector is zero length.
|
inline |
As normalise, except that this vector is unaffected and the normalised vector is returned as a copy.
References normalise().
Calculates a reflection vector to the plane with the given normal .
|
inline |
Check whether this vector contains valid values.
References Ogre::Math::isNaN().
|
inline |
Gets the angle between 2 vectors.
References Ogre::Math::ACos(), Ogre::Math::Clamp(), and length().
|
inline |
Gets the oriented angle between 2 vectors.
References Ogre::Math::TWO_PI.
|
friend |
Function for writing to a stream.
Real Ogre::Vector2::x |
Referenced by crossProduct(), dotProduct(), makeCeil(), makeFloor(), midPoint(), operator!=(), operator*(), operator*=(), operator+(), operator+=(), operator-(), operator-=(), operator/(), operator/=(), operator<(), operator=(), operator==(), operator>(), and swap().
Real Ogre::Vector2::y |
Referenced by crossProduct(), dotProduct(), makeCeil(), makeFloor(), midPoint(), operator!=(), operator*(), operator*=(), operator+(), operator+=(), operator-(), operator-=(), operator/(), operator/=(), operator<(), operator=(), operator==(), operator>(), and swap().
|
static |
Referenced by Ogre::StringConverter::parseAngle().
|
static |
|
static |
|
static |
|
static |
|
static |