OGRE
1.11.6
Object-Oriented Graphics Rendering Engine
|
Classes | |
class | Ogre::Affine3 |
Transform specialization for 3D Affine - encapsulating a 3x4 Matrix. More... | |
class | Ogre::Angle |
Wrapper class which identifies a value as the currently default angle type, as defined by Math::setAngleUnit. More... | |
class | Ogre::AxisAlignedBox |
A 3D box aligned with the x/y/z axes. More... | |
class | Ogre::Bitwise |
Class for manipulating bit patterns. More... | |
class | Ogre::ConvexBody |
Holds a solid representation of a convex body. More... | |
class | Ogre::Degree |
Wrapper class which indicates a given angle value is in Degrees. More... | |
class | Ogre::DualQuaternion |
Implementation of a dual quaternion, i.e. More... | |
class | Ogre::EdgeData |
This class contains the information required to describe the edge connectivity of a given set of vertices and indexes. More... | |
class | Ogre::EdgeListBuilder |
General utility class for building edge lists for geometry. More... | |
class | Ogre::Frustum |
A frustum represents a pyramid, capped at the near and far end which is used to represent either a visible area or a projection area. More... | |
class | Ogre::Math |
Class to provide access to common mathematical functions. More... | |
class | Ogre::Matrix3 |
A 3x3 matrix which can represent rotations around axes. More... | |
class | Ogre::Matrix4 |
Transform specialization for projective - encapsulating a 4x4 Matrix. More... | |
class | Ogre::NumericSolver |
Provides numeric solvers for Ogre. More... | |
class | Ogre::OptimisedUtil |
Utility class for provides optimised functions. More... | |
class | Ogre::Plane |
Defines a plane in 3D space. More... | |
class | Ogre::PlaneBoundedVolume |
Represents a convex volume bounded by planes. More... | |
class | Ogre::Polygon |
The class represents a polygon in 3D space. More... | |
class | Ogre::Quaternion |
Implementation of a Quaternion, i.e. More... | |
class | Ogre::Radian |
Wrapper class which indicates a given angle value is in Radians. More... | |
class | Ogre::Ray |
Representation of a ray in space, i.e. More... | |
class | Ogre::RotationalSpline |
This class interpolates orientations (rotations) along a spline using derivatives of quaternions. More... | |
class | Ogre::SimpleSpline |
A very simple spline class which implements the Catmull-Rom class of splines. More... | |
class | Ogre::Sphere |
A sphere primitive, mostly used for bounds checking. More... | |
class | Ogre::TangentSpaceCalc |
Class for calculating a tangent space basis. More... | |
class | Ogre::TransformBase |
Class encapsulating a standard 4x4 homogeneous matrix. More... | |
class | Ogre::Vector< dims, T > |
Standard N-dimensional vector. More... | |
struct | Ogre::VectorBase< dims, T > |
helper class to implement legacy API. Notably x, y, z access More... | |
struct | Ogre::VectorBase< 2, Real > |
struct | Ogre::VectorBase< 3, Real > |
struct | Ogre::VectorBase< 4, Real > |
Typedefs | |
typedef std::vector< PlaneBoundedVolume > | Ogre::PlaneBoundedVolumeList |
typedef std::vector< Plane > | Ogre::PlaneList |
typedef double | Ogre::PreciseReal |
Real type for numeric solvers. More... | |
typedef std::pair< bool, Real > | Ogre::RayTestResult |
A pair structure where the first element indicates whether an intersection occurs. More... | |
Enumerations | |
enum | Ogre::FrustumPlane { Ogre::FRUSTUM_PLANE_NEAR = 0, Ogre::FRUSTUM_PLANE_FAR = 1, Ogre::FRUSTUM_PLANE_LEFT = 2, Ogre::FRUSTUM_PLANE_RIGHT = 3, Ogre::FRUSTUM_PLANE_TOP = 4, Ogre::FRUSTUM_PLANE_BOTTOM = 5 } |
Worldspace clipping planes. More... | |
enum | Ogre::OrientationMode { Ogre::OR_DEGREE_0 = 0, Ogre::OR_DEGREE_90 = 1, Ogre::OR_DEGREE_180 = 2, Ogre::OR_DEGREE_270 = 3, Ogre::OR_PORTRAIT = OR_DEGREE_0, Ogre::OR_LANDSCAPERIGHT = OR_DEGREE_90, Ogre::OR_LANDSCAPELEFT = OR_DEGREE_270 } |
Specifies orientation mode. More... | |
enum | Ogre::ProjectionType { Ogre::PT_ORTHOGRAPHIC, Ogre::PT_PERSPECTIVE } |
Specifies perspective (realistic) or orthographic (architectural) projection. More... | |
Functions | |
Ogre::Radian::Radian (const Degree &d) | |
template<class T > | |
static OGRE_FORCE_INLINE void | Ogre::advanceRawPointer (const T *&ptr, ptrdiff_t offset) |
Advance the pointer with raw offset. More... | |
template<class T > | |
static OGRE_FORCE_INLINE void | Ogre::advanceRawPointer (T *&ptr, ptrdiff_t offset) |
Radian | Ogre::VectorBase< 2, Real >::angleTo (const Vector2 &other) const |
Gets the oriented angle between 2 vectors. More... | |
static Vector3 | Ogre::Math::calculateBasicFaceNormal (const Vector3 &v1, const Vector3 &v2, const Vector3 &v3) |
Calculate a face normal, no w-information. More... | |
static Vector3 | Ogre::Math::calculateBasicFaceNormalWithoutNormalize (const Vector3 &v1, const Vector3 &v2, const Vector3 &v3) |
Calculate a face normal without normalize, no w-information. More... | |
static Vector4 | Ogre::Math::calculateFaceNormal (const Vector3 &v1, const Vector3 &v2, const Vector3 &v3) |
Calculate a face normal, including the w component which is the offset from the origin. More... | |
static Vector4 | Ogre::Math::calculateFaceNormalWithoutNormalize (const Vector3 &v1, const Vector3 &v2, const Vector3 &v3) |
Calculate a face normal without normalize, including the w component which is the offset from the origin. More... | |
Vector3 | Ogre::VectorBase< 3, Real >::crossProduct (const Vector3 &rkVector) const |
Calculates the cross-product of 2 vectors, i.e. More... | |
bool | Ogre::VectorBase< 3, Real >::directionEquals (const Vector3 &rhs, const Radian &tolerance) const |
Returns whether this vector is within a directional tolerance of another vector. More... | |
Quaternion | Ogre::VectorBase< 3, Real >::getRotationTo (const Vector3 &dest, const Vector3 &fallbackAxis=ZERO) const |
Gets the shortest arc quaternion to rotate this vector to the destination vector. More... | |
static RayTestResult | Ogre::Math::intersects (const Ray &ray, const Plane &plane) |
Ray / plane intersection. More... | |
static RayTestResult | Ogre::Math::intersects (const Ray &ray, const Sphere &sphere, bool discardInside=true) |
Ray / sphere intersection. More... | |
static bool | Ogre::Math::intersects (const Plane &plane, const AxisAlignedBox &box) |
Plane / box intersection test. More... | |
static bool | Ogre::Math::intersects (const Sphere &sphere, const Plane &plane) |
Sphere / plane intersection test. More... | |
Vector2 | Ogre::VectorBase< 2, Real >::midPoint (const Vector2 &vec) const |
Returns a vector at a point half way between this and the passed in vector. More... | |
Vector3 | Ogre::VectorBase< 3, Real >::midPoint (const Vector3 &vec) const |
Returns a vector at a point half way between this and the passed in vector. More... | |
Ogre::Angle::operator Degree () const | |
Ogre::Angle::operator Radian () const | |
Matrix4 | Ogre::operator* (const Matrix4 &m, const Matrix4 &m2) |
Plane | Ogre::operator* (const Matrix4 &mat, const Plane &p) |
Vector3 | Ogre::operator* (const Matrix3 &m, const Vector3 &v) |
Matrix * vector [3x3 * 3x1 = 3x1]. More... | |
Affine3 | Ogre::operator* (const Affine3 &m, const Affine3 &m2) |
Vector3 | Ogre::operator* (const Matrix4 &m, const Vector3 &v) |
Vector transformation using '*'. More... | |
Vector3 | Ogre::operator* (const Affine3 &m, const Vector3 &v) |
Vector4 | Ogre::operator* (const Matrix4 &m, const Vector4 &v) |
Vector4 | Ogre::operator* (const Affine3 &m, const Vector4 &v) |
Vector4 | Ogre::operator* (const Vector4 &v, const Matrix4 &mat) |
Radian | Ogre::operator* (Real a, const Radian &b) |
Degree | Ogre::operator* (Real a, const Degree &b) |
Radian | Ogre::Radian::operator+ (const Degree &d) const |
Matrix4 | Ogre::operator+ (const Matrix4 &m, const Matrix4 &m2) |
Matrix addition. More... | |
Radian & | Ogre::Radian::operator+= (const Degree &d) |
Radian | Ogre::Radian::operator- (const Degree &d) const |
Matrix4 | Ogre::operator- (const Matrix4 &m, const Matrix4 &m2) |
Matrix subtraction. More... | |
Radian & | Ogre::Radian::operator-= (const Degree &d) |
Radian | Ogre::operator/ (Real a, const Radian &b) |
Degree | Ogre::operator/ (Real a, const Degree &b) |
Radian & | Ogre::Radian::operator= (const Degree &d) |
Vector2 | Ogre::VectorBase< 2, Real >::perpendicular (void) const |
Generates a vector perpendicular to this vector (eg an 'up' vector). More... | |
Vector3 | Ogre::VectorBase< 3, Real >::perpendicular (void) const |
Generates a vector perpendicular to this vector (eg an 'up' vector). More... | |
bool | Ogre::VectorBase< 3, Real >::positionCloses (const Vector3 &rhs, Real tolerance=1e-03f) const |
Returns whether this vector is within a positional tolerance of another vector, also take scale of the vectors into account. More... | |
const Vector3 & | Ogre::VectorBase< 3, Real >::primaryAxis () const |
Extract the primary (dominant) axis from this direction vector. More... | |
Vector2 | Ogre::VectorBase< 2, Real >::randomDeviant (Radian angle) const |
Generates a new random vector which deviates from this vector by a given angle in a random direction. More... | |
Vector3 | Ogre::VectorBase< 3, Real >::randomDeviant (const Radian &angle, const Vector3 &up=ZERO) const |
Generates a new random vector which deviates from this vector by a given angle in a random direction. More... | |
template<class T > | |
static OGRE_FORCE_INLINE const T * | Ogre::rawOffsetPointer (const T *ptr, ptrdiff_t offset) |
Returns raw offseted of the given pointer. More... | |
template<class T > | |
static OGRE_FORCE_INLINE T * | Ogre::rawOffsetPointer (T *ptr, ptrdiff_t offset) |
Matrix4 | Ogre::TransformBase::transpose () const |
Real | Ogre::Radian::valueAngleUnits () const |
Real | Ogre::Degree::valueAngleUnits () const |
Real | Ogre::Radian::valueDegrees () const |
Real | Ogre::Degree::valueRadians () const |
typedef std::pair<bool, Real> Ogre::RayTestResult |
A pair structure where the first element indicates whether an intersection occurs.
if true, the second element will indicate the distance along the ray at which it intersects. This can be converted to a point in space by calling Ray::getPoint().
typedef double Ogre::PreciseReal |
Real type for numeric solvers.
typedef std::vector<Plane> Ogre::PlaneList |
typedef std::vector<PlaneBoundedVolume> Ogre::PlaneBoundedVolumeList |
enum Ogre::ProjectionType |
enum Ogre::FrustumPlane |
References Ogre::Radian::Radian(), and Ogre::Radian::valueRadians().
Referenced by Ogre::Quaternion::normalise(), Ogre::Matrix3::operator!=(), and Ogre::Quaternion::operator=().
References Ogre::Radian::Radian(), and Ogre::Radian::valueRadians().
References Ogre::Degree::valueDegrees().
References Ogre::Degree::valueDegrees().
Matrix * vector [3x3 * 3x1 = 3x1].
Matrix addition.
Referenced by Ogre::Matrix3::operator!=(), and Ogre::Quaternion::operator=().
Matrix subtraction.
Referenced by Ogre::Matrix3::operator!=(), and Ogre::Quaternion::operator=().
Vector transformation using '*'.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
static |
Returns raw offseted of the given pointer.
Referenced by Ogre::advanceRawPointer().
|
static |
|
static |
Advance the pointer with raw offset.
References Ogre::rawOffsetPointer().
|
static |
References Ogre::rawOffsetPointer().
|
inline |
References Ogre::Degree::valueRadians().
References Ogre::Radian::Radian(), and Ogre::Degree::valueRadians().
References Ogre::Degree::valueRadians().
References Ogre::Radian::Radian(), and Ogre::Degree::valueRadians().
References Ogre::Degree::valueRadians().
|
inline |
|
inline |
References Ogre::Math::RadiansToAngleUnits().
Referenced by Ogre::StringConverter::toString(), Ogre::Degree::valueDegrees(), and Ogre::Radian::valueRadians().
|
inline |
References Ogre::Math::DegreesToRadians().
Referenced by Ogre::Radian::operator+(), Ogre::Radian::operator+=(), Ogre::Radian::operator-(), Ogre::Radian::operator-=(), and Ogre::Radian::operator=().
|
inline |
References Ogre::Math::DegreesToAngleUnits().
Referenced by Ogre::StringConverter::toString().
|
inline |
References Ogre::Math::AngleUnitsToRadians(), and Ogre::Radian::Radian().
|
inline |
References Ogre::Math::AngleUnitsToDegrees().
|
inline |
Referenced by Ogre::operator*().
|
inlinestatic |
Plane / box intersection test.
References Ogre::Plane::BOTH_SIDE, and Ogre::Plane::getSide().
|
inlinestatic |
Ray / plane intersection.
References Ogre::Ray::intersects().
Referenced by Ogre::Sphere::intersects(), Ogre::Ray::intersects(), Ogre::PlaneBoundedVolume::intersects(), and Ogre::AxisAlignedBox::intersects().
|
inlinestatic |
Ray / sphere intersection.
References Ogre::Ray::intersects().
Sphere / plane intersection test.
References Ogre::Sphere::intersects().
|
inline |
Returns a vector at a point half way between this and the passed in vector.
|
inline |
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 |
Gets the oriented angle between 2 vectors.
References Ogre::Math::TWO_PI.
|
inline |
Generates a vector perpendicular to this vector (eg an 'up' vector).
|
inline |
Generates a vector perpendicular to this vector (eg an 'up' vector).
References Ogre::Math::Abs(), and Ogre::Vector< dims, T >::normalisedCopy().
|
inline |
Calculates the cross-product of 2 vectors, i.e.
the vector that lies perpendicular to them both.
rkVector | Vector which, together with this one, will be used to calculate the cross-product. |
|
inline |
Returns a vector at a point half way between this and the passed in vector.
|
inline |
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 |
up | Any vector perpendicular to this one (which could generated by cross-product of this vector and any other non-colinear vector). If you choose not to provide this the function will derive one on it's own, however if you provide one yourself the function will be faster (this allows you to reuse up vectors if you call this method more than once) |
References Ogre::Quaternion::FromAngleAxis(), Ogre::Math::TWO_PI, and Ogre::Math::UnitRandom().
|
inline |
Gets the shortest arc quaternion to rotate this vector to the destination vector.
References Ogre::Math::Abs(), Ogre::Vector< dims, T >::dotProduct(), Ogre::Quaternion::IDENTITY, Ogre::Quaternion::normalise(), Ogre::Math::RealEqual(), Ogre::Math::Sqrt(), and Ogre::Vector< dims, T >::squaredLength().
|
inline |
Returns whether this vector is within a positional tolerance of another vector, also take scale of the vectors into account.
rhs | The vector to compare with |
tolerance | The amount (related to the scale of vectors) that distance of the vector may vary by and still be considered close |
References Ogre::Vector< dims, T >::squaredLength().
|
inline |
Returns whether this vector is within a directional tolerance of another vector.
rhs | The vector to compare with |
tolerance | The maximum angle by which the vectors may vary and still be considered equal |
References Ogre::Math::Abs(), Ogre::Math::ACos(), Ogre::Vector< dims, T >::dotProduct(), and Ogre::Radian::valueRadians().
|
inline |
Extract the primary (dominant) axis from this direction vector.
References Ogre::Math::Abs().
|
inlinestatic |
Calculate a face normal, no w-information.
References Ogre::Vector< dims, T >::normalise().
Referenced by Ogre::LodData::Triangle::computeNormal(), Ogre::LodOutsideMarker::isVertexOutside(), and Ogre::Plane::redefine().
|
inlinestatic |
Calculate a face normal, including the w component which is the offset from the origin.
References Ogre::Vector< dims, T >::dotProduct().
|
inlinestatic |
Calculate a face normal without normalize, no w-information.
|
inlinestatic |
Calculate a face normal without normalize, including the w component which is the offset from the origin.
References Ogre::Vector< dims, T >::dotProduct().