CGAL 5.0.1 - Geometric Object Generators
|
#include <CGAL/point_generators_2.h>
The class Random_points_on_segment_2
is an input iterator creating points uniformly distributed on a segment.
The default Creator
is Creator_uniform_2<Kernel_traits<Point_2>Kernel::RT,Point_2>
.
std::copy_n()
CGAL::Counting_iterator
CGAL::Points_on_segment_2<Point_2>
CGAL::Random_points_in_disc_2<Point_2, Creator>
CGAL::Random_points_in_square_2<Point_2, Creator>
CGAL::Random_points_in_triangle_2<Point_2, Creator>
CGAL::Random_points_on_circle_2<Point_2, Creator>
CGAL::Random_points_on_square_2<Point_2, Creator>
std::random_shuffle
Types | |
typedef std::input_iterator_tag | iterator_category |
typedef Point_2 | value_type |
typedef std::ptrdiff_t | difference_type |
const typedef Point_2 * | pointer |
const typedef Point_2 & | reference |
Random_points_on_segment_2 (const Point_2 &p, const Point_2 &q, Random &rnd=get_default_random()) | |
creates an input iterator g generating points of type Point_2 uniformly distributed on the segment from \( p\) to \( q\) (excluding \( q\)), i.e. \( *g == (1-\lambda)\, p + \lambda q\) where \( 0 \le\lambda< 1\). More... | |
CGAL::Random_points_on_segment_2< Point_2, Creator >::Random_points_on_segment_2 | ( | const Point_2 & | p, |
const Point_2 & | q, | ||
Random & | rnd = get_default_random() |
||
) |
creates an input iterator g
generating points of type Point_2
uniformly distributed on the segment from \( p\) to \( q\) (excluding \( q\)), i.e. \( *g == (1-\lambda)\, p + \lambda q\) where \( 0 \le\lambda< 1\).
A single random number is needed from rnd
for each point. The expressions to_double(p.x())
and to_double(p.y())
must result in the respective double
representation of the coordinates of \( p\), and similarly for \( q\).