40 #include <visp3/core/vpGaussRand.h> 49 double vpGaussRand::gaussianDraw()
52 m_AlreadyDone =
false;
57 double v1 = 0, v2 = 0, rsq = 0;
59 v1 = 2 * m_rng.
uniform(0.0, 1.0) - 1;
60 v2 = 2 * m_rng.
uniform(0.0, 1.0) - 1;
61 rsq = v1 * v1 + v2 * v2;
64 double fac = sqrt(-2 * log(rsq) / rsq);
int uniform(int a, int b)