Classes | |
| class | DummyPolarFunctor |
| class | DynamicLegendre |
| class | Legendre |
| class | MagnitudoComparer |
| class | MarsenneTwisterRNG |
| struct | MAX_FACTORIAL |
| struct | MAX_FACTORIAL< double > |
| struct | MAX_FACTORIAL< float > |
| struct | MAX_FACTORIAL< int > |
| struct | MAX_FACTORIAL< long double > |
| struct | MAX_FACTORIAL< short > |
| class | Perlin |
| class | Quadric |
| class | RandomGenerator |
| class | ScalingFactor |
| class | SphericalHarmonics |
| class | SubtractiveRingRNG |
Typedefs | |
| typedef Quadric< double > | Quadricd |
| typedef Quadric< float > | Quadricf |
| typedef Quadric< int > | Quadrici |
| typedef Quadric< short > | Quadrics |
| typedef double | ScalarType |
Functions | |
| float | Abs (const float v) |
| double | Abs (const double v) |
| float | Acos (const float v) |
| double | Acos (const double v) |
| float | Asin (const float v) |
| double | Asin (const double v) |
| float | Atan2 (const float v0, const float v1) |
| double | Atan2 (const double v0, const double v1) |
| double | box_muller (RandomGenerator &generator, double m, double s) |
| template<class SCALAR > | |
| SCALAR | Clamp (const SCALAR &val, const SCALAR &minval, const SCALAR &maxval) |
| float | Cos (const float v) |
| double | Cos (const double v) |
| template<typename ScalarType > | |
| ScalarType | Factorial (unsigned i) |
| template<typename ScalarType > | |
| ScalarType | factorial_table (unsigned i) |
| template<> | |
| double | factorial_table< double > (unsigned i) |
| template<> | |
| float | factorial_table< float > (unsigned i) |
| template<> | |
| int | factorial_table< int > (unsigned i) |
| template<> | |
| long double | factorial_table< long double > (unsigned i) |
| template<class ScalarType , class GeneratorType > | |
| vcg::Point3< ScalarType > | GenerateBarycentricUniform (GeneratorType &rnd) |
| Generate the barycentric coords of a random point over a single face, with a uniform distribution over the triangle. It uses the parallelogram folding trick. | |
| template<class ScalarType , class GeneratorType > | |
| vcg::Point3< ScalarType > | GeneratePointInBox3Uniform (GeneratorType &rnd, const Box3< ScalarType > &bb) |
| Generate a random point insidie a box with uniform distribution. | |
| template<class ScalarType , class GeneratorType > | |
| vcg::Point3< ScalarType > | GeneratePointInUnitBallUniform (GeneratorType &rnd) |
| generate a point inside a unit sphere with uniform distribution | |
| template<class ScalarType , class GeneratorType > | |
| vcg::Point3< ScalarType > | GeneratePointOnUnitSphereUniform (GeneratorType &rnd) |
| Generate a point over the surface of a unit sphere with uniform distribution This is the algorithm proposed by George Marsaglia [1] to generate a point over a unit sphere Independently generate V1 and V2, taken from a uniform distribution on (-1,1) such that S=(V1^2+V2^2)<1. | |
| ScalarType | inproduct5 (const ScalarType a[5], const ScalarType b[5]) |
| template<class T > | |
| int | IsNAN (T t) |
| template<class T > | |
| const T & | Max (const T &a, const T &b, const T &c) |
| template<class T > | |
| const T & | Min (const T &a, const T &b, const T &c) |
| void | normalize_vec3 (ScalarType v[3]) |
| void | normalize_vec5 (ScalarType v[5]) |
| void | outproduct5 (const ScalarType a[5], const ScalarType b[5], ScalarType r[5][5]) |
| void | prod_matvec5 (const ScalarType m[5][5], const ScalarType v[5], ScalarType r[5]) |
| void | prod_vecmat5 (ScalarType v[5], ScalarType m[5][5], ScalarType r[5]) |
| template<typename T > | |
| int | Sgn (T val) |
| float | Sin (const float v) |
| double | Sin (const double v) |
| template<class T > | |
| void | Sort (T &a, T &b) |
| template<class T > | |
| void | Sort (T &a, T &b, T &c) |
| template<typename T > | |
| static T | Sqr (T a) |
| float | Sqrt (const short v) |
| float | Sqrt (const int v) |
| float | Sqrt (const float v) |
| double | Sqrt (const double v) |
| void | sub_mat5 (ScalarType dest[5][5], ScalarType m[5][5]) |
| void | sub_symmat5 (ScalarType dest[15], ScalarType m[15]) |
| void | sub_vec5 (const ScalarType a[5], const ScalarType b[5], ScalarType r[5]) |
| void | symprod_vvt5 (ScalarType dest[15], ScalarType v[5]) |
| float | ToDeg (const float &a) |
| double | ToDeg (const double &a) |
| float | ToRad (const float &a) |
| double | ToRad (const double &a) |
| typedef Quadric<double> vcg::math::Quadricd |
| typedef Quadric<float> vcg::math::Quadricf |
| typedef Quadric<int> vcg::math::Quadrici |
| typedef Quadric<short> vcg::math::Quadrics |
| typedef double vcg::math::ScalarType |
Definition at line 59 of file quadric5.h.
| float vcg::math::Abs | ( | const float | v | ) | [inline] |
Definition at line 121 of file vcg/math/base.h.
| double vcg::math::Abs | ( | const double | v | ) | [inline] |
Definition at line 129 of file vcg/math/base.h.
| float vcg::math::Acos | ( | const float | v | ) | [inline] |
Definition at line 124 of file vcg/math/base.h.
| double vcg::math::Acos | ( | const double | v | ) | [inline] |
Definition at line 132 of file vcg/math/base.h.
| float vcg::math::Asin | ( | const float | v | ) | [inline] |
Definition at line 125 of file vcg/math/base.h.
| double vcg::math::Asin | ( | const double | v | ) | [inline] |
Definition at line 133 of file vcg/math/base.h.
| float vcg::math::Atan2 | ( | const float | v0, |
| const float | v1 | ||
| ) | [inline] |
Definition at line 126 of file vcg/math/base.h.
| double vcg::math::Atan2 | ( | const double | v0, |
| const double | v1 | ||
| ) | [inline] |
Definition at line 134 of file vcg/math/base.h.
| double vcg::math::box_muller | ( | RandomGenerator & | generator, |
| double | m, | ||
| double | s | ||
| ) | [inline] |
Definition at line 436 of file random_generator.h.
| SCALAR vcg::math::Clamp | ( | const SCALAR & | val, |
| const SCALAR & | minval, | ||
| const SCALAR & | maxval | ||
| ) | [inline] |
Definition at line 175 of file vcg/math/base.h.
| float vcg::math::Cos | ( | const float | v | ) | [inline] |
Definition at line 122 of file vcg/math/base.h.
| double vcg::math::Cos | ( | const double | v | ) | [inline] |
Definition at line 130 of file vcg/math/base.h.
| ScalarType vcg::math::Factorial | ( | unsigned | i | ) |
Definition at line 272 of file factorial.h.
| ScalarType vcg::math::factorial_table | ( | unsigned | i | ) |
Definition at line 252 of file factorial.h.
| double vcg::math::factorial_table< double > | ( | unsigned | i | ) |
Definition at line 220 of file factorial.h.
| float vcg::math::factorial_table< float > | ( | unsigned | i | ) |
Definition at line 226 of file factorial.h.
| int vcg::math::factorial_table< int > | ( | unsigned | i | ) |
Definition at line 246 of file factorial.h.
| long double vcg::math::factorial_table< long double > | ( | unsigned | i | ) |
Definition at line 40 of file factorial.h.
| vcg::Point3<ScalarType> vcg::math::GenerateBarycentricUniform | ( | GeneratorType & | rnd | ) |
Generate the barycentric coords of a random point over a single face, with a uniform distribution over the triangle. It uses the parallelogram folding trick.
Definition at line 73 of file random_generator.h.
| vcg::Point3<ScalarType> vcg::math::GeneratePointInBox3Uniform | ( | GeneratorType & | rnd, |
| const Box3< ScalarType > & | bb | ||
| ) |
Generate a random point insidie a box with uniform distribution.
Definition at line 91 of file random_generator.h.
| vcg::Point3<ScalarType> vcg::math::GeneratePointInUnitBallUniform | ( | GeneratorType & | rnd | ) |
generate a point inside a unit sphere with uniform distribution
Definition at line 130 of file random_generator.h.
| vcg::Point3<ScalarType> vcg::math::GeneratePointOnUnitSphereUniform | ( | GeneratorType & | rnd | ) |
Generate a point over the surface of a unit sphere with uniform distribution This is the algorithm proposed by George Marsaglia [1] to generate a point over a unit sphere Independently generate V1 and V2, taken from a uniform distribution on (-1,1) such that S=(V1^2+V2^2)<1.
The random vector is then : (2V1 sqrt(1-S), 2V2 sqrt(1-S),1-2S)
Marsaglia, G. "Choosing a Point from the Surface of a Sphere." Ann. Math. Stat. 43, 645-646, 1972.
Definition at line 112 of file random_generator.h.
| ScalarType vcg::math::inproduct5 | ( | const ScalarType | a[5], |
| const ScalarType | b[5] | ||
| ) | [inline] |
Definition at line 72 of file quadric5.h.
| int vcg::math::IsNAN | ( | T | t | ) |
Definition at line 202 of file vcg/math/base.h.
| const T& vcg::math::Max | ( | const T & | a, |
| const T & | b, | ||
| const T & | c | ||
| ) | [inline] |
Definition at line 147 of file vcg/math/base.h.
| const T& vcg::math::Min | ( | const T & | a, |
| const T & | b, | ||
| const T & | c | ||
| ) | [inline] |
Definition at line 138 of file vcg/math/base.h.
| void vcg::math::normalize_vec3 | ( | ScalarType | v[3] | ) | [inline] |
Definition at line 114 of file quadric5.h.
| void vcg::math::normalize_vec5 | ( | ScalarType | v[5] | ) | [inline] |
Definition at line 103 of file quadric5.h.
| void vcg::math::outproduct5 | ( | const ScalarType | a[5], |
| const ScalarType | b[5], | ||
| ScalarType | r[5][5] | ||
| ) | [inline] |
Definition at line 78 of file quadric5.h.
| void vcg::math::prod_matvec5 | ( | const ScalarType | m[5][5], |
| const ScalarType | v[5], | ||
| ScalarType | r[5] | ||
| ) | [inline] |
Definition at line 86 of file quadric5.h.
| void vcg::math::prod_vecmat5 | ( | ScalarType | v[5], |
| ScalarType | m[5][5], | ||
| ScalarType | r[5] | ||
| ) | [inline] |
Definition at line 96 of file quadric5.h.
| int vcg::math::Sgn | ( | T | val | ) |
Definition at line 190 of file vcg/math/base.h.
| float vcg::math::Sin | ( | const float | v | ) | [inline] |
Definition at line 123 of file vcg/math/base.h.
| double vcg::math::Sin | ( | const double | v | ) | [inline] |
Definition at line 131 of file vcg/math/base.h.
| void vcg::math::Sort | ( | T & | a, |
| T & | b | ||
| ) | [inline] |
Definition at line 157 of file vcg/math/base.h.
| void vcg::math::Sort | ( | T & | a, |
| T & | b, | ||
| T & | c | ||
| ) | [inline] |
Definition at line 160 of file vcg/math/base.h.
| static T vcg::math::Sqr | ( | T | a | ) | [inline, static] |
Definition at line 136 of file vcg/math/base.h.
| float vcg::math::Sqrt | ( | const short | v | ) | [inline] |
Definition at line 117 of file vcg/math/base.h.
| float vcg::math::Sqrt | ( | const int | v | ) | [inline] |
Definition at line 118 of file vcg/math/base.h.
| float vcg::math::Sqrt | ( | const float | v | ) | [inline] |
Definition at line 120 of file vcg/math/base.h.
| double vcg::math::Sqrt | ( | const double | v | ) | [inline] |
Definition at line 128 of file vcg/math/base.h.
| void vcg::math::sub_mat5 | ( | ScalarType | dest[5][5], |
| ScalarType | m[5][5] | ||
| ) | [inline] |
Definition at line 126 of file quadric5.h.
| void vcg::math::sub_symmat5 | ( | ScalarType | dest[15], |
| ScalarType | m[15] | ||
| ) | [inline] |
Definition at line 155 of file quadric5.h.
| void vcg::math::sub_vec5 | ( | const ScalarType | a[5], |
| const ScalarType | b[5], | ||
| ScalarType | r[5] | ||
| ) | [inline] |
Definition at line 62 of file quadric5.h.
| void vcg::math::symprod_vvt5 | ( | ScalarType | dest[15], |
| ScalarType | v[5] | ||
| ) | [inline] |
Definition at line 134 of file quadric5.h.
| float vcg::math::ToDeg | ( | const float & | a | ) | [inline] |
Definition at line 184 of file vcg/math/base.h.
| double vcg::math::ToDeg | ( | const double & | a | ) | [inline] |
Definition at line 186 of file vcg/math/base.h.
| float vcg::math::ToRad | ( | const float & | a | ) | [inline] |
Definition at line 185 of file vcg/math/base.h.
| double vcg::math::ToRad | ( | const double & | a | ) | [inline] |
Definition at line 187 of file vcg/math/base.h.