Declaration and implementation of several math-functions, typedefs of some Ogre::Math classes to the orxonox namespace.
More...
|
| template<typename T > |
| constexpr T | orxonox::clamp (T x, T min, T max) |
| | Keeps a value between a lower and an upper limit. More...
|
| |
| template<typename T > |
| constexpr T | orxonox::cube (T x) |
| | Returns the cubed value (x^3). More...
|
| |
| int | orxonox::determineMap3DZOrder (const orxonox::Vector3 &myposition, const orxonox::Vector3 &mydirection, const orxonox::Vector3 &myorthonormal, const orxonox::Vector3 &otherposition, const float detectionlimit) |
| | A value between 0 and 10, in order how other object is in front or in back. More...
|
| |
| orxonox::Vector2 | orxonox::get2DViewCoordinates (const orxonox::Vector3 &myposition, const orxonox::Vector3 &mydirection, const orxonox::Vector3 &myorthonormal, const orxonox::Vector3 &otherposition) |
| | Gets the 2D viewing direction (up/down, left/right) to the position of the other object, multiplied with the viewing distance to the object (0° = 0, 180° = 1). More...
|
| |
| orxonox::Vector2 | orxonox::get2DViewdirection (const orxonox::Vector3 &myposition, const orxonox::Vector3 &mydirection, const orxonox::Vector3 &myorthonormal, const orxonox::Vector3 &otherposition) |
| | Gets the 2D viewing direction (up/down, left/right) to the position of the other object. More...
|
| |
| orxonox::Vector2 | orxonox::get3DProjection (const orxonox::Vector3 &myposition, const orxonox::Vector3 &mydirection, const orxonox::Vector3 &myorthonormal, const orxonox::Vector3 &otherposition, const float mapangle, const float detectionlimit) |
| | Gets the 2D project vector for the 3D Radar . More...
|
| |
| float | orxonox::getAngle (const orxonox::Vector3 &myposition, const orxonox::Vector3 &mydirection, const orxonox::Vector3 &otherposition) |
| | Gets the angle between my viewing direction and the direction to the position of the other object. More...
|
| |
| orxonox::Vector3 | orxonox::getPredictedPosition (const orxonox::Vector3 &myposition, float projectilespeed, const orxonox::Vector3 &targetposition, const orxonox::Vector3 &targetvelocity) |
| | Returns the predicted position I have to aim at, if I want to hit a moving target with a moving projectile. More...
|
| |
| orxonox::Vector3 | orxonox::getTransformedVector (const orxonox::Vector3 &totransform, const orxonox::Vector3 &newx, const orxonox::Vector3 &newy, const orxonox::Vector3 &newz) |
| | Gets the new vector after a coordinate transformation. More...
|
| |
| unsigned long | orxonox::getUniqueNumber () |
| | Returns a unique number. More...
|
| |
| template<typename T > |
| T | orxonox::interpolate (float time, const T &start, const T &end) |
| | Interpolates between two values for a time between 0 and 1. More...
|
| |
| template<typename T > |
| T | orxonox::interpolateSmooth (float time, const T &start, const T &end) |
| | Interpolates smoothly between two values for a time between 0 and 1. More...
|
| |
| bool | orxonox::isObjectHigherThanShipOnMap (const orxonox::Vector3 &myposition, const orxonox::Vector3 &mydirection, const orxonox::Vector3 &myorthonormal, const orxonox::Vector3 &otherposition, const float mapangle) |
| | Gets if a object is over the x/z - plain on map. More...
|
| |
| template<typename T > |
| int | orxonox::mod (T x, int max) |
| | The modulo operation, enhanced to work properly with negative values. More...
|
| |
| std::ostream & | orxonox::operator<< (std::ostream &out, const orxonox::Radian &radian) |
| | Function for writing a Radian to a stream. More...
|
| |
| std::ostream & | orxonox::operator<< (std::ostream &out, const orxonox::Degree °ree) |
| | Function for writing a Degree to a stream. More...
|
| |
| std::istream & | orxonox::operator>> (std::istream &in, orxonox::Radian &radian) |
| | Function for reading a Radian from a stream. More...
|
| |
| std::istream & | orxonox::operator>> (std::istream &in, orxonox::Degree °ree) |
| | Function for reading a Degree from a stream. More...
|
| |
| float | orxonox::rnd (float min, float max) |
| | Returns a random number between min and almost max: min <= rnd < max. More...
|
| |
| float | orxonox::rnd () |
| | Returns a random number between 0 and almost 1: 0 <= rnd < 1. More...
|
| |
| float | orxonox::rnd (float max) |
| | Returns a random number between 0 and almost max: 0 <= rnd < max. More...
|
| |
| void | orxonox::rndseed (unsigned int seed) |
| | Seeds the random number generator used for the functions below. More...
|
| |
| float | orxonox::rndsgn () |
| | Returns randomly 1 or -1 with equal probability. More...
|
| |
| template<typename T > |
| constexpr T | orxonox::sgn (T x) |
| | Returns the sign of the given value. More...
|
| |
| template<typename T > |
| constexpr T | orxonox::square (T x) |
| | Returns the squared value (x^2). More...
|
| |
| template<typename T > |
| std::enable_if<!std::is_enum< T >::value, T >::type | orxonox::zeroise () |
| | Returns a "zero" value for the given type. More...
|
| |
| template<typename T > |
| std::enable_if< std::is_enum< T >::value, T >::type | orxonox::zeroise () |
| | Implementation for enum classes: uses the underlying type to create a zero value. More...
|
| |
| template<> |
| bool | orxonox::zeroise< bool > () |
| |
| template<> |
| char | orxonox::zeroise< char > () |
| |
| template<> |
| double | orxonox::zeroise< double > () |
| |
| template<> |
| float | orxonox::zeroise< float > () |
| |
| template<> |
| int | orxonox::zeroise< int > () |
| |
| template<> |
| long | orxonox::zeroise< long > () |
| |
| template<> |
| long double | orxonox::zeroise< long double > () |
| |
| template<> |
| long long | orxonox::zeroise< long long > () |
| |
| template<> |
| orxonox::ColourValue | orxonox::zeroise< orxonox::ColourValue > () |
| |
| template<> |
| orxonox::Degree | orxonox::zeroise< orxonox::Degree > () |
| |
| template<> |
| orxonox::Quaternion | orxonox::zeroise< orxonox::Quaternion > () |
| |
| template<> |
| orxonox::Radian | orxonox::zeroise< orxonox::Radian > () |
| |
| template<> |
| orxonox::Vector2 | orxonox::zeroise< orxonox::Vector2 > () |
| |
| template<> |
| orxonox::Vector3 | orxonox::zeroise< orxonox::Vector3 > () |
| |
| template<> |
| orxonox::Vector4 | orxonox::zeroise< orxonox::Vector4 > () |
| |
| template<> |
| short | orxonox::zeroise< short > () |
| |
| template<> |
| std::string | orxonox::zeroise< std::string > () |
| |
| template<> |
| unsigned char | orxonox::zeroise< unsigned char > () |
| |
| template<> |
| unsigned int | orxonox::zeroise< unsigned int > () |
| |
| template<> |
| unsigned long | orxonox::zeroise< unsigned long > () |
| |
| template<> |
| unsigned long long | orxonox::zeroise< unsigned long long > () |
| |
| template<> |
| unsigned short | orxonox::zeroise< unsigned short > () |
| |
| template<> |
| void * | orxonox::zeroise< void * > () |
| |
Declaration and implementation of several math-functions, typedefs of some Ogre::Math classes to the orxonox namespace.