#include <OgreVector3.h>
Public Member Functions | |
Vector3 () | |
Vector3 (const Real fX, const Real fY, const Real fZ) | |
Vector3 (const Real afCoordinate[3]) | |
Vector3 (const int afCoordinate[3]) | |
Vector3 (Real *const r) | |
Vector3 (const Real scaler) | |
Vector3 (const Vector3 &rkVector) | |
Real | operator[] (const size_t i) const |
Real & | operator[] (const size_t i) |
Vector3 & | operator= (const Vector3 &rkVector) |
Assigns the value of the other vector. | |
Vector3 & | operator= (const Real fScaler) |
bool | operator== (const Vector3 &rkVector) const |
bool | operator!= (const Vector3 &rkVector) const |
Vector3 | operator+ (const Vector3 &rkVector) const |
Vector3 | operator- (const Vector3 &rkVector) const |
Vector3 | operator * (const Real fScalar) const |
Vector3 | operator * (const Vector3 &rhs) const |
Vector3 | operator/ (const Real fScalar) const |
Vector3 | operator/ (const Vector3 &rhs) const |
const Vector3 & | operator+ () const |
Vector3 | operator- () const |
Vector3 & | operator+= (const Vector3 &rkVector) |
Vector3 & | operator+= (const Real fScalar) |
Vector3 & | operator-= (const Vector3 &rkVector) |
Vector3 & | operator-= (const Real fScalar) |
Vector3 & | operator *= (const Real fScalar) |
Vector3 & | operator *= (const Vector3 &rkVector) |
Vector3 & | operator/= (const Real fScalar) |
Vector3 & | operator/= (const Vector3 &rkVector) |
Real | length () const |
Returns the length (magnitude) of the vector. | |
Real | squaredLength () const |
Returns the square of the length(magnitude) of the vector. | |
Real | dotProduct (const Vector3 &vec) const |
Calculates the dot (scalar) product of this vector with another. | |
Real | normalise () |
Normalises the vector. | |
Vector3 | crossProduct (const Vector3 &rkVector) const |
Calculates the cross-product of 2 vectors, i.e. | |
Vector3 | midPoint (const Vector3 &vec) const |
Returns a vector at a point half way between this and the passed in vector. | |
bool | operator< (const Vector3 &rhs) const |
Returns true if the vector's scalar components are all greater that the ones of the vector it is compared against. | |
bool | operator> (const Vector3 &rhs) const |
Returns true if the vector's scalar components are all smaller that the ones of the vector it is compared against. | |
void | makeFloor (const Vector3 &cmp) |
Sets this vector's components to the minimum of its own and the ones of the passed in vector. | |
void | makeCeil (const Vector3 &cmp) |
Sets this vector's components to the maximum of its own and the ones of the passed in vector. | |
Vector3 | perpendicular (void) const |
Generates a vector perpendicular to this vector (eg an 'up' vector). | |
Vector3 | randomDeviant (const Radian &angle, const Vector3 &up=Vector3::ZERO) const |
Generates a new random vector which deviates from this vector by a given angle in a random direction. | |
Quaternion | getRotationTo (const Vector3 &dest, const Vector3 &fallbackAxis=Vector3::ZERO) const |
Gets the shortest arc quaternion to rotate this vector to the destination vector. | |
bool | isZeroLength (void) const |
Returns true if this vector is zero length. | |
Vector3 | normalisedCopy (void) const |
As normalise, except that this vector is unaffected and the normalised vector is returned as a copy. | |
Vector3 | reflect (const Vector3 &normal) const |
Calculates a reflection vector to the plane with the given normal . | |
bool | positionEquals (const Vector3 &rhs, Real tolerance=1e-03) const |
Returns whether this vector is within a positional tolerance of another vector. | |
bool | directionEquals (const Vector3 &rhs, const Radian &tolerance) const |
Returns whether this vector is within a directional tolerance of another vector. | |
Static Public Attributes | |
static const Vector3 | ZERO |
static const Vector3 | UNIT_X |
static const Vector3 | UNIT_Y |
static const Vector3 | UNIT_Z |
static const Vector3 | NEGATIVE_UNIT_X |
static const Vector3 | NEGATIVE_UNIT_Y |
static const Vector3 | NEGATIVE_UNIT_Z |
static const Vector3 | UNIT_SCALE |
Friends | |
Vector3 | operator * (const Real fScalar, const Vector3 &rkVector) |
Vector3 | operator/ (const Real fScalar, const Vector3 &rkVector) |
Vector3 | operator+ (const Vector3 &lhs, const Real rhs) |
Vector3 | operator+ (const Real lhs, const Vector3 &rhs) |
Vector3 | operator- (const Vector3 &lhs, const Real rhs) |
Vector3 | operator- (const Real lhs, const Vector3 &rhs) |
_OgreExport friend std::ostream & | operator<< (std::ostream &o, const Vector3 &v) |
Function for writing to a stream. |
Definition at line 42 of file OgreVector3.h.
|
Definition at line 53 of file OgreVector3.h. |
|
Definition at line 57 of file OgreVector3.h. |
|
Definition at line 62 of file OgreVector3.h. |
|
Definition at line 69 of file OgreVector3.h. |
|
Definition at line 76 of file OgreVector3.h. |
|
Definition at line 81 of file OgreVector3.h. |
|
Definition at line 89 of file OgreVector3.h. |
|
Calculates the cross-product of 2 vectors, i.e. the vector that lies perpendicular to them both.
Definition at line 426 of file OgreVector3.h. Referenced by getRotationTo(). |
|
Returns whether this vector is within a directional tolerance of another vector.
Definition at line 672 of file OgreVector3.h. References Ogre::Math::Abs(), Ogre::Math::ACos(), and Ogre::Radian::valueRadians(). |
|
Calculates the dot (scalar) product of this vector with another.
Definition at line 368 of file OgreVector3.h. Referenced by getRotationTo(), and Ogre::Matrix4::operator *(). |
|
Gets the shortest arc quaternion to rotate this vector to the destination vector.
Definition at line 578 of file OgreVector3.h. References crossProduct(), dotProduct(), Ogre::Quaternion::FromAngleAxis(), Ogre::Quaternion::IDENTITY, isZeroLength(), Ogre::Quaternion::normalise(), normalise(), Ogre::Math::PI, Ogre::Math::Sqrt(), UNIT_X, UNIT_Y, Ogre::Quaternion::w, x, Ogre::Quaternion::x, y, Ogre::Quaternion::y, z, Ogre::Quaternion::z, and ZERO. |
|
Returns true if this vector is zero length.
Definition at line 629 of file OgreVector3.h. Referenced by getRotationTo(). |
|
Returns the length (magnitude) of the vector.
Definition at line 334 of file OgreVector3.h. References Ogre::Math::Sqrt(). |
|
Sets this vector's components to the maximum of its own and the ones of the passed in vector.
Definition at line 486 of file OgreVector3.h. Referenced by Ogre::AxisAlignedBox::merge(). |
|
Sets this vector's components to the minimum of its own and the ones of the passed in vector.
Definition at line 472 of file OgreVector3.h. Referenced by Ogre::AxisAlignedBox::merge(). |
|
Returns a vector at a point half way between this and the passed in vector.
Definition at line 437 of file OgreVector3.h. |
|
Normalises the vector.
Definition at line 382 of file OgreVector3.h. References Ogre::Math::Sqrt(). Referenced by getRotationTo(), and normalisedCopy(). |
|
As normalise, except that this vector is unaffected and the normalised vector is returned as a copy.
Definition at line 638 of file OgreVector3.h. References normalise(). |
|
Definition at line 165 of file OgreVector3.h. |
|
Definition at line 157 of file OgreVector3.h. |
|
Definition at line 295 of file OgreVector3.h. |
|
Definition at line 287 of file OgreVector3.h. |
|
Definition at line 135 of file OgreVector3.h. |
|
Definition at line 193 of file OgreVector3.h. |
|
Definition at line 141 of file OgreVector3.h. |
|
Definition at line 262 of file OgreVector3.h. |
|
Definition at line 253 of file OgreVector3.h. |
|
Definition at line 198 of file OgreVector3.h. |
|
Definition at line 149 of file OgreVector3.h. |
|
Definition at line 279 of file OgreVector3.h. |
|
Definition at line 270 of file OgreVector3.h. |
|
Definition at line 185 of file OgreVector3.h. |
|
Definition at line 173 of file OgreVector3.h. |
|
Definition at line 317 of file OgreVector3.h. |
|
Definition at line 304 of file OgreVector3.h. |
|
Returns true if the vector's scalar components are all greater that the ones of the vector it is compared against.
Definition at line 448 of file OgreVector3.h. |
|
Definition at line 121 of file OgreVector3.h. |
|
Assigns the value of the other vector.
Definition at line 112 of file OgreVector3.h. |
|
Definition at line 130 of file OgreVector3.h. |
|
Returns true if the vector's scalar components are all smaller that the ones of the vector it is compared against.
Definition at line 458 of file OgreVector3.h. |
|
Definition at line 101 of file OgreVector3.h. |
|
Definition at line 94 of file OgreVector3.h. |
|
Generates a vector perpendicular to this vector (eg an 'up' vector).
Definition at line 500 of file OgreVector3.h. References squaredLength(), UNIT_X, and UNIT_Y. |
|
Returns whether this vector is within a positional tolerance of another vector.
Definition at line 659 of file OgreVector3.h. References Ogre::Math::RealEqual(). |
|
Generates a new random vector which deviates from this vector by a given angle in a random direction.
Definition at line 536 of file OgreVector3.h. References Ogre::Quaternion::FromAngleAxis(), Ogre::Math::TWO_PI, Ogre::Math::UnitRandom(), and ZERO. |
|
Calculates a reflection vector to the plane with the given normal .
Definition at line 648 of file OgreVector3.h. |
|
Returns the square of the length(magnitude) of the vector.
Definition at line 349 of file OgreVector3.h. Referenced by perpendicular(). |
|
Definition at line 204 of file OgreVector3.h. |
|
Definition at line 228 of file OgreVector3.h. |
|
Definition at line 220 of file OgreVector3.h. |
|
Definition at line 244 of file OgreVector3.h. |
|
Definition at line 236 of file OgreVector3.h. |
|
Definition at line 212 of file OgreVector3.h. |
|
Function for writing to a stream.
Definition at line 695 of file OgreVector3.h. |
|
Definition at line 687 of file OgreVector3.h. |
|
Definition at line 688 of file OgreVector3.h. |
|
Definition at line 689 of file OgreVector3.h. |
|
Definition at line 690 of file OgreVector3.h. Referenced by Ogre::TerrainOptions::TerrainOptions(). |
|
Definition at line 684 of file OgreVector3.h. Referenced by getRotationTo(), and perpendicular(). |
|
Definition at line 685 of file OgreVector3.h. Referenced by getRotationTo(), and perpendicular(). |
|
Definition at line 686 of file OgreVector3.h. |
|
Definition at line 49 of file OgreVector3.h. Referenced by Ogre::AnimableValue::setAsBaseValue(). |
|
|
|
|
Definition at line 683 of file OgreVector3.h. Referenced by getRotationTo(), Ogre::BorderRenderable::getWorldPosition(), and randomDeviant(). |
Copyright © 2000-2005 by The OGRE Team
This work is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.
Last modified Sun Nov 12 10:55:17 2006