\( \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.3 - Geometric Object Generators
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
CGAL Namespace Reference

Namespaces

 cpp11
 
 IO
 

Classes

class  Aff_transformation_2
 
class  Aff_transformation_3
 
class  Identity_transformation
 
class  Reflection
 
class  Rotation
 
class  Scaling
 
class  Translation
 
class  Bbox_2
 
class  Bbox_3
 
class  Cartesian
 
class  Cartesian_converter
 
class  Circle_2
 
class  Circle_3
 
class  Ambient_dimension
 
class  Dimension_tag
 
class  Dynamic_dimension_tag
 
class  Feature_dimension
 
class  Direction_2
 
class  Direction_3
 
class  Exact_predicates_exact_constructions_kernel
 
class  Exact_predicates_exact_constructions_kernel_with_sqrt
 
class  Exact_predicates_inexact_constructions_kernel
 
class  Filtered_kernel_adaptor
 
class  Filtered_kernel
 
class  Filtered_predicate
 
class  Homogeneous
 
class  Homogeneous_converter
 
class  Iso_cuboid_3
 
class  Iso_rectangle_2
 
class  Kernel_traits
 
class  Line_2
 
class  Line_3
 
class  Null_vector
 
class  Origin
 
class  Plane_3
 
class  Point_2
 
class  Point_3
 
class  Projection_traits_xy_3
 
class  Projection_traits_xz_3
 
class  Projection_traits_yz_3
 
class  Ray_2
 
class  Ray_3
 
class  Segment_2
 
class  Segment_3
 
class  Simple_cartesian
 
class  Simple_homogeneous
 
class  Sphere_3
 
class  Tetrahedron_3
 
class  Triangle_2
 
class  Triangle_3
 
class  Vector_2
 
class  Vector_3
 
class  Compact_container_base
 
class  Compact_container
 
class  Compact_container_traits
 
class  Compact
 
class  Fast
 
class  Default
 
class  Fourtuple
 
class  Cast_function_object
 
class  Compare_to_less
 
class  Creator_1
 
class  Creator_2
 
class  Creator_3
 
class  Creator_4
 
class  Creator_5
 
class  Creator_uniform_2
 
class  Creator_uniform_3
 
class  Creator_uniform_4
 
class  Creator_uniform_5
 
class  Creator_uniform_6
 
class  Creator_uniform_7
 
class  Creator_uniform_8
 
class  Creator_uniform_9
 
class  Creator_uniform_d
 
class  Dereference
 
class  Get_address
 
class  Identity
 
class  Project_facet
 
class  Project_next
 
class  Project_next_opposite
 
class  Project_normal
 
class  Project_opposite_prev
 
class  Project_plane
 
class  Project_point
 
class  Project_prev
 
class  Project_vertex
 
class  In_place_list_base
 
class  In_place_list
 
class  Const_oneset_iterator
 
class  Counting_iterator
 
class  Dispatch_or_drop_output_iterator
 
class  Dispatch_output_iterator
 
class  Emptyset_iterator
 
class  Filter_iterator
 
class  Insert_iterator
 
class  Inverse_index
 
class  Join_input_iterator_1
 
class  Join_input_iterator_2
 
class  Join_input_iterator_3
 
class  N_step_adaptor
 
class  Oneset_iterator
 
class  Random_access_adaptor
 
class  Random_access_value_adaptor
 
class  Location_policy
 
class  Multiset
 
class  Object
 
class  Sixtuple
 
class  Boolean_tag
 
struct  Null_functor
 
struct  Sequential_tag
 
struct  Parallel_tag
 
class  Null_tag
 
class  Threetuple
 
class  Twotuple
 
class  Uncertain
 
class  Quadruple
 
class  Triple
 
class  Algebraic_structure_traits
 
class  Euclidean_ring_tag
 
class  Field_tag
 
class  Field_with_kth_root_tag
 
class  Field_with_root_of_tag
 
class  Field_with_sqrt_tag
 
class  Integral_domain_tag
 
class  Integral_domain_without_division_tag
 
class  Unique_factorization_domain_tag
 
class  Coercion_traits
 
class  Fraction_traits
 
class  Real_embeddable_traits
 
class  Circulator_from_container
 
class  Circulator_from_iterator
 
class  Circulator_traits
 
class  Container_from_circulator
 
struct  Circulator_tag
 
struct  Iterator_tag
 
struct  Forward_circulator_tag
 
struct  Bidirectional_circulator_tag
 
struct  Random_access_circulator_tag
 
struct  Circulator_base
 
struct  Forward_circulator_base
 
struct  Bidirectional_circulator_base
 
struct  Random_access_circulator_base
 
class  Forward_circulator_ptrbase
 
class  Bidirectional_circulator_ptrbase
 
class  Random_access_circulator_ptrbase
 
class  Color
 
class  Input_rep
 
class  Output_rep
 
class  Istream_iterator
 
class  Ostream_iterator
 
class  Verbose_ostream
 
class  Combination_enumerator
 The class Combination_enumerator is used to enumerate all fixed-size combinations (subsets) of a source range of elements. More...
 
class  Random_points_in_disc_2
 The class Random_points_in_disc_2 is an input iterator creating points uniformly distributed in an open disc. More...
 
class  Random_points_in_square_2
 The class Random_points_in_square_2 is an input iterator creating points uniformly distributed in a half-open square. More...
 
class  Random_points_on_circle_2
 The class Random_points_on_circle_2 is an input iterator creating points uniformly distributed on a circle. More...
 
class  Random_points_on_segment_2
 The class Random_points_on_segment_2 is an input iterator creating points uniformly distributed on a segment. More...
 
class  Random_points_on_square_2
 The class Random_points_on_square_2 is an input iterator creating points uniformly distributed on the boundary of a square. More...
 
class  Points_on_segment_2
 The class Points_on_segment_2 is a generator for points on a segment whose endpoints are specified upon construction. More...
 
class  Random_points_in_cube_3
 The class Random_points_in_cube_3 is an input iterator creating points uniformly distributed in a half-open cube. More...
 
class  Random_points_in_sphere_3
 The class Random_points_in_sphere_3 is an input iterator creating points uniformly distributed in an open sphere. More...
 
class  Random_points_on_sphere_3
 The class Random_points_on_sphere_3 is an input iterator creating points uniformly distributed on a sphere. More...
 
class  Random_points_in_ball_d
 The class Random_points_in_ball_d is an input iterator creating points uniformly distributed in an open ball in any dimension. More...
 
class  Random_points_in_cube_d
 The class Random_points_in_cube_d is an input iterator creating points uniformly distributed in an half-open cube. More...
 
class  Random_points_on_sphere_d
 The class Random_points_on_sphere_d is an input iterator creating points uniformly distributed on a sphere. More...
 
class  Random
 The class Random is a random numbers generator. More...
 
class  Random_convex_set_traits_2
 The class Random_convex_set_traits_2 serves as a traits class for the function random_convex_set_2(). More...
 

Typedefs

typedef Interval_nt< false > Interval_nt_advanced
 

Functions

NT abs (const NT &x)
 
result_type compare (const NT &x, const NT &y)
 
result_type div (const NT1 &x, const NT2 &y)
 
void div_mod (const NT1 &x, const NT2 &y, result_type &q, result_type &r)
 
result_type gcd (const NT1 &x, const NT2 &y)
 
result_type integral_division (const NT1 &x, const NT2 &y)
 
NT inverse (const NT &x)
 
result_type is_negative (const NT &x)
 
result_type is_one (const NT &x)
 
result_type is_positive (const NT &x)
 
result_type is_square (const NT &x)
 
result_type is_square (const NT &x, NT &y)
 
result_type is_zero (const NT &x)
 
NT kth_root (int k, const NT &x)
 
result_type mod (const NT1 &x, const NT2 &y)
 
NT root_of (int k, InputIterator begin, InputIterator end)
 
result_type sign (const NT &x)
 
void simplify (const NT &x)
 
NT sqrt (const NT &x)
 
NT square (const NT &x)
 
double to_double (const NT &x)
 
std::pair< double, double > to_interval (const NT &x)
 
NT unit_part (const NT &x)
 
void Assert_circulator (const C &c)
 
void Assert_iterator (const I &i)
 
void Assert_circulator_or_iterator (const IC &i)
 
void Assert_input_category (const I &i)
 
void Assert_output_category (const I &i)
 
void Assert_forward_category (const IC &ic)
 
void Assert_bidirectional_category (const IC &ic)
 
void Assert_random_access_category (const IC &ic)
 
C::difference_type circulator_distance (C c, C d)
 
C::size_type circulator_size (C c)
 
bool is_empty_range (const IC &i, const IC &j)
 
iterator_traits< IC >
::difference_type 
iterator_distance (IC ic1, IC ic2)
 
Iterator_tag query_circulator_or_iterator (const I &i)
 
Circulator_tag query_circulator_or_iterator (const C &c)
 
Mode get_mode (std::ios &s)
 
Mode set_ascii_mode (std::ios &s)
 
Mode set_binary_mode (std::ios &s)
 
Mode set_mode (std::ios &s, IO::Mode m)
 
Mode set_pretty_mode (std::ios &s)
 
bool is_ascii (std::ios &s)
 
bool is_binary (std::ios &s)
 
bool is_pretty (std::ios &s)
 
Output_rep< T > oformat (const T &t)
 
Input_rep< T > iformat (const T &t)
 
Output_rep< T, F > oformat (const T &t, F)
 
ostream & operator<< (ostream &os, Class c)
 
istream & operator>> (istream &is, Class c)
 
Polynomial_traits_d
< Polynomial_d >
::Canonicalize::result_type 
canonicalize (const Polynomial_d &p)
 
Polynomial_traits_d
< Polynomial_d >
::Compare::result_type 
compare (const Polynomial_d &p, const Polynomial_d &q)
 
Polynomial_traits_d
< Polynomial_d >
::Degree::result_type 
degree (const Polynomial_d &p, int i, index=Polynomial_traits_d< Polynomial_d >::d-1)
 
Polynomial_traits_d
< Polynomial_d >
::Degree_vector::result_type 
degree_vector (const Polynomial_d &p)
 
Polynomial_traits_d
< Polynomial_d >
::Differentiate::result_type 
differentiate (const Polynomial_d &p, index=Polynomial_traits_d< Polynomial_d >::d-1)
 
Polynomial_traits_d
< Polynomial_d >
::Evaluate_homogeneous::result_type 
evaluate_homogeneous (const Polynomial_d &p, Polynomial_traits_d< Polynomial_d >::Coefficient_type u, Polynomial_traits_d< Polynomial_d >::Coefficient_type v)
 
Polynomial_traits_d
< Polynomial_d >
::Evaluate::result_type 
evaluate (const Polynomial_d &p, Polynomial_traits_d< Polynomial_d >::Coefficient_type x)
 
Polynomial_traits_d
< Polynomial_d >
::Gcd_up_to_constant_factor::result_type 
gcd_up_to_constant_factor (const Polynomial_d &p, const Polynomial_d &q)
 
Polynomial_traits_d
< Polynomial_d >
::get_coefficient::result_type 
get_coefficient (const Polynomial_d &p, int i)
 
Polynomial_traits_d
< Polynomial_d >
::get_innermost_coefficient::result_type 
get_innermost_coefficient (const Polynomial_d &p, Exponent_vector ev)
 
Polynomial_traits_d
< Polynomial_d >
::Innermost_leading_coefficient::result_type 
innermost_leading_coefficient (const Polynomial_d &p)
 
Polynomial_traits_d
< Polynomial_d >
::Integral_division_up_to_constant_factor::result_type 
integral_division_up_to_constant_factor (const Polynomial_d &p, const Polynomial_d &q)
 
Polynomial_traits_d
< Polynomial_d >
::Invert::result_type 
invert (const Polynomial_d &p, int index=Polynomial_traits_d< Polynomial_d >::d-1)
 
Polynomial_traits_d
< Polynomial_d >
::Is_square_free::result_type 
is_square_free (const Polynomial_d &p)
 
Polynomial_traits_d
< Polynomial_d >
::Is_zero_at_homogeneous::result_type 
is_zero_at_homogeneous (const Polynomial_d &p, InputIterator begin, InputIterator end)
 
Polynomial_traits_d
< Polynomial_d >
::Is_zero_at::result_type 
is_zero_at (const Polynomial_d &p, InputIterator begin, InputIterator end)
 
Polynomial_traits_d
< Polynomial_d >
::Leading_coefficient::result_type 
leading_coefficient (const Polynomial_d &p)
 
Polynomial_traits_d
< Polynomial_d >
::Make_square_free::result_type 
make_square_free (const Polynomial_d &p)
 
Polynomial_traits_d
< Polynomial_d >
::Move::result_type 
move (const Polynomial_d &p, int i, int j)
 
Polynomial_traits_d
< Polynomial_d >
::Multivariate_content::result_type 
multivariate_content (const Polynomial_d &p)
 
Polynomial_traits_d
< Polynomial_d >
::Negate::result_type 
negate (const Polynomial_d &p, int index=Polynomial_traits_d< Polynomial_d >::d-1)
 
int number_of_real_roots (Polynomial_d f)
 
int number_of_real_roots (InputIterator start, InputIterator end)
 
Polynomial_traits_d
< Polynomial_d >
::Permute::result_type 
permute (const Polynomial_d &p, InputIterator begin, InputIterator end)
 
OutputIterator polynomial_subresultants (Polynomial_d p, Polynomial_d q, OutputIterator out)
 
OutputIterator1 polynomial_subresultants_with_cofactors (Polynomial_d p, Polynomial_d q, OutputIterator1 sres_out, OutputIterator2 coP_out, OutputIterator3 coQ_out)
 
OutputIterator principal_sturm_habicht_sequence (typename Polynomial_d f, OutputIterator out)
 
OutputIterator principal_subresultants (Polynomial_d p, Polynomial_d q, OutputIterator out)
 
void pseudo_division (const Polynomial_d &f, const Polynomial_d &g, Polynomial_d &q, Polynomial_d &r, Polynomial_traits_d< Polynomial_d >::Coefficient_type &D)
 
Polynomial_traits_d
< Polynomial_d >
::Pseudo_division_quotient::result_type 
pseudo_division_quotient (const Polynomial_d &p, const Polynomial_d &q)
 
Polynomial_traits_d
< Polynomial_d >
::Pseudo_division_remainder::result_type 
pseudo_division_remainder (const Polynomial_d &p, const Polynomial_d &q)
 
Polynomial_traits_d
< Polynomial_d >
::Resultant::result_type 
resultant (const Polynomial_d &p, const Polynomial_d &q)
 
Polynomial_traits_d
< Polynomial_d >
::Scale_homogeneous::result_type 
scale_homogeneous (const Polynomial_d &p, const Polynomial_traits_d< Polynomial_d >::Innermost_coefficient_type &u, const Polynomial_traits_d< Polynomial_d >::Innermost_coefficient_type &v, int index=Polynomial_traits_d< Polynomial_d >::d-1)
 
Polynomial_traits_d
< Polynomial_d >
::Scale::result_type 
scale (const Polynomial_d &p, const Polynomial_traits_d< Polynomial_d >::Innermost_coefficient_type &a, int index=Polynomial_traits_d< Polynomial_d >::d-1)
 
Polynomial_traits_d
< Polynomial_d >
::Shift::result_type 
shift (const Polynomial_d &p, int i, int index=Polynomial_traits_d< Polynomial_d >::d-1)
 
Polynomial_traits_d
< Polynomial_d >
::Sign_at_homogeneous::result_type 
sign_at_homogeneous (const Polynomial_d &p, InputIterator begin, InputIterator end)
 
Polynomial_traits_d
< Polynomial_d >
::Sign_at::result_type 
sign_at (const Polynomial_d &p, InputIterator begin, InputIterator end)
 
OutputIterator square_free_factorize (const Polynomial_d &p, OutputIterator it, Polynomial_traits_d< Polynomial >::Innermost_coefficient &a)
 
OutputIterator square_free_factorize (const Polynomial_d &p, OutputIterator it)
 
OutputIterator square_free_factorize_up_to_constant_factor (const Polynomial_d &p, OutputIterator it)
 
OutputIterator sturm_habicht_sequence (Polynomial_d f, OutputIterator out)
 
OutputIterator1 sturm_habicht_sequence_with_cofactors (Polynomial_d f, OutputIterator1 stha_out, OutputIterator2 cof_out, OutputIterator3 cofx_out)
 
CGAL::Coercion_traits
< Polynomial_traits_d
< Polynomial_d >
::Innermost_coefficient,
std::iterator_traits
< Input_iterator >::value_type >
::Type 
substitute_homogeneous (const Polynomial_d &p, InputIterator begin, InputIterator end)
 
CGAL::Coercion_traits
< Polynomial_traits_d
< Polynomial_d >
::Innermost_coefficient,
std::iterator_traits
< Input_iterator >::value_type >
::Type 
substitute (const Polynomial_d &p, InputIterator begin, InputIterator end)
 
Polynomial_traits_d
< Polynomial_d >
::Swap::result_type 
swap (const Polynomial_d &p, int i, int j)
 
Polynomial_traits_d
< Polynomial_d >
::Total_degree::result_type 
total_degree (const Polynomial_d &p)
 
Polynomial_traits_d
< Polynomial_d >
::Translate_homogeneous::result_type 
translate_homogeneous (const Polynomial_d &p, const Polynomial_traits_d< Polynomial_d >::Innermost_coefficient_type &u, const Polynomial_traits_d< Polynomial_d >::Innermost_coefficient_type &v, int index=Polynomial_traits_d< Polynomial_d >::d-1)
 
Polynomial_traits_d
< Polynomial_d >
::Translate::result_type 
translate (const Polynomial_d &p, const Polynomial_traits_d< Polynomial_d >::Innermost_coefficient_type &a, int index=Polynomial_traits_d< Polynomial_d >::d-1)
 
Polynomial_traits_d
< Polynomial_d >
::Univariate_content::result_type 
univariate_content (const Polynomial_d &p)
 
Polynomial_traits_d
< Polynomial_d >
::Univariate_content_up_to_constant_factor::result_type 
univariate_content_up_to_constant_factor (const Polynomial_d &p)
 
bool has_in_x_range (const Circular_arc_2< CircularKernel > &ca, const Circular_arc_point_2< CircularKernel > &p)
 
bool has_in_x_range (const Line_arc_2< CircularKernel > &ca, const Circular_arc_point_2< CircularKernel > &p)
 
bool has_on (const Circle_2< CircularKernel > &c, const Circular_arc_point_2< CircularKernel > &p)
 
OutputIterator make_x_monotone (const Circular_arc_2< CircularKernel > &ca, OutputIterator res)
 
OutputIterator make_xy_monotone (const Circular_arc_2< CircularKernel > &ca, OutputIterator res)
 
Circular_arc_point_2
< CircularKernel > 
x_extremal_point (const Circle_2< CircularKernel > &c, bool b)
 
OutputIterator x_extremal_points (const Circle_2< CircularKernel > &c, OutputIterator res)
 
Circular_arc_point_2
< CircularKernel > 
y_extremal_point (const Circle_2< CircularKernel > &c, bool b)
 
OutputIterator y_extremal_points (const Circle_2< CircularKernel > &c, OutputIterator res)
 
CGAL::Comparison_result compare_y_to_right (const Circular_arc_2< CircularKernel > &ca1, const Circular_arc_2< CircularKernel > &ca2, Circular_arc_point_2< CircularKernel > &p)
 
bool is_finite (double x)
 
bool is_finite (float x)
 
bool is_finite (long double x)
 
OutputIterator compute_roots_of_2 (const RT &a, const RT &b, const RT &c, OutputIterator oit)
 
Root_of_traits< RT >::Root_of_2 make_root_of_2 (const RT &a, const RT &b, const RT &c, bool s)
 
Root_of_traits< RT >::Root_of_2 make_root_of_2 (RT alpha, RT beta, RT gamma)
 
Root_of_traits< RT >::Root_of_2 make_sqrt (const RT &x)
 
Rational simplest_rational_in_interval (double d1, double d2)
 
Rational to_rational (double d)
 
bool is_valid (const T &x)
 
max (const T &x, const T &y)
 
min (const T &x, const T &y)
 
template<class ForwardIterator , class Creator >
void perturb_points_2 (ForwardIterator first, ForwardIterator last, double xeps, double yeps=xeps, Random &rnd=default_random, Creator creator=Creator_uniform_2< Kernel_traits< P >::Kernel::RT, P >)
 perturbs each point in a given range of points by a random amount. More...
 
template<class P , class OutputIterator >
OutputIterator points_on_segment_2 (const P &p, const P &q, std::size_t n, OutputIterator o)
 generates a set of points equally spaced on a segment given the endpoints of the segment. More...
 
template<class OutputIterator , class Creator >
OutputIterator points_on_square_grid_2 (double a, std::size_t n, OutputIterator o, Creator creator=Creator_uniform_2< Kernel_traits< P >::Kernel::RT, P >)
 generates a given number of points on a square grid whose size is determined by the number of points to be generated. More...
 
template<class RandomAccessIterator , class OutputIterator , class Creator >
OutputIterator random_collinear_points_2 (RandomAccessIterator first, RandomAccessIterator last, std::size_t n, OutputIterator first2, Random &rnd=default_random, Creator creator=Creator_uniform_2< Kernel_traits< P >::Kernel::RT, P >)
 randomly chooses two points from the range [first,last), creates a random third point on the segment connecting these two points, writes it to first2, and repeats this \( n\) times, thus writing \( n\) points to first2 that are collinear with points in the range [first,last). More...
 
template<class OutputIterator , class Creator >
OutputIterator points_on_cube_grid_3 (double a, std::size_t n, OutputIterator o, Creator creator=Creator_uniform_3< Kernel_traits< Point_3 >::Kernel::RT, Point_3 >)
 generates a given number of points on a cubic grid whose size is determined by the number of points to be generated. More...
 
template<class OutputIterator , class Creator >
OutputIterator points_on_cube_grid_d (int dim, double a, std::size_t n, OutputIterator o, Creator creator)
 generates a given number of points on a cubic grid in any dimension whose size is determined by the number of points to be generated. More...
 
template<class OutputIterator , class PointGenerator , class Traits >
OutputIterator random_convex_set_2 (std::size_t n, OutputIterator o, const PointGenerator &pg, Traits t=Random_convex_set_traits_2)
 computes a random convex planar point set of given size where the points are drawn from a specific domain. More...
 
template<class OutputIterator , class PointGenerator , class Traits >
OutputIterator random_polygon_2 (std::size_t n, OutputIterator result, const PointGenerator &pg, Traits t=Default_traits)
 computes a random simple polygon by writing its vertices (oriented counterclockwise) to result. More...
 
template<class RandomAccessIterator , class Size , class OutputIterator , class Random >
OutputIterator random_selection (RandomAccessIterator first, RandomAccessIterator last, Size n, OutputIterator result, Random &rnd=default_random)
 chooses n items at random from a random access iterator range which is useful to produce degenerate input data sets with multiple entries of identical items. More...
 

Variables

Random default_random
 The variable default_random is the default random numbers generator used for the generator functions and classes.