MCPcopy Create free account
hub / github.com/comaps/comaps / GetRandomPointInsideTriangle

Function GetRandomPointInsideTriangle

libs/geometry/triangle2d.cpp:44–54  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

42}
43
44PointD GetRandomPointInsideTriangle(TriangleD const & t)
45{
46 size_t constexpr kDistribMax = 1000;
47
48 auto const seed = static_cast<uint32_t>(std::chrono::system_clock::now().time_since_epoch().count());
49 std::default_random_engine engine{seed};
50 std::uniform_int_distribution<size_t> distrib{0, kDistribMax};
51 double const r1 = sqrt(static_cast<double>(distrib(engine)) / kDistribMax);
52 double const r2 = static_cast<double>(distrib(engine)) / kDistribMax;
53 return t.m_points[0] * (1.0 - r1) + t.m_points[1] * r1 * (1.0 - r2) + t.m_points[2] * r2 * r1;
54}
55
56PointD GetRandomPointInsideTriangles(std::vector<TriangleD> const & v)
57{

Callers 1

Calls 1

countMethod · 0.45

Tested by

no test coverage detected