算法来自于PBRT CH13
std::default_random_engine eng(time(NULL));
std::uniform_real_distribution<> urd(0., 1.);
std::vector<osg::Vec3d> PTs2;
for (int i = 0; i < 10000; i++)
{
double r1 = urd(eng);
double r2 = urd(eng);
double sqrt_r1 = std::sqrt(r1);
double u = 1 - sqrt_r1;
double v = r2 * sqrt_r1;
double w = 1 - u - v;
osg::Vec3d p = P1 * u + P2 * v + PT3 * w;
PTs2.push_back(p);
}