#include <CGAL/point_generators_2.h>
template<typename Point_2, typename Creator>
class CGAL::Random_points_in_triangle_2< Point_2, Creator >
The class Random_points_in_triangle_2
is an input iterator creating points uniformly distributed inside a triangle.
The default Creator
is Creator_uniform_2<Kernel_traits<Point_2>::Kernel::RT,Point_2>
.
- Is model of
InputIterator
PointGenerator
- See also
CGAL::Points_on_segment_2<Point_2>
-
CGAL::Random_points_in_disc_2<Point_2, Creator>
-
CGAL::Random_points_on_segment_2<Point_2, Creator>
-
CGAL::Random_points_on_square_2<Point_2, Creator>
-
CGAL::Random_points_in_cube_3<Point_3, Creator>
-
CGAL::Random_points_in_triangle_3<Point_2, Creator>
-
CGAL::Random_points_in_tetrahedron_3<Point_2, Creator>
- Examples
- Generator/random_points_triangle_2.cpp.
|
typedef std::input_iterator_tag | iterator_category |
|
typedef Point_2 | value_type |
|
typedef std::ptrdiff_t | difference_type |
|
typedef const Point_2 * | pointer |
|
typedef const Point_2 & | reference |
|
| Random_points_in_triangle_2 (Point_2 &p, Point_2 &q, Point_2 &r, Random &rnd=get_default_random()) |
| Creates an input iterator g generating points of type Point_2 uniformly distributed inside the triangle with vertices \( p, q \) and \( r \), i.e., \(*g = \alpha p + \beta q + \gamma r \), for some \( \alpha, \beta, \gamma \in [0, 1] \) and \( \alpha + \beta + \gamma = 1 \).
|
|
| Random_points_in_triangle_2 (Triangle_2 &t, Random &rnd=get_default_random()) |
| Creates an input iterator g generating points of type Point_2 uniformly distributed inside a triangle \(t\) with vertices \( p, q \) and \( r \), i.e., \(*g = \alpha p + \beta q + \gamma r \), for some \( \alpha, \beta, \gamma \in [0, 1] \) and \( \alpha + \beta + \gamma = 1 \).
|
|
◆ difference_type
template<typename Point_2 , typename Creator >
◆ iterator_category
template<typename Point_2 , typename Creator >
◆ pointer
template<typename Point_2 , typename Creator >
◆ reference
template<typename Point_2 , typename Creator >
◆ value_type
template<typename Point_2 , typename Creator >
◆ Random_points_in_triangle_2() [1/2]
template<typename Point_2 , typename Creator >
Creates an input iterator g
generating points of type Point_2
uniformly distributed inside the triangle with vertices \( p, q \) and \( r \), i.e., \(*g = \alpha p + \beta q + \gamma r \), for some \( \alpha, \beta, \gamma \in [0, 1] \) and \( \alpha + \beta + \gamma = 1 \).
Two random numbers are needed from rnd
for each point.
◆ Random_points_in_triangle_2() [2/2]
template<typename Point_2 , typename Creator >
Creates an input iterator g
generating points of type Point_2
uniformly distributed inside a triangle \(t\) with vertices \( p, q \) and \( r \), i.e., \(*g = \alpha p + \beta q + \gamma r \), for some \( \alpha, \beta, \gamma \in [0, 1] \) and \( \alpha + \beta + \gamma = 1 \).
Two random numbers are needed from rnd
for each point.