\( \newcommand{\E}{\mathrm{E}} \) \( \newcommand{\A}{\mathrm{A}} \) \( \newcommand{\R}{\mathrm{R}} \) \( \newcommand{\N}{\mathrm{N}} \) \( \newcommand{\Q}{\mathrm{Q}} \) \( \newcommand{\Z}{\mathrm{Z}} \) \( \def\ccSum #1#2#3{ \sum_{#1}^{#2}{#3} } \def\ccProd #1#2#3{ \sum_{#1}^{#2}{#3} }\)

CGAL 4.8 - Geometric Object Generators

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
List of all members
CGAL::Random_points_in_ball_d< Point_d > Class Template Reference

`#include <CGAL/point_generators_d.h>`

## Definition

The class `Random_points_in_ball_d` is an input iterator creating points uniformly distributed in an open ball in any dimension.

Is Model Of:

  `InputIterator`

  `PointGenerator`

See Also
  `CGAL::cpp11::copy_n()`
  `CGAL::Counting_iterator`
  `CGAL::Random_points_in_disc_2<Point_2, Creator>`
  `CGAL::Random_points_in_sphere_3<Point_3, Creator>`
  `CGAL::Random_points_in_cube_d<Point_d>`
  `CGAL::Random_points_on_sphere_d<Point_d>`

Examples:
  Generator/ball_d.cpp.

## Types
typedef std::input_iterator_tag | iterator_category
typedef Point_d | value_type
typedef std::ptrdiff_t | difference_type
typedef const Point_d * | pointer
typedef const Point_d & | reference

## Operations
| Random_points_in_ball_d (int dim, double r)
| \( g\) is an input iterator creating points of type `Point_d` uniformly distributed in the open ball in dimension \( dim\) with radius \( r\), i.e. \( |*g| < r\) . More...

## Constructor & Destructor Documentation

template<typename Point_d>

CGAL::Random_points_in_ball_d< Point_d >::Random_points_in_ball_d | ( | int | dim,
|  | double | r
| ) |  |

\( g\) is an input iterator creating points of type `Point_d` uniformly distributed in the open ball in dimension \( dim\) with radius \( r\), i.e. \( |*g| < r\) .

\( 2\cdot dim+1\) random numbers are needed from `rnd` for each point.