Namespaces | |
namespace | Linear |
Gathers all linear-based computations, main geometric. | |
namespace | Random |
Gathers all stochastic mechanisms. | |
Classes | |
class | MathsException |
Exception for Maths-related issues. More... | |
class | IntToIntFunctor |
A functor dealing with integers (one integer as parameter, returns integer). More... | |
Typedefs | |
typedef Ceylan::Sint32 | IntegerData |
Generic signed integer data. | |
typedef Ceylan::Float32 | Real |
Real is the floating-point coordinate used in Ceylan's linear services. | |
typedef Ceylan::Float32 | AngleInDegrees |
Angles, expressed in degrees. | |
typedef Ceylan::Float32 | AngleInRadians |
Angles, expressed in radians. | |
typedef Ceylan::Uint8 | Percentage |
Integer percentage values, which should range from 0 to 100, both included. | |
typedef Ceylan::Uint32 | Hertz |
Unit for frequencies (Hz). | |
typedef Ceylan::Float32 | Ratio |
Ratio unit, should store floating point values between 0 and 1. | |
Functions | |
CEYLAN_DLL bool | IsNull (Ceylan::Float32 x) |
Tells whether x is null as regard to floating point numbers: | x | < EpsilonFloat32. | |
CEYLAN_DLL bool | IsNull (Ceylan::Float32 x, Ceylan::Float32 epsilon) |
Tells whether x is null as regard to floating point numbers: | x | < epsilon. | |
CEYLAN_DLL bool | IsNull (Ceylan::Float64 x) |
Tells whether x is null as regard to floating point numbers: | x | < EpsilonFloat64. | |
CEYLAN_DLL bool | IsNull (Ceylan::Float64 x, Ceylan::Float64 epsilon) |
Tells whether x is null as regard to floating point numbers: | x | < epsilon. | |
CEYLAN_DLL bool | IsNull (Ceylan::LongFloat x) |
Tells whether x is null as regard to floating point numbers: | x | < EpsilonLongFloat. | |
CEYLAN_DLL bool | IsNull (Ceylan::LongFloat x, Ceylan::LongFloat epsilon) |
Tells whether x is null as regard to floating point numbers: | x | < epsilon. | |
CEYLAN_DLL bool | AreEqual (Ceylan::Float32 x, Ceylan::Float32 y) |
Tells whether x and y are 'equal' as floating point numbers: | x - y | < EpsilonFloat32. | |
CEYLAN_DLL bool | AreEqual (Ceylan::Float32 x, Ceylan::Float32 y, Ceylan::Float32 epsilon) |
Tells whether x and y are 'equal' as floating point numbers: | x - y | < epsilon. | |
CEYLAN_DLL bool | AreEqual (Ceylan::Float64 x, Ceylan::Float64 y) |
Tells whether x and y are 'equal' as floating point numbers: | x - y | < EpsilonFloat64. | |
CEYLAN_DLL bool | AreEqual (Ceylan::Float64 x, Ceylan::Float64 y, Ceylan::Float64 epsilon) |
Tells whether x and y are 'equal' as floating point numbers: | x - y | < epsilon. | |
CEYLAN_DLL bool | AreExactlyEqual (Ceylan::Float64 x, Ceylan::Float64 y) |
Tells whether x and y are exactly 'equal': x == y, with no compile warning about the fact that comparing floating point values with == operator is most of the time absurd, which is true indeed. | |
CEYLAN_DLL bool | AreEqual (Ceylan::LongFloat x, Ceylan::LongFloat y) |
Tells whether x and y are 'equal' as floating point numbers: | x - y | < EpsilonLongFloat. | |
CEYLAN_DLL bool | AreEqual (Ceylan::LongFloat x, Ceylan::LongFloat y, Ceylan::LongFloat epsilon) |
Tells whether x and y are 'equal' as floating point numbers: | x - y | < epsilon. | |
template<typename T > | |
bool | AreRelativelyEqual (T x, T y) |
Relative comparison. | |
template<typename T > | |
bool | AreRelativelyEqual (T x, T y, Ceylan::LongFloat epsilon) |
Relative comparison with user-supplied epsilon. | |
CEYLAN_DLL Ceylan::Float32 | Floor (Ceylan::Float32 x) |
CEYLAN_DLL Ceylan::Float64 | Floor (Ceylan::Float64 x) |
CEYLAN_DLL Ceylan::LongFloat | Floor (Ceylan::LongFloat x) |
CEYLAN_DLL Ceylan::Float32 | Ceil (Ceylan::Float32 x) |
CEYLAN_DLL Ceylan::Float64 | Ceil (Ceylan::Float64 x) |
CEYLAN_DLL Ceylan::LongFloat | Ceil (Ceylan::LongFloat x) |
CEYLAN_DLL Ceylan::Float32 | Round (Ceylan::Float32 x) |
CEYLAN_DLL Ceylan::Float32 | Round (Ceylan::Float32 x, Ceylan::Uint8 precision) |
CEYLAN_DLL Ceylan::Float64 | Round (Ceylan::Float64 x) |
CEYLAN_DLL Ceylan::Float64 | Round (Ceylan::Float64 x, Ceylan::Uint8 precision) |
CEYLAN_DLL Ceylan::LongFloat | Round (Ceylan::LongFloat x) |
CEYLAN_DLL Ceylan::LongFloat | Round (Ceylan::LongFloat x, Ceylan::Uint8 precision) |
CEYLAN_DLL Ceylan::Sint8 | Abs (Ceylan::Sint8 x) |
Absolute value, polluted by ambiguous calls:. | |
CEYLAN_DLL Ceylan::Sint16 | Abs (Ceylan::Sint16 x) |
Computes the absolute value of specified argument. | |
CEYLAN_DLL Ceylan::Sint32 | Abs (Ceylan::Sint32 x) |
Computes the absolute value of specified argument. | |
CEYLAN_DLL Ceylan::SignedLongInteger | Abs (Ceylan::SignedLongInteger x) |
Computes the absolute value of specified argument. | |
CEYLAN_DLL Ceylan::Float32 | Abs (Ceylan::Float32 x) |
Computes the absolute value of specified argument. | |
CEYLAN_DLL Ceylan::Float64 | Abs (Ceylan::Float64 x) |
Computes the absolute value of specified argument. | |
CEYLAN_DLL Ceylan::LongFloat | Abs (Ceylan::LongFloat x) |
Computes the absolute value of specified argument. | |
template<typename T > | |
T | Min (T x, T y) |
Min:. | |
template<typename T > | |
T | Min (T x, T y, T z) |
Three-argument Min operator. | |
CEYLAN_DLL Ceylan::Sint8 | Min (Ceylan::Sint8 x, Ceylan::Sint8 y) |
Returns the minimum value of specified parameters. | |
CEYLAN_DLL Ceylan::Uint8 | Min (Ceylan::Uint8 x, Ceylan::Uint8 y) |
Returns the minimum value of specified parameters. | |
CEYLAN_DLL Ceylan::Sint16 | Min (Ceylan::Sint16 x, Ceylan::Sint16 y) |
Returns the minimum value of specified parameters. | |
CEYLAN_DLL Ceylan::Uint16 | Min (Ceylan::Uint16 x, Ceylan::Uint16 y) |
Returns the minimum value of specified parameters. | |
CEYLAN_DLL Ceylan::Sint32 | Min (Ceylan::Sint32 x, Ceylan::Sint32 y) |
Returns the minimum value of specified parameters. | |
CEYLAN_DLL Ceylan::Uint32 | Min (Ceylan::Uint32 x, Ceylan::Uint32 y) |
Returns the minimum value of specified parameters. | |
CEYLAN_DLL Ceylan::SignedLongInteger | Min (Ceylan::SignedLongInteger x, Ceylan::SignedLongInteger y) |
Returns the minimum value of specified parameters. | |
CEYLAN_DLL Ceylan::UnsignedLongInteger | Min (Ceylan::UnsignedLongInteger x, Ceylan::UnsignedLongInteger y) |
Returns the minimum value of specified parameters. | |
CEYLAN_DLL Ceylan::Float32 | Min (Ceylan::Float32 x, Ceylan::Float32 y) |
Returns the minimum value of specified parameters. | |
CEYLAN_DLL Ceylan::Float64 | Min (Ceylan::Float64 x, Ceylan::Float64 y) |
Returns the minimum value of specified parameters. | |
CEYLAN_DLL Ceylan::LongFloat | Min (Ceylan::LongFloat x, Ceylan::LongFloat y) |
Returns the minimum value of specified parameters. | |
template<typename T > | |
T | Max (T x, T y) |
Max:. | |
CEYLAN_DLL Ceylan::Sint8 | Max (Ceylan::Sint8 x, Ceylan::Sint8 y) |
Returns the maximum value of specified parameters. | |
CEYLAN_DLL Ceylan::Uint8 | Max (Ceylan::Uint8 x, Ceylan::Uint8 y) |
Returns the maximum value of specified parameters. | |
CEYLAN_DLL Ceylan::Sint16 | Max (Ceylan::Sint16 x, Ceylan::Sint16 y) |
Returns the maximum value of specified parameters. | |
CEYLAN_DLL Ceylan::Uint16 | Max (Ceylan::Uint16 x, Ceylan::Uint16 y) |
Returns the maximum value of specified parameters. | |
CEYLAN_DLL Ceylan::Sint32 | Max (Ceylan::Sint32 x, Ceylan::Sint32 y) |
Returns the maximum value of specified parameters. | |
CEYLAN_DLL Ceylan::Uint32 | Max (Ceylan::Uint32 x, Ceylan::Uint32 y) |
Returns the maximum value of specified parameters. | |
CEYLAN_DLL Ceylan::SignedLongInteger | Max (Ceylan::SignedLongInteger x, Ceylan::SignedLongInteger y) |
Returns the maximum value of specified parameters. | |
CEYLAN_DLL Ceylan::UnsignedLongInteger | Max (Ceylan::UnsignedLongInteger x, Ceylan::UnsignedLongInteger y) |
Returns the maximum value of specified parameters. | |
CEYLAN_DLL Ceylan::Float32 | Max (Ceylan::Float32 x, Ceylan::Float32 y) |
Returns the maximum value of specified parameters. | |
CEYLAN_DLL Ceylan::Float64 | Max (Ceylan::Float64 x, Ceylan::Float64 y) |
Returns the maximum value of specified parameters. | |
CEYLAN_DLL Ceylan::LongFloat | Max (Ceylan::LongFloat x, Ceylan::LongFloat y) |
Returns the maximum value of specified parameters. | |
CEYLAN_DLL Ceylan::Float32 | Exp (Ceylan::Float32 x) |
Computes the value of e (the base of natural logarithms) raised to the power of x. | |
CEYLAN_DLL Ceylan::Float64 | Exp (Ceylan::Float64 x) |
Computes the value of e (the base of natural logarithms) raised to the power of x. | |
CEYLAN_DLL Ceylan::LongFloat | Exp (Ceylan::LongFloat x) |
Computes the value of e (the base of natural logarithms) raised to the power of x. | |
CEYLAN_DLL Ceylan::Float32 | Pow (Ceylan::Float32 x, Ceylan::Float32 y) |
Computes the value of x raised to the power of y. | |
CEYLAN_DLL Ceylan::Float64 | Pow (Ceylan::Float64 x, Ceylan::Float64 y) |
Computes the value of x raised to the power of y. | |
CEYLAN_DLL Ceylan::LongFloat | Pow (Ceylan::LongFloat x, Ceylan::LongFloat y) |
Computes the value of x raised to the power of y. | |
CEYLAN_DLL Ceylan::Float32 | Pow2 (Ceylan::Float32 x) |
Computes the value of x² (x*x). | |
CEYLAN_DLL Ceylan::Float64 | Pow2 (Ceylan::Float64 x) |
Computes the value of x² (x*x). | |
CEYLAN_DLL Ceylan::LongFloat | Pow2 (Ceylan::LongFloat x) |
Computes the value of x² (x*x). | |
CEYLAN_DLL Ceylan::Float32 | Log (Ceylan::Float32 x) |
Computes the value of the natural logarithm of argument x. | |
CEYLAN_DLL Ceylan::Float64 | Log (Ceylan::Float64 x) |
Computes the value of the natural logarithm of argument x. | |
CEYLAN_DLL Ceylan::LongFloat | Log (Ceylan::LongFloat x) |
Computes the value of the natural logarithm of argument x. | |
CEYLAN_DLL Ceylan::Float32 | Sqrt (Ceylan::Float32 x) |
Computes the non-negative square root of x. | |
CEYLAN_DLL Ceylan::Float64 | Sqrt (Ceylan::Float64 x) |
Computes the non-negative square root of x. | |
CEYLAN_DLL Ceylan::LongFloat | Sqrt (Ceylan::LongFloat x) |
Computes the non-negative square root of x. | |
CEYLAN_DLL Ceylan::Float32 | Cos (Ceylan::Float32 angle) |
Computes the cosine of 'angle', where angle is given in radians. | |
CEYLAN_DLL Ceylan::Float64 | Cos (Ceylan::Float64 angle) |
Computes the cosine of 'angle', where angle is given in radians. | |
CEYLAN_DLL Ceylan::LongFloat | Cos (Ceylan::LongFloat angle) |
Computes the cosine of 'angle', where angle is given in radians. | |
CEYLAN_DLL Ceylan::Float32 | Sin (Ceylan::Float32 angle) |
Computes the sine of 'angle', where angle is given in radians. | |
CEYLAN_DLL Ceylan::Float64 | Sin (Ceylan::Float64 angle) |
Computes the sine of 'angle', where angle is given in radians. | |
CEYLAN_DLL Ceylan::LongFloat | Sin (Ceylan::LongFloat angle) |
Computes the sine of 'angle', where angle is given in radians. | |
CEYLAN_DLL Ceylan::Float32 | Tan (Ceylan::Float32 angle) |
Computes the tangent of 'angle', where angle is given in radians. | |
CEYLAN_DLL Ceylan::Float64 | Tan (Ceylan::Float64 angle) |
Computes the tangent of 'angle', where angle is given in radians. | |
CEYLAN_DLL Ceylan::LongFloat | Tan (Ceylan::LongFloat angle) |
Computes the tangent of 'angle', where angle is given in radians. | |
CEYLAN_DLL AngleInRadians | DegreeToRadian (AngleInDegrees angleInDegrees) |
Converts an angle expressed in degrees into an angle expressed in radians. | |
CEYLAN_DLL Uint16 | NextPowerOfTwo (Uint16 value) |
Returns the first power of 2 greater or equal to the specified value. | |
CEYLAN_DLL bool | IsAPowerOfTwo (Uint16 value) |
Tells whether the specified value is a power of two. | |
CEYLAN_DLL Uint16 | NextMultipleOf (Uint16 multiple, Uint16 value) |
Variables | |
CEYLAN_DLL const Ceylan::LongFloat | E |
The number e. | |
CEYLAN_DLL const Ceylan::LongFloat | Log2E |
The number log_2(e). | |
CEYLAN_DLL const Ceylan::LongFloat | Log10E |
The number log_10(e). | |
CEYLAN_DLL const Ceylan::LongFloat | LogE2 |
The number log_e(2) = ln(2). | |
CEYLAN_DLL const Ceylan::LongFloat | LogE10 |
The number log_e(10) = ln(10) (used to be the M_LN10 maths.h constant). | |
CEYLAN_DLL const Ceylan::LongFloat | Pi |
The number pi. | |
CEYLAN_DLL const Ceylan::LongFloat | Pi_div_2 |
The number pi/2. | |
CEYLAN_DLL const Ceylan::LongFloat | Pi_div_4 |
The number pi/4. | |
CEYLAN_DLL const Ceylan::LongFloat | One_div_Pi |
The number 1/pi. | |
CEYLAN_DLL const Ceylan::LongFloat | Two_div_Pi |
The number 2/pi. | |
CEYLAN_DLL const Ceylan::LongFloat | Two_div_sqrt_Pi |
The number 2/sqrt(pi). | |
CEYLAN_DLL const Ceylan::LongFloat | Sqrt_2 |
The number sqrt(2). | |
CEYLAN_DLL const Ceylan::LongFloat | One_div_sqrt_2 |
The number 1/sqrt(2). | |
CEYLAN_DLL const Ceylan::LongFloat | EpsilonFloat32 = 1.0e-7 |
A very small number, used for floating point comparisons: two numbers x and y are deemed equal if | x - y | < EpsilonFloat32. | |
CEYLAN_DLL const Ceylan::LongFloat | EpsilonFloat64 = 1.0e-9 |
A very small number, used for floating point comparisons: two numbers x and y are deemed equal if | x - y | < EpsilonFloat64. | |
CEYLAN_DLL const Ceylan::LongFloat | EpsilonLongFloat = 1.0e-11 |
A very small number, used for floating point comparisons: two numbers x and y are deemed equal if | x - y | < EpsilonLongFloat. | |
CEYLAN_DLL const Ceylan::LongFloat | Epsilon = EpsilonFloat32 |
A very small number, used for floating point comparisons: two numbers x and y are deemed equal if | x - y | < Epsilon. |
Angles, expressed in degrees.
Definition at line 103 of file CeylanMathsBasic.h.
Angles, expressed in radians.
Definition at line 113 of file CeylanMathsBasic.h.
typedef Ceylan::Uint32 Ceylan::Maths::Hertz |
Unit for frequencies (Hz).
For example, a periodical event whose frequency is 100 Hz would happen once on each period P = 1/100 s = 10 ms.
Definition at line 135 of file CeylanMathsBasic.h.
Integer percentage values, which should range from 0 to 100, both included.
Definition at line 122 of file CeylanMathsBasic.h.
typedef Ceylan::Float32 Ceylan::Maths::Ratio |
Ratio unit, should store floating point values between 0 and 1.
Definition at line 143 of file CeylanMathsBasic.h.
typedef Ceylan::Float32 Ceylan::Maths::Real |
Real is the floating-point coordinate used in Ceylan's linear services.
Definition at line 93 of file CeylanMathsBasic.h.
Ceylan::LongFloat Ceylan::Maths::Abs | ( | Ceylan::LongFloat | x | ) |
Computes the absolute value of specified argument.
Definition at line 551 of file CeylanMathsBasic.cc.
Ceylan::Float64 Ceylan::Maths::Abs | ( | Ceylan::Float64 | x | ) |
Computes the absolute value of specified argument.
Definition at line 542 of file CeylanMathsBasic.cc.
Ceylan::Float32 Ceylan::Maths::Abs | ( | Ceylan::Float32 | x | ) |
Computes the absolute value of specified argument.
Definition at line 525 of file CeylanMathsBasic.cc.
Ceylan::SignedLongInteger Ceylan::Maths::Abs | ( | Ceylan::SignedLongInteger | x | ) |
Computes the absolute value of specified argument.
Definition at line 504 of file CeylanMathsBasic.cc.
Ceylan::Sint32 Ceylan::Maths::Abs | ( | Ceylan::Sint32 | x | ) |
Computes the absolute value of specified argument.
Definition at line 495 of file CeylanMathsBasic.cc.
Ceylan::Sint16 Ceylan::Maths::Abs | ( | Ceylan::Sint16 | x | ) |
Computes the absolute value of specified argument.
Definition at line 486 of file CeylanMathsBasic.cc.
Ceylan::Sint8 Ceylan::Maths::Abs | ( | Ceylan::Sint8 | x | ) |
Absolute value, polluted by ambiguous calls:.
Computes the absolute value of specified argument.
Definition at line 477 of file CeylanMathsBasic.cc.
Referenced by AreEqual(), AreExactlyEqual(), AreRelativelyEqual(), Ceylan::System::getSchedulingGranularity(), and IsNull().
bool Ceylan::Maths::AreEqual | ( | Ceylan::LongFloat | x, | |
Ceylan::LongFloat | y, | |||
Ceylan::LongFloat | epsilon | |||
) |
Tells whether x and y are 'equal' as floating point numbers: | x - y | < epsilon.
Definition at line 262 of file CeylanMathsBasic.cc.
References Abs().
bool Ceylan::Maths::AreEqual | ( | Ceylan::LongFloat | x, | |
Ceylan::LongFloat | y | |||
) |
Tells whether x and y are 'equal' as floating point numbers: | x - y | < EpsilonLongFloat.
Definition at line 253 of file CeylanMathsBasic.cc.
References Abs(), and EpsilonLongFloat.
bool Ceylan::Maths::AreEqual | ( | Ceylan::Float64 | x, | |
Ceylan::Float64 | y, | |||
Ceylan::Float64 | epsilon | |||
) |
Tells whether x and y are 'equal' as floating point numbers: | x - y | < epsilon.
Definition at line 231 of file CeylanMathsBasic.cc.
References Abs().
bool Ceylan::Maths::AreEqual | ( | Ceylan::Float64 | x, | |
Ceylan::Float64 | y | |||
) |
Tells whether x and y are 'equal' as floating point numbers: | x - y | < EpsilonFloat64.
Definition at line 222 of file CeylanMathsBasic.cc.
References Abs(), and EpsilonFloat64.
bool Ceylan::Maths::AreEqual | ( | Ceylan::Float32 | x, | |
Ceylan::Float32 | y, | |||
Ceylan::Float32 | epsilon | |||
) |
Tells whether x and y are 'equal' as floating point numbers: | x - y | < epsilon.
Definition at line 212 of file CeylanMathsBasic.cc.
References Abs().
bool Ceylan::Maths::AreEqual | ( | Ceylan::Float32 | x, | |
Ceylan::Float32 | y | |||
) |
Tells whether x and y are 'equal' as floating point numbers: | x - y | < EpsilonFloat32.
Definition at line 203 of file CeylanMathsBasic.cc.
References Abs(), and EpsilonFloat32.
bool Ceylan::Maths::AreExactlyEqual | ( | Ceylan::Float64 | x, | |
Ceylan::Float64 | y | |||
) |
Tells whether x and y are exactly 'equal': x == y, with no compile warning about the fact that comparing floating point values with == operator is most of the time absurd, which is true indeed.
Definition at line 241 of file CeylanMathsBasic.cc.
References Abs(), and EpsilonLongFloat.
bool Ceylan::Maths::AreRelativelyEqual | ( | T | x, | |
T | y, | |||
Ceylan::LongFloat | epsilon | |||
) | [inline] |
Relative comparison with user-supplied epsilon.
x | the first value to compare. | |
y | the second value to compare. | |
epsilon | the double of the criterion of relative equality. |
Definition at line 537 of file CeylanMathsBasic.h.
bool Ceylan::Maths::AreRelativelyEqual | ( | T | x, | |
T | y | |||
) | [inline] |
Relative comparison.
x | the first value to compare. | |
y | the second value to compare. |
Definition at line 489 of file CeylanMathsBasic.h.
References Abs(), EpsilonFloat32, and IsNull().
Ceylan::LongFloat Ceylan::Maths::Ceil | ( | Ceylan::LongFloat | x | ) |
Definition at line 344 of file CeylanMathsBasic.cc.
Ceylan::Float64 Ceylan::Maths::Ceil | ( | Ceylan::Float64 | x | ) |
Definition at line 335 of file CeylanMathsBasic.cc.
Ceylan::Float32 Ceylan::Maths::Ceil | ( | Ceylan::Float32 | x | ) |
Definition at line 318 of file CeylanMathsBasic.cc.
Ceylan::LongFloat Ceylan::Maths::Cos | ( | Ceylan::LongFloat | angle | ) |
Computes the cosine of 'angle', where angle is given in radians.
Definition at line 1007 of file CeylanMathsBasic.cc.
Ceylan::Float64 Ceylan::Maths::Cos | ( | Ceylan::Float64 | angle | ) |
Computes the cosine of 'angle', where angle is given in radians.
Definition at line 998 of file CeylanMathsBasic.cc.
Ceylan::Float32 Ceylan::Maths::Cos | ( | Ceylan::Float32 | angle | ) |
Computes the cosine of 'angle', where angle is given in radians.
Definition at line 971 of file CeylanMathsBasic.cc.
References dataUtils::c, and Pi.
Referenced by Ceylan::Maths::Linear::Rotation3DFunctor::operator()(), and Ceylan::Maths::Linear::Rotation2DFunctor::operator()().
AngleInRadians Ceylan::Maths::DegreeToRadian | ( | AngleInDegrees | angleInDegrees | ) |
Converts an angle expressed in degrees into an angle expressed in radians.
Definition at line 1169 of file CeylanMathsBasic.cc.
References Pi.
Referenced by Ceylan::Maths::Linear::Rotation2DFunctor::Rotation2DFunctor(), and Ceylan::Maths::Linear::Rotation3DFunctor::Rotation3DFunctor().
Ceylan::LongFloat Ceylan::Maths::Exp | ( | Ceylan::LongFloat | x | ) |
Computes the value of e (the base of natural logarithms) raised to the power of x.
Definition at line 811 of file CeylanMathsBasic.cc.
Ceylan::Float64 Ceylan::Maths::Exp | ( | Ceylan::Float64 | x | ) |
Computes the value of e (the base of natural logarithms) raised to the power of x.
Definition at line 802 of file CeylanMathsBasic.cc.
Ceylan::Float32 Ceylan::Maths::Exp | ( | Ceylan::Float32 | x | ) |
Computes the value of e (the base of natural logarithms) raised to the power of x.
Definition at line 785 of file CeylanMathsBasic.cc.
Referenced by Ceylan::Maths::Random::NormalProbabilityFunction::operator()().
Ceylan::LongFloat Ceylan::Maths::Floor | ( | Ceylan::LongFloat | x | ) |
Definition at line 309 of file CeylanMathsBasic.cc.
Ceylan::Float64 Ceylan::Maths::Floor | ( | Ceylan::Float64 | x | ) |
Definition at line 300 of file CeylanMathsBasic.cc.
Ceylan::Float32 Ceylan::Maths::Floor | ( | Ceylan::Float32 | x | ) |
Definition at line 273 of file CeylanMathsBasic.cc.
bool Ceylan::Maths::IsAPowerOfTwo | ( | Ceylan::Uint16 | value | ) |
Tells whether the specified value is a power of two.
Definition at line 1195 of file CeylanMathsBasic.cc.
References NextPowerOfTwo().
bool Ceylan::Maths::IsNull | ( | Ceylan::LongFloat | x, | |
Ceylan::LongFloat | epsilon | |||
) |
Tells whether x is null as regard to floating point numbers: | x | < epsilon.
Definition at line 190 of file CeylanMathsBasic.cc.
References Abs().
bool Ceylan::Maths::IsNull | ( | Ceylan::LongFloat | x | ) |
Tells whether x is null as regard to floating point numbers: | x | < EpsilonLongFloat.
Definition at line 181 of file CeylanMathsBasic.cc.
References Abs(), and EpsilonLongFloat.
bool Ceylan::Maths::IsNull | ( | Ceylan::Float64 | x, | |
Ceylan::Float64 | epsilon | |||
) |
Tells whether x is null as regard to floating point numbers: | x | < epsilon.
Definition at line 172 of file CeylanMathsBasic.cc.
References Abs().
bool Ceylan::Maths::IsNull | ( | Ceylan::Float64 | x | ) |
Tells whether x is null as regard to floating point numbers: | x | < EpsilonFloat64.
Definition at line 163 of file CeylanMathsBasic.cc.
References Abs(), and EpsilonFloat64.
bool Ceylan::Maths::IsNull | ( | Ceylan::Float32 | x, | |
Ceylan::Float32 | epsilon | |||
) |
Tells whether x is null as regard to floating point numbers: | x | < epsilon.
Definition at line 153 of file CeylanMathsBasic.cc.
References Abs().
bool Ceylan::Maths::IsNull | ( | Ceylan::Float32 | x | ) |
Tells whether x is null as regard to floating point numbers: | x | < EpsilonFloat32.
Definition at line 144 of file CeylanMathsBasic.cc.
References Abs(), and EpsilonFloat32.
Referenced by AreRelativelyEqual(), Ceylan::Locatable2D::getCenter(), Ceylan::Maths::Linear::Vector3::normalize(), Ceylan::Maths::Linear::Vector2::normalize(), Ceylan::Maths::Random::NormalProbabilityFunction::NormalProbabilityFunction(), Ceylan::Maths::Linear::operator!(), and Ceylan::Maths::Linear::HomogeneousMatrix3::setInCanonicalForm().
Ceylan::LongFloat Ceylan::Maths::Log | ( | Ceylan::LongFloat | x | ) |
Computes the value of the natural logarithm of argument x.
Definition at line 908 of file CeylanMathsBasic.cc.
Ceylan::Float64 Ceylan::Maths::Log | ( | Ceylan::Float64 | x | ) |
Computes the value of the natural logarithm of argument x.
Definition at line 899 of file CeylanMathsBasic.cc.
Ceylan::Float32 Ceylan::Maths::Log | ( | Ceylan::Float32 | x | ) |
Computes the value of the natural logarithm of argument x.
Definition at line 882 of file CeylanMathsBasic.cc.
Ceylan::LongFloat Ceylan::Maths::Max | ( | Ceylan::LongFloat | x, | |
Ceylan::LongFloat | y | |||
) |
Returns the maximum value of specified parameters.
Definition at line 776 of file CeylanMathsBasic.cc.
Ceylan::Float64 Ceylan::Maths::Max | ( | Ceylan::Float64 | x, | |
Ceylan::Float64 | y | |||
) |
Returns the maximum value of specified parameters.
Definition at line 767 of file CeylanMathsBasic.cc.
Ceylan::Float32 Ceylan::Maths::Max | ( | Ceylan::Float32 | x, | |
Ceylan::Float32 | y | |||
) |
Returns the maximum value of specified parameters.
Disabled since ISO C++ does not support `long long'. Returns the maximum value of specified parameters.
No macro used to avoid nasty side effects.
Definition at line 758 of file CeylanMathsBasic.cc.
Ceylan::UnsignedLongInteger Ceylan::Maths::Max | ( | Ceylan::UnsignedLongInteger | x, | |
Ceylan::UnsignedLongInteger | y | |||
) |
Returns the maximum value of specified parameters.
Definition at line 737 of file CeylanMathsBasic.cc.
Ceylan::SignedLongInteger Ceylan::Maths::Max | ( | Ceylan::SignedLongInteger | x, | |
Ceylan::SignedLongInteger | y | |||
) |
Returns the maximum value of specified parameters.
Definition at line 727 of file CeylanMathsBasic.cc.
Ceylan::Uint32 Ceylan::Maths::Max | ( | Ceylan::Uint32 | x, | |
Ceylan::Uint32 | y | |||
) |
Returns the maximum value of specified parameters.
Definition at line 718 of file CeylanMathsBasic.cc.
Ceylan::Sint32 Ceylan::Maths::Max | ( | Ceylan::Sint32 | x, | |
Ceylan::Sint32 | y | |||
) |
Returns the maximum value of specified parameters.
Definition at line 712 of file CeylanMathsBasic.cc.
Ceylan::Uint16 Ceylan::Maths::Max | ( | Ceylan::Uint16 | x, | |
Ceylan::Uint16 | y | |||
) |
Returns the maximum value of specified parameters.
Definition at line 703 of file CeylanMathsBasic.cc.
Ceylan::Sint16 Ceylan::Maths::Max | ( | Ceylan::Sint16 | x, | |
Ceylan::Sint16 | y | |||
) |
Returns the maximum value of specified parameters.
Definition at line 694 of file CeylanMathsBasic.cc.
Ceylan::Uint8 Ceylan::Maths::Max | ( | Ceylan::Uint8 | x, | |
Ceylan::Uint8 | y | |||
) |
Returns the maximum value of specified parameters.
Definition at line 685 of file CeylanMathsBasic.cc.
Ceylan::Sint8 Ceylan::Maths::Max | ( | Ceylan::Sint8 | x, | |
Ceylan::Sint8 | y | |||
) |
Returns the maximum value of specified parameters.
Definition at line 676 of file CeylanMathsBasic.cc.
T Ceylan::Maths::Max | ( | T | x, | |
T | y | |||
) | [inline] |
Max:.
Max operator template available, since using only specialized Max functions lead to way too many ambiguities and implies several uneasy static_cast.
Definition at line 1151 of file CeylanMathsBasic.h.
Ceylan::LongFloat Ceylan::Maths::Min | ( | Ceylan::LongFloat | x, | |
Ceylan::LongFloat | y | |||
) |
Returns the minimum value of specified parameters.
Definition at line 666 of file CeylanMathsBasic.cc.
Ceylan::Float64 Ceylan::Maths::Min | ( | Ceylan::Float64 | x, | |
Ceylan::Float64 | y | |||
) |
Returns the minimum value of specified parameters.
Definition at line 657 of file CeylanMathsBasic.cc.
Ceylan::Float32 Ceylan::Maths::Min | ( | Ceylan::Float32 | x, | |
Ceylan::Float32 | y | |||
) |
Returns the minimum value of specified parameters.
Disabled since ISO C++ does not support `long long'. Returns the minimum value of specified parameters.
No macro used to avoid nasty side effects.
Definition at line 648 of file CeylanMathsBasic.cc.
Ceylan::UnsignedLongInteger Ceylan::Maths::Min | ( | Ceylan::UnsignedLongInteger | x, | |
Ceylan::UnsignedLongInteger | y | |||
) |
Returns the minimum value of specified parameters.
Definition at line 625 of file CeylanMathsBasic.cc.
Ceylan::SignedLongInteger Ceylan::Maths::Min | ( | Ceylan::SignedLongInteger | x, | |
Ceylan::SignedLongInteger | y | |||
) |
Returns the minimum value of specified parameters.
Definition at line 615 of file CeylanMathsBasic.cc.
Ceylan::Uint32 Ceylan::Maths::Min | ( | Ceylan::Uint32 | x, | |
Ceylan::Uint32 | y | |||
) |
Returns the minimum value of specified parameters.
Definition at line 606 of file CeylanMathsBasic.cc.
Ceylan::Sint32 Ceylan::Maths::Min | ( | Ceylan::Sint32 | x, | |
Ceylan::Sint32 | y | |||
) |
Returns the minimum value of specified parameters.
Definition at line 597 of file CeylanMathsBasic.cc.
Ceylan::Uint16 Ceylan::Maths::Min | ( | Ceylan::Uint16 | x, | |
Ceylan::Uint16 | y | |||
) |
Returns the minimum value of specified parameters.
Definition at line 588 of file CeylanMathsBasic.cc.
Ceylan::Sint16 Ceylan::Maths::Min | ( | Ceylan::Sint16 | x, | |
Ceylan::Sint16 | y | |||
) |
Returns the minimum value of specified parameters.
Definition at line 579 of file CeylanMathsBasic.cc.
Ceylan::Uint8 Ceylan::Maths::Min | ( | Ceylan::Uint8 | x, | |
Ceylan::Uint8 | y | |||
) |
Returns the minimum value of specified parameters.
Definition at line 570 of file CeylanMathsBasic.cc.
Ceylan::Sint8 Ceylan::Maths::Min | ( | Ceylan::Sint8 | x, | |
Ceylan::Sint8 | y | |||
) |
Returns the minimum value of specified parameters.
Definition at line 561 of file CeylanMathsBasic.cc.
T Ceylan::Maths::Min | ( | T | x, | |
T | y, | |||
T | z | |||
) | [inline] |
Three-argument Min operator.
Available as a template, since using only specialized Min functions lead to way too many ambiguities and implies several uneasy static_cast.
Definition at line 994 of file CeylanMathsBasic.h.
References Min().
T Ceylan::Maths::Min | ( | T | x, | |
T | y | |||
) | [inline] |
Min:.
Min operator template available, since using only specialized Min functions lead to way too many ambiguities and implies several uneasy static_cast.
Definition at line 977 of file CeylanMathsBasic.h.
Referenced by Min().
Ceylan::Uint16 Ceylan::Maths::NextMultipleOf | ( | Uint16 | multiple, | |
Uint16 | value | |||
) |
Definition at line 1204 of file CeylanMathsBasic.cc.
Ceylan::Uint16 Ceylan::Maths::NextPowerOfTwo | ( | Ceylan::Uint16 | value | ) |
Returns the first power of 2 greater or equal to the specified value.
Useful for example to compute OpenGL texture sizes.
value | for which the smallest power of two must be returned. |
Definition at line 1178 of file CeylanMathsBasic.cc.
Referenced by IsAPowerOfTwo().
Ceylan::LongFloat Ceylan::Maths::Pow | ( | Ceylan::LongFloat | x, | |
Ceylan::LongFloat | y | |||
) |
Computes the value of x raised to the power of y.
Definition at line 846 of file CeylanMathsBasic.cc.
Ceylan::Float64 Ceylan::Maths::Pow | ( | Ceylan::Float64 | x, | |
Ceylan::Float64 | y | |||
) |
Computes the value of x raised to the power of y.
Definition at line 837 of file CeylanMathsBasic.cc.
Ceylan::Float32 Ceylan::Maths::Pow | ( | Ceylan::Float32 | x, | |
Ceylan::Float32 | y | |||
) |
Computes the value of x raised to the power of y.
Definition at line 820 of file CeylanMathsBasic.cc.
Referenced by Ceylan::Maths::Random::NormalProbabilityFunction::operator()().
Ceylan::LongFloat Ceylan::Maths::Pow2 | ( | Ceylan::LongFloat | x | ) |
Ceylan::Float64 Ceylan::Maths::Pow2 | ( | Ceylan::Float64 | x | ) |
Ceylan::Float32 Ceylan::Maths::Pow2 | ( | Ceylan::Float32 | x | ) |
Computes the value of x² (x*x).
Definition at line 855 of file CeylanMathsBasic.cc.
Referenced by Ceylan::Maths::Linear::Bipoint::Distance(), and Ceylan::Maths::Linear::Bipoint::DistancePow2().
Ceylan::LongFloat Ceylan::Maths::Round | ( | Ceylan::LongFloat | x, | |
Ceylan::Uint8 | precision | |||
) |
Ceylan::LongFloat Ceylan::Maths::Round | ( | Ceylan::LongFloat | x | ) |
Definition at line 437 of file CeylanMathsBasic.cc.
Ceylan::Float64 Ceylan::Maths::Round | ( | Ceylan::Float64 | x, | |
Ceylan::Uint8 | precision | |||
) |
Ceylan::Float64 Ceylan::Maths::Round | ( | Ceylan::Float64 | x | ) |
Definition at line 397 of file CeylanMathsBasic.cc.
Ceylan::Float32 Ceylan::Maths::Round | ( | Ceylan::Float32 | x, | |
Ceylan::Uint8 | precision | |||
) |
Ceylan::Float32 Ceylan::Maths::Round | ( | Ceylan::Float32 | x | ) |
Ceylan::LongFloat Ceylan::Maths::Sin | ( | Ceylan::LongFloat | angle | ) |
Computes the sine of 'angle', where angle is given in radians.
Definition at line 1056 of file CeylanMathsBasic.cc.
Ceylan::Float64 Ceylan::Maths::Sin | ( | Ceylan::Float64 | angle | ) |
Computes the sine of 'angle', where angle is given in radians.
Definition at line 1047 of file CeylanMathsBasic.cc.
Ceylan::Float32 Ceylan::Maths::Sin | ( | Ceylan::Float32 | angle | ) |
Computes the sine of 'angle', where angle is given in radians.
Definition at line 1020 of file CeylanMathsBasic.cc.
References dataUtils::c, and Pi.
Referenced by Ceylan::Maths::Linear::Rotation3DFunctor::operator()(), and Ceylan::Maths::Linear::Rotation2DFunctor::operator()().
Ceylan::LongFloat Ceylan::Maths::Sqrt | ( | Ceylan::LongFloat | x | ) |
Computes the non-negative square root of x.
MathsException | if x is negative. |
Definition at line 953 of file CeylanMathsBasic.cc.
References Ceylan::toString().
Ceylan::Float64 Ceylan::Maths::Sqrt | ( | Ceylan::Float64 | x | ) |
Computes the non-negative square root of x.
MathsException | if x is negative. |
Definition at line 939 of file CeylanMathsBasic.cc.
References Ceylan::toString().
Ceylan::Float32 Ceylan::Maths::Sqrt | ( | Ceylan::Float32 | x | ) |
Computes the non-negative square root of x.
MathsException | if x is negative. |
Definition at line 917 of file CeylanMathsBasic.cc.
References Ceylan::toString().
Referenced by Ceylan::Maths::Linear::Bipoint::Distance(), Ceylan::Maths::Linear::Vector3::magnitude(), Ceylan::Maths::Linear::Vector2::magnitude(), and Ceylan::Maths::Random::NormalProbabilityFunction::operator()().
Ceylan::LongFloat Ceylan::Maths::Tan | ( | Ceylan::LongFloat | angle | ) |
Computes the tangent of 'angle', where angle is given in radians.
Definition at line 1106 of file CeylanMathsBasic.cc.
Ceylan::Float64 Ceylan::Maths::Tan | ( | Ceylan::Float64 | angle | ) |
Computes the tangent of 'angle', where angle is given in radians.
Definition at line 1097 of file CeylanMathsBasic.cc.
Ceylan::Float32 Ceylan::Maths::Tan | ( | Ceylan::Float32 | angle | ) |
Computes the tangent of 'angle', where angle is given in radians.
Definition at line 1070 of file CeylanMathsBasic.cc.
References dataUtils::c, and Pi.
Initial value:
2.7182818284590452353602874713526625L
(used to be the M_E maths.h constant).
Definition at line 81 of file CeylanMathsBasic.cc.
A very small number, used for floating point comparisons: two numbers x and y are deemed equal if | x - y | < Epsilon.
Definition at line 136 of file CeylanMathsBasic.cc.
const Ceylan::LongFloat Ceylan::Maths::EpsilonFloat32 = 1.0e-7 |
A very small number, used for floating point comparisons: two numbers x and y are deemed equal if | x - y | < EpsilonFloat32.
Definition at line 133 of file CeylanMathsBasic.cc.
Referenced by AreEqual(), AreRelativelyEqual(), and IsNull().
const Ceylan::LongFloat Ceylan::Maths::EpsilonFloat64 = 1.0e-9 |
A very small number, used for floating point comparisons: two numbers x and y are deemed equal if | x - y | < EpsilonFloat64.
Definition at line 134 of file CeylanMathsBasic.cc.
Referenced by AreEqual(), and IsNull().
const Ceylan::LongFloat Ceylan::Maths::EpsilonLongFloat = 1.0e-11 |
A very small number, used for floating point comparisons: two numbers x and y are deemed equal if | x - y | < EpsilonLongFloat.
Definition at line 135 of file CeylanMathsBasic.cc.
Referenced by AreEqual(), AreExactlyEqual(), and IsNull().
Initial value:
0.4342944819032518276511289189166051L
(used to be the M_LOG10E maths.h constant).
Definition at line 89 of file CeylanMathsBasic.cc.
Initial value:
1.4426950408889634073599246810018922L
(used to be the M_LOG2E maths.h constant).
Definition at line 85 of file CeylanMathsBasic.cc.
Initial value:
2.3025850929940456840179914546843642L
Definition at line 97 of file CeylanMathsBasic.cc.
Initial value:
0.6931471805599453094172321214581766L
(used to be the M_LN2 maths.h constant).
Definition at line 93 of file CeylanMathsBasic.cc.
Initial value:
0.3183098861837906715377675267450287L
(used to be the M_1_PI maths.h constant).
Definition at line 113 of file CeylanMathsBasic.cc.
Initial value:
0.7071067811865475244008443621048490L
(used to be the M_SQRT1_2 maths.h constant).
Definition at line 128 of file CeylanMathsBasic.cc.
Initial value:
3.1415926535897932384626433832795029L
(used to be the M_PI maths.h constant).
Definition at line 101 of file CeylanMathsBasic.cc.
Referenced by Cos(), DegreeToRadian(), Ceylan::Maths::Random::NormalProbabilityFunction::operator()(), Sin(), and Tan().
Initial value:
1.5707963267948966192313216916397514L
(used to be the M_PI_2 maths.h constant).
Definition at line 105 of file CeylanMathsBasic.cc.
Initial value:
0.7853981633974483096156608458198757L
(used to be the M_PI_4 maths.h constant).
Definition at line 109 of file CeylanMathsBasic.cc.
Initial value:
1.4142135623730950488016887242096981L
(used to be the M_SQRT2 maths.h constant).
Definition at line 125 of file CeylanMathsBasic.cc.
Initial value:
0.6366197723675813430755350534900574L
(used to be the M_2_PI maths.h constant).
Definition at line 117 of file CeylanMathsBasic.cc.
Initial value:
1.1283791670955125738961589031215452L
(used to be the M_2_SQRTPI maths.h constant).
Definition at line 121 of file CeylanMathsBasic.cc.