Classes | Typedefs | Functions
vcg::math Namespace Reference

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< ScalarTypeGenerateBarycentricUniform (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< ScalarTypeGeneratePointInBox3Uniform (GeneratorType &rnd, const Box3< ScalarType > &bb)
 Generate a random point insidie a box with uniform distribution.
template<class ScalarType , class GeneratorType >
vcg::Point3< ScalarTypeGeneratePointInUnitBallUniform (GeneratorType &rnd)
 generate a point inside a unit sphere with uniform distribution
template<class ScalarType , class GeneratorType >
vcg::Point3< ScalarTypeGeneratePointOnUnitSphereUniform (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 TMax (const T &a, const T &b, const T &c)
template<class T >
const TMin (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 Documentation

typedef Quadric<double> vcg::math::Quadricd

Definition at line 334 of file quadric.h.

typedef Quadric<float> vcg::math::Quadricf

Definition at line 333 of file quadric.h.

Definition at line 332 of file quadric.h.

typedef Quadric<short> vcg::math::Quadrics

Definition at line 331 of file quadric.h.

typedef double vcg::math::ScalarType

Definition at line 59 of file quadric5.h.


Function Documentation

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.

template<class SCALAR >
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.

template<typename ScalarType >
ScalarType vcg::math::Factorial ( unsigned  i)

Definition at line 272 of file factorial.h.

template<typename ScalarType >
ScalarType vcg::math::factorial_table ( unsigned  i)

Definition at line 252 of file factorial.h.

template<>
double vcg::math::factorial_table< double > ( unsigned  i)

Definition at line 220 of file factorial.h.

template<>
float vcg::math::factorial_table< float > ( unsigned  i)

Definition at line 226 of file factorial.h.

template<>
int vcg::math::factorial_table< int > ( unsigned  i)

Definition at line 246 of file factorial.h.

template<>
long double vcg::math::factorial_table< long double > ( unsigned  i)

Definition at line 40 of file factorial.h.

template<class ScalarType , class GeneratorType >
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.

template<class ScalarType , class GeneratorType >
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.

template<class ScalarType , class GeneratorType >
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.

template<class ScalarType , class GeneratorType >
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.

template<class T >
int vcg::math::IsNAN ( T  t)

Definition at line 202 of file vcg/math/base.h.

template<class T >
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.

template<class T >
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.

template<typename T >
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.

template<class T >
void vcg::math::Sort ( T a,
T b 
) [inline]

Definition at line 157 of file vcg/math/base.h.

template<class T >
void vcg::math::Sort ( T a,
T b,
T c 
) [inline]

Definition at line 160 of file vcg/math/base.h.

template<typename T >
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.



shape_reconstruction
Author(s): Roberto Martín-Martín
autogenerated on Sat Jun 8 2019 18:41:49