CGAL 4.7 - Geometric Object Generators: CGAL::Random_points_on_sphere_3< Point_3, Creator > Class Template Reference

\( \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.7 - Geometric Object Generators

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
List of all members
CGAL::Random_points_on_sphere_3< Point_3, Creator > Class Template Reference

`#include <CGAL/point_generators_3.h>`

## Definition

The class `Random_points_on_sphere_3` is an input iterator creating points uniformly distributed on a sphere.

The default `Creator` is `Creator_uniform_3<Kernel_traits<Point_3>Kernel::RT,Point_3>`. The generated points are computed using floating point arithmetic, whatever the Kernel is, thus they are on the circle/sphere only up to rounding errors.

Is Model Of:

  `InputIterator`

  `PointGenerator`

See Also
  `CGAL::cpp11::copy_n()`
  `CGAL::Counting_iterator`
  `CGAL::Random_points_on_circle_2<Point_2, Creator>`
  `CGAL::Random_points_in_cube_3<Point_3, Creator>`
  `CGAL::Random_points_in_sphere_3<Point_3, Creator>`
  `std::random_shuffle`

## Types

typedef std::input_iterator_tag | iterator_category
typedef Point_3 | value_type
typedef std::ptrdiff_t | difference_type
typedef const Point_3 * | pointer
typedef const Point_3 & | reference
| Random_points_on_sphere_3 (double r, Random &rnd=default_random)
| creates an input iterator `g` generating points of type `Point_3` uniformly distributed on the boundary of a sphere with radius \( r\), i.e. \( |*g| == r\) . More...

## Constructor & Destructor Documentation

template<typename Point_3 , typename Creator >

CGAL::Random_points_on_sphere_3< Point_3, Creator >::Random_points_on_sphere_3 | ( | double | r,
|  | Random & | rnd = `default_random`
| ) |  |

creates an input iterator `g` generating points of type `Point_3` uniformly distributed on the boundary of a sphere with radius \( r\), i.e. \( |*g| == r\) .

Two random numbers are needed from `rnd` for each point.