![]() |
libmoldeo (Moldeo 1.0 Core)
1.0
libmoldeo is the group of objects and functions that executes the basic operations of Moldeo 1.0 Platform.
|
#include <moMath.h>
Métodos públicos | |
moMath () | |
~moMath () | |
bool | IsPowerOfTwo (int iValue) |
unsigned int | Log2OfPowerOfTwo (unsigned int uiPowerOfTwo) |
template<> | |
const MOlong | EPSILON |
template<> | |
const MOlong | ZERO_TOLERANCE |
template<> | |
const MOlong | MAX_REAL |
template<> | |
const MOlong | PI |
template<> | |
const MOlong | TWO_PI |
template<> | |
const MOlong | HALF_PI |
template<> | |
const MOlong | INV_PI |
template<> | |
const MOlong | INV_TWO_PI |
template<> | |
const MOlong | DEG_TO_RAD |
template<> | |
const MOlong | RAD_TO_DEG |
template<> | |
const MOlong | LN_2 |
template<> | |
const MOlong | LN_10 |
template<> | |
const MOlong | INV_LN_2 |
template<> | |
const MOlong | INV_LN_10 |
template<> | |
const MOfloat | EPSILON |
template<> | |
const MOfloat | ZERO_TOLERANCE |
template<> | |
const MOfloat | MAX_REAL |
template<> | |
const MOfloat | PI |
template<> | |
const MOfloat | TWO_PI |
template<> | |
const MOfloat | HALF_PI |
template<> | |
const MOfloat | INV_PI |
template<> | |
const MOfloat | INV_TWO_PI |
template<> | |
const MOfloat | DEG_TO_RAD |
template<> | |
const MOfloat | RAD_TO_DEG |
template<> | |
const MOfloat | LN_2 |
template<> | |
const MOfloat | LN_10 |
template<> | |
const MOfloat | INV_LN_2 |
template<> | |
const MOfloat | INV_LN_10 |
template<> | |
const MOdouble | EPSILON |
template<> | |
const MOdouble | ZERO_TOLERANCE |
template<> | |
const MOdouble | MAX_REAL |
template<> | |
const MOdouble | PI |
template<> | |
const MOdouble | TWO_PI |
template<> | |
const MOdouble | HALF_PI |
template<> | |
const MOdouble | INV_PI |
template<> | |
const MOdouble | INV_TWO_PI |
template<> | |
const MOdouble | DEG_TO_RAD |
template<> | |
const MOdouble | RAD_TO_DEG |
template<> | |
const MOdouble | LN_2 |
template<> | |
const MOdouble | LN_10 |
template<> | |
const MOdouble | INV_LN_2 |
template<> | |
const MOdouble | INV_LN_10 |
template<> | |
long | FastInvSqrt (MOlong fValue) |
template<> | |
float | FastInvSqrt (MOfloat fValue) |
template<> | |
MOdouble | FastInvSqrt (MOdouble dValue) |
Métodos públicos estáticos | |
static Real | ACos (Real fValue) |
static Real | ASin (Real fValue) |
static Real | ATan (Real fValue) |
static Real | ATan2 (Real fY, Real fX) |
static Real | Ceil (Real fValue) |
static Real | Cos (Real fValue) |
static Real | Exp (Real fValue) |
static Real | FAbs (Real fValue) |
static Real | Floor (Real fValue) |
static Real | FMod (Real fX, Real fY) |
static Real | InvSqrt (Real fValue) |
static Real | Log (Real fValue) |
static Real | Log2 (Real fValue) |
static Real | Log10 (Real fValue) |
static Real | Pow (Real fBase, Real fExponent) |
static Real | Sin (Real fValue) |
static Real | Sqr (Real fValue) |
static Real | Sqrt (Real fValue) |
static Real | Tan (Real fValue) |
static int | ScaledFloatToInt (float fFloat, int iLog) |
static char | Sign (int iValue) |
static Real | Sign (Real fValue) |
static Real | UnitRandom (unsigned int uiSeed=0) |
static Real | SymmetricRandom (unsigned int uiSeed=0) |
static Real | IntervalRandom (Real fMin, Real fMax, unsigned int uiSeed=0) |
static Real | UnitRandom (Real rSeed) |
static Real | SymmetricRandom (Real rSeed) |
static Real | IntervalRandom (Real fMin, Real fMax, Real rSeed) |
static Real | FastSin0 (Real fAngle) |
static Real | FastSin1 (Real fAngle) |
static Real | FastCos0 (Real fAngle) |
static Real | FastCos1 (Real fAngle) |
static Real | FastTan0 (Real fAngle) |
static Real | FastTan1 (Real fAngle) |
static Real | FastInvSin0 (Real fValue) |
static Real | FastInvSin1 (Real fValue) |
static Real | FastInvCos0 (Real fValue) |
static Real | FastInvCos1 (Real fValue) |
static Real | FastInvTan0 (Real fValue) |
static Real | FastInvTan1 (Real fValue) |
static Real | FastInvSqrt (Real fValue) |
static Real | FastNegExp0 (Real fValue) |
static Real | FastNegExp1 (Real fValue) |
static Real | FastNegExp2 (Real fValue) |
static Real | FastNegExp3 (Real fValue) |
static Real | DegToRad (Real iDeg) |
static Real | RadToDeg (Real iRad) |
Atributos públicos estáticos | |
static const Real | EPSILON |
static const Real | ZERO_TOLERANCE |
static const Real | MAX_REAL |
static const Real | PI |
static const Real | TWO_PI |
static const Real | HALF_PI |
static const Real | INV_PI |
static const Real | INV_TWO_PI |
static const Real | DEG_TO_RAD |
static const Real | RAD_TO_DEG |
static const Real | LN_2 |
static const Real | LN_10 |
static const Real | INV_LN_2 |
static const Real | INV_LN_10 |
Clase template que implementa funciones matemáticas básicas. Si bien muchas de ellas ya están disponibles en las librerías estándard de C, las provistas aquí ofrecen algoritmos aproximados más rápidos, control de bordes, etc. Las funciones aceleradas (Fast*) implementan evaluaciones rápidas de funciones trigonométricas y sus inversas, utilizando aproximaciones polinomiales. Las mejoras en velocidad fueron medidas con un CPU AMD 2800 (2.08 GHz) utilizando Visual Studio .NET 2003 con un release build.
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
Definición en la línea 64 del archivo moMath.cpp.
Definición en la línea 79 del archivo moMath.cpp.
|
inlinestatic |
Definición en la línea 41 del archivo moMath.cpp.
Definición en la línea 56 del archivo moMath.cpp.
Definición en la línea 71 del archivo moMath.cpp.
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
Definición en la línea 87 del archivo moMath.cpp.
Definición en la línea 94 del archivo moMath.cpp.
Definición en la línea 106 del archivo moMath.cpp.
|
static |
Aproximación rápida de 1/sqrt.
fValue | argumento. |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
Definición en la línea 46 del archivo moMath.cpp.
Definición en la línea 61 del archivo moMath.cpp.
Definición en la línea 76 del archivo moMath.cpp.
|
inlinestatic |
Genera un número aleatorio en [fMin,fMax). El generador puede ser inicializado con una primera llamada pasando como parámetro uiSeed una semilla positiva.
fMin | extremo izquierdo del intervalo. |
fMax | extremo derecho del intervalo. |
uiSeed | semilla para el generador aleatorio. |
|
inlinestatic |
Genera un número aleatorio en [fMin,fMax). El generador puede ser inicializado con una primera llamada pasando como parámetro rSeed una semilla positiva.
fMin | extremo izquierdo del intervalo. |
fMax | extremo derecho del intervalo. |
rSeed | semilla para el generador aleatorio. |
Definición en la línea 54 del archivo moMath.cpp.
Definición en la línea 69 del archivo moMath.cpp.
Definición en la línea 84 del archivo moMath.cpp.
Definición en la línea 53 del archivo moMath.cpp.
Definición en la línea 68 del archivo moMath.cpp.
Definición en la línea 83 del archivo moMath.cpp.
Definición en la línea 47 del archivo moMath.cpp.
Definición en la línea 62 del archivo moMath.cpp.
Definición en la línea 77 del archivo moMath.cpp.
Definición en la línea 48 del archivo moMath.cpp.
Definición en la línea 63 del archivo moMath.cpp.
Definición en la línea 78 del archivo moMath.cpp.
|
inlinestatic |
|
inline |
Definición en la línea 52 del archivo moMath.cpp.
Definición en la línea 67 del archivo moMath.cpp.
Definición en la línea 82 del archivo moMath.cpp.
Definición en la línea 51 del archivo moMath.cpp.
Definición en la línea 66 del archivo moMath.cpp.
Definición en la línea 81 del archivo moMath.cpp.
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inline |
Definición en la línea 43 del archivo moMath.cpp.
Definición en la línea 58 del archivo moMath.cpp.
Definición en la línea 73 del archivo moMath.cpp.
Definición en la línea 59 del archivo moMath.cpp.
Definición en la línea 74 del archivo moMath.cpp.
|
inlinestatic |
Definición en la línea 65 del archivo moMath.cpp.
Definición en la línea 80 del archivo moMath.cpp.
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
Definición en la línea 60 del archivo moMath.cpp.
Definición en la línea 75 del archivo moMath.cpp.
|
inlinestatic |
Genera un número aleatorio en [0,1). El generador puede ser inicializado con una primera llamada pasando como parámetro una semilla positiva.
uiSeed | semilla para el generador aleatorio. |
Definición en la línea 380 del archivo moMath.h.
|
inlinestatic |
Definición en la línea 42 del archivo moMath.cpp.
Definición en la línea 57 del archivo moMath.cpp.
Definición en la línea 72 del archivo moMath.cpp.
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |