CGAL::Random_points_on_segment_2<Point_2, Creator>

Definition

The class Random_points_on_segment_2<Point_2, Creator> is an input iterator creating points uniformly distributed on a segment. The default Creator is Creator_uniform_2<Kernel_traits<P>::Kernel::RT,P>.

Is Model for the Concepts

InputIterator
PointGenerator

#include <CGAL/point_generators_2.h>

Types

typedef std::input_iterator_tag iterator_category;
typedef Point_2 value_type;
typedef std::ptrdiff_t difference_type;
typedef const Point_2* pointer;
typedef Point_2 reference;

Operations

Random_points_on_segment_2<Point_2, Creator> g ( Point_2 p, Point_2 q, Random& rnd = default_random);
g is an input iterator creating points of type Point_2 uniformly distributed on the segment from p to q (excluding q), i.e. *g == (1-λ) p + λq where 0 λ< 1 . A single random number is needed from rnd for each point.
Requirement: 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.

See Also

CGAL::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_on_circle_2<Point_2, Creator>
CGAL::Random_points_on_square_2<Point_2, Creator>
std::random_shuffle