\( \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 - 2D Arrangements
 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  Gps_default_dcel
 
class  General_polygon_2
 
class  General_polygon_set_2
 
class  General_polygon_with_holes_2
 
class  Gps_circle_segment_traits_2
 
class  Gps_segment_traits_2
 
class  Gps_traits_2
 
class  Polygon_set_2
 
class  Polygon_with_holes_2
 
class  Protect_FPU_rounding
 
class  Set_ieee_double_precision
 
class  Gmpfi
 
class  Gmpfr
 
class  Gmpq
 
class  Gmpz
 
class  Gmpzf
 
class  Interval_nt
 
class  Lazy_exact_nt
 
class  MP_Float
 
class  NT_converter
 
class  Number_type_checker
 
class  Quotient
 
class  Rational_traits
 
class  Root_of_traits
 
class  Sqrt_extension
 
class  Is_valid
 
class  Max
 
class  Min
 
class  Algebraic_kernel_for_circles_2_2
 
class  Circular_arc_2
 
class  Circular_arc_point_2
 
class  Circular_kernel_2
 
class  Exact_circular_kernel_2
 
class  Line_arc_2
 
class  Polynomial_1_2
 
class  Polynomial_for_circles_2_2
 
class  Root_for_circles_2_2
 
class  Algebraic_kernel_d_1
 
class  Algebraic_kernel_d_2
 
class  Algebraic_kernel_rs_gmpq_d_1
 
class  Algebraic_kernel_rs_gmpz_d_1
 
class  Arr_accessor
 
class  Arr_algebraic_segment_traits_2
 The traits class Arr_algebraic_segment_traits_2 is a model of the ArrangementTraits_2 concept that handles planar algebraic curves of arbitrary degree, and \( x\)-monotone of such curves. More...
 
class  Arr_Bezier_curve_traits_2
 The traits class Arr_Bezier_curve_traits_2 is a model of the ArrangementTraits_2 concept that handles planar Bézier curves. More...
 
class  Arr_circle_segment_traits_2
 The class Arr_circle_segment_traits_2 is a model of the ArrangementTraits_2 concept and can be used to construct and maintain arrangements of circular arcs and line segments. More...
 
class  Arr_circular_arc_traits_2
 This class is a traits class for CGAL arrangements, built on top of a model of concept CircularKernel. More...
 
class  Arr_circular_line_arc_traits_2
 This class is a traits class for CGAL arrangements, built on top of a model of concept CircularKernel. More...
 
class  Arr_conic_traits_2
 The class Arr_conic_traits_2 is a model of the ArrangementTraits_2 concept and can be used to construct and maintain arrangements of bounded segments of algebraic curves of degree \( 2\) at most, also known as conic curves. More...
 
class  Arr_consolidated_curve_data_traits_2
 The class Arr_consolidated_curve_data_traits_2 is a model of the concept ArrangementTraits_2, and serves as a decorator class that enables the extension of the curve type defined by the Traits parameter. More...
 
class  Arr_curve_data_traits_2
 The class Arr_curve_data_traits_2 is a model of the ArrangementTraits_2 concept and serves as a decorator class that allows the extension of the curves defined by the base traits-class (the Tr parameter), which serves as a geometric traits-class (a model of the ArrangementTraits_2 concept), with extraneous (non-geometric) data fields. More...
 
class  Arr_dcel_base
 
class  Arr_default_dcel
 The default Dcel class used by the Arrangement_2 class-template is parameterized by a traits class, which is a model of the ArrangementBasicTraits_2 concept. More...
 
class  Arr_default_overlay_traits
 An instance of Arr_default_overlay_traits should be used for overlaying two arrangements of type Arrangement that store no auxiliary data with their Dcel records, where the resulting overlaid arrangement stores no auxiliary Dcel data as well. More...
 
class  Arr_face_overlay_traits
 An instance of Arr_face_overlay_traits should be used for overlaying two arrangements of types Arr_A and Arr_B, which are instantiated using the same geometric traits-class and with the Dcel classes Dcel_A and Dcel_B respectively, in order to store their overlay in an arrangement of type Arr_R, which is instantiated using a third Dcel class Dcel_R. More...
 
class  Arr_extended_dcel
 The Arr_extended_dcel class-template extends the topological-features of the Dcel namely the vertex, halfedge, and face types. More...
 
class  Arr_extended_face
 The Arr_extended_face class-template extends the face topological-features of the Dcel. More...
 
class  Arr_extended_halfedge
 The Arr_extended_halfedge class-template extends the halfedge topological-features of the Dcel. More...
 
class  Arr_extended_vertex
 The Arr_extended_vertex class-template extends the vertex topological-features of the Dcel. More...
 
class  Arr_face_extended_dcel
 The Arr_face_extended_dcel class-template extends the Dcel face-records, making it possible to store extra (non-geometric) data with the arrangement faces. More...
 
class  Arr_face_index_map
 Arr_face_index_map maintains a mapping of face handles of an attached arrangement object to indices (of type unsigned int). More...
 
class  Arr_landmarks_point_location
 
class  Arr_line_arc_traits_2
 This class is a traits class for CGAL arrangements, built on top of a model of concept CircularKernel. More...
 
class  Arr_linear_traits_2
 The traits class Arr_linear_traits_2 is a model of the ArrangementTraits_2 concept, which enables the construction and maintenance of arrangements of linear objects. More...
 
class  Arr_naive_point_location
 
class  Arr_non_caching_segment_basic_traits_2
 The traits class Arr_non_caching_segment_basic_traits_2 is a model of the ArrangementTraits_2 concept that allow the construction and maintenance of arrangements of sets of pairwise interior-disjoint line segments. More...
 
class  Arr_non_caching_segment_traits_2
 The traits class Arr_non_caching_segment_traits_2 is a model of the ArrangementTraits_2 concept that allows the construction and maintenance of arrangements of line segments. More...
 
class  Arr_observer
 
class  Arr_point_location_result
 A binary metafunction to determine the return type of a point-location or vertical ray-shoot query. More...
 
class  Arr_polyline_traits_2
 The traits class Arr_polyline_traits_2 is a model of the ArrangementTraits_2 concept. More...
 
class  Arr_rational_function_traits_2
 The traits class Arr_rational_function_traits_2 is a model of the ArrangementTraits_2 concept. More...
 
class  Arr_segment_traits_2
 The traits class Arr_segment_traits_2 is a model of the ArrangementTraits_2 concept, which allows the construction and maintenance of arrangements of line segments. More...
 
class  Arr_oblivious_side_tag
 The categories Left_side_category, Right_side_category, Bottom_side_category, and Top_side_category, nested in any model of the ArrangementBasicTraits_2, must be convertible to Arr_oblivious_side_tag. More...
 
class  Arr_open_side_tag
 All the four types Left_side_category, Right_side_category, Bottom_side_category, and Top_side_category nested in any model of the concept ArrangementOpenBoundaryTraits must be convertible to Arr_open_side_tag, which derives from Arr_oblivious_side_tag. More...
 
class  Arr_trapezoid_ric_point_location
 
class  Arr_vertex_index_map
 Arr_vertex_index_map maintains a mapping of vertex handles of an attached arrangement object to indices (of type unsigned int). More...
 
class  Arr_walk_along_line_point_location
 
class  Arrangement_2
 
class  Arrangement_with_history_2
 
class  Arr_extended_dcel_text_formatter
 Arr_extended_dcel_text_formatter defines the format of an arrangement in an input or output stream (typically a file stream), thus enabling reading and writing an Arrangement instance using a simple text format. More...
 
class  Arr_face_extended_text_formatter
 Arr_face_extended_text_formatter defines the format of an arrangement in an input or output stream (typically a file stream), thus enabling reading and writing an Arrangement instance using a simple text format. More...
 
class  Arr_text_formatter
 Arr_text_formatter defines the format of an arrangement in an input or output stream (typically a file stream), thus enabling reading and writing an Arrangement instance using a simple text format. More...
 
class  Arr_with_history_text_formatter
 Arr_with_history_text_formatter defines the format of an arrangement in an input or output stream (typically a file stream), thus enabling reading and writing an arrangement-with-history instance using a simple text format. More...
 

Typedefs

typedef Interval_nt< false > Interval_nt_advanced
 
typedef Interval_nt< false > Interval_nt_advanced
 

Enumerations

enum  Arr_curve_end { ARR_MIN_END, ARR_MAX_END }
 The enumeration Arr_curve_end is used to indicate one of the two ends of an \( x\)-monotone curve. More...
 
enum  Arr_halfedge_direction { ARR_LEFT_TO_RIGHT, ARR_RIGHT_TO_LEFT }
 The enumeration Arr_halfedge_direction is defined by CGAL::Arrangement_2::Halfedge to specify the direction of the halfedge. More...
 
enum  Arr_parameter_space {
  ARR_LEFT_BOUNDARY, ARR_RIGHT_BOUNDARY, ARR_BOTTOM_BOUNDARY, ARR_TOP_BOUNDARY,
  ARR_INTERIOR
}
 

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)
 
void complement (const Polygon_2< Kernel, Container > &pgn, Polygon_with_holes_2< Kernel, Container > &res)
 
void complement (const General_polygon_2< Traits > &pgn, General_polygon_with_holes_2< Traits > &res)
 
OutputIterator complement (const Polygon_with_holes_2< Kernel, Container > &pgn, OutputIterator oi)
 
OutputIterator complement (const General_polygon_with_holes_2< General_polygon_2< Traits > > &pgn, OutputIterator oi)
 
OutputIterator difference (const Polygon_2< Kernel, Container > &p1, const Polygon_2< Kernel, Container > &p2, OutputIterator oi)
 
OutputIterator difference (const Polygon_2< Kernel, Container > &p1, const Polygon_with_holes_2< Kernel, Container > &p2, OutputIterator oi)
 
OutputIterator difference (const Polygon_with_holes_2< Kernel, Container > &p1, const Polygon_2< Kernel, Container > &p2, OutputIterator oi)
 
OutputIterator difference (const Polygon_with_holes_2< Kernel, Container > &p1, const Polygon_with_holes_2< Kernel, Container > &p2, OutputIterator oi)
 
OutputIterator difference (const General_polygon_2< Traits > &p1, const General_polygon_2< Traits > &p2, OutputIterator oi)
 
OutputIterator difference (const General_polygon_with_holes_2< General_polygon_2< Traits > > &p1, const General_polygon_2< Traits > &p2, OutputIterator oi)
 
OutputIterator difference (const General_polygon_2< Traits > &p1, const General_polygon_with_holes_2< General_polygon_2< Traits > > &p2, OutputIterator oi)
 
OutputIterator difference (const General_polygon_with_holes_2< Polygon > &p1, const General_polygon_with_holes_2< Polygon > &p2, OutputIterator oi)
 
bool do_intersect (const Polygon_2< Kernel, Container > &p1, const Polygon_2< Kernel, Container > &p2)
 
bool do_intersect (const Polygon_2< Kernel, Container > &p1, const Polygon_with_holes_2< Kernel, Container > &p2)
 
bool do_intersect (const Polygon_with_holes_2< Kernel, Container > &p1, const Polygon_2< Kernel, Container > &p2)
 
bool do_intersect (const Polygon_with_holes_2< Kernel, Container > &p1, const Polygon_with_holes_2< Kernel, Container > &p2)
 
bool do_intersect (const General_polygon_2< Traits > &p1, const General_polygon_2< Traits > &p2)
 
bool do_intersect (const General_polygon_2< Traits > &p1, const General_polygon_with_holes_2< General_polygon_2< Traits > > &p2)
 
bool do_intersect (const General_polygon_with_holes_2< General_polygon_2< Traits > > &p1, const General_polygon_2< Traits > &p2)
 
bool do_intersect (const General_polygon_with_holes_2< Polygon > &p1, const General_polygon_with_holes_2< Polygon > &p2)
 
bool do_intersect (InputIterator begin, InputIterator end)
 
bool do_intersect (InputIterator1 pgn_begin1, InputIterator1 pgn_end1, InputIterator2 pgn_begin2, InputIterator2 pgn_end2)
 
OutputIterator intersection (const Type1 &p1, const Type2 &p2, OutputIterator oi)
 
OutputIterator intersection (const Polygon_2< Kernel, Container > &p1, const Polygon_2< Kernel, Container > &p2, OutputIterator oi)
 
OutputIterator intersection (const Polygon_2< Kernel, Container > &p1, const Polygon_with_holes_2< Kernel, Container > &p2, OutputIterator oi)
 
OutputIterator intersection (const Polygon_with_holes_2< Kernel, Container > &p1, const Polygon_2< Kernel, Container > &p2, OutputIterator oi)
 
OutputIterator intersection (const Polygon_with_holes_2< Kernel, Container > &p1, const Polygon_with_holes_2< Kernel, Container > &p2, OutputIterator oi)
 
OutputIterator intersection (const General_polygon_2< Traits > &p1, const General_polygon_2< Traits > &p2, OutputIterator oi)
 
OutputIterator intersection (const General_polygon_with_holes_2< General_polygon_2< Traits > > &p1, const General_polygon_2< Traits > &p2, OutputIterator oi)
 
OutputIterator intersection (const General_polygon_2< Traits > &p1, const General_polygon_with_holes_2< General_polygon_2< Traits > > &p2, OutputIterator oi)
 
OutputIterator intersection (const General_polygon_with_holes_2< Polygon > &p1, const General_polygon_with_holes_2< Polygon > &p2, OutputIterator oi)
 
OutputIterator intersection (InputIterator begin, InputIterator end, OutputIterator oi)
 
OutputIterator intersection (InputIterator1 pgn_begin1, InputIterator1 pgn_end1, InputIterator2 pgn_begin2, InputIterator2 pgn_end2, OutputIterator oi)
 
bool join (const Polygon_2< Kernel, Container > &p1, const Polygon_2< Kernel, Container > &p2, General_polygon_with_holes_2< Polygon_2< Kernel, Container > > &res)
 
bool join (const Polygon_2< Kernel, Container > &p1, const Polygon_with_holes_2< Kernel, Container > &p2, General_polygon_with_holes_2< Polygon_2< Kernel, Container > > &res)
 
bool join (const Polygon_with_holes_2< Kernel, Container > &p2, const Polygon_2< Kernel, Container > &p1, General_polygon_with_holes_2< Polygon_2< Kernel, Container > > &res)
 
bool join (const Polygon_with_holes_2< Kernel, Container > &p2, const Polygon_with_holes_2< Kernel, Container > &p1, General_polygon_with_holes_2< Polygon_2< Kernel, Container > > &res)
 
bool join (const General_polygon_2< Traits > &p1, const General_polygon_2< Traits > &p2, General_polygon_with_holes_2< General_polygon_2< Traits > > &res)
 
bool join (const General_polygon_2< Traits > &p1, const General_polygon_with_holes_2< General_polygon_2< Traits > > &p2, General_polygon_with_holes_2< General_polygon_2< Traits > > &res)
 
bool join (const General_polygon_with_holes_2< General_polygon_2< Traits > > &p2, const General_polygon_2< Traits > &p1, General_polygon_with_holes_2< General_polygon_2< Traits > > &res)
 
bool join (const General_polygon_with_holes_2< Polygon > &p1, const General_polygon_with_holes_2< Polygon > &p2, Traits::Polygon_with_holes_2 &res)
 
OutputIterator join (InputIterator begin, InputIterator end, OutputIterator oi)
 
OutputIterator join (InputIterator1 pgn_begin1, InputIterator1 pgn_end1, InputIterator2 pgn_begin2, InputIterator2 pgn_end2, OutputIterator oi)
 
Oriented_side oriented_side (const Polygon_2< Kernel, Container > &p1, const Polygon_2< Kernel, Container > &p2)
 
Oriented_side oriented_side (const Polygon_2< Kernel, Container > &p1, const Polygon_with_holes_2< Kernel, Container > &p2)
 
Oriented_side oriented_side (const Polygon_with_holes_2< Kernel, Container > &p1, const Polygon_2< Kernel, Container > &p2)
 
Oriented_side oriented_side (const Polygon_with_holes_2< Kernel, Container > &p1, const Polygon_with_holes_2< Kernel, Container > &p2)
 
Oriented_side oriented_side (const General_polygon_2< Traits > &p1, const General_polygon_2< Traits > &p2)
 
Oriented_side oriented_side (const General_polygon_2< Traits > &p1, const General_polygon_with_holes_2< General_polygon_2< Traits > > &p2)
 
Oriented_side oriented_side (const General_polygon_with_holes_2< General_polygon_2< Traits > > &p1, const General_polygon_2< Traits > &p2)
 
Oriented_side oriented_side (const General_polygon_with_holes_2< Polygon > &p1, const General_polygon_with_holes_2< Polygon > &p2)
 
OutputIterator symmetric_difference (const Type1 &p1, const Type2 &p2, OutputIterator oi)
 
OutputIterator symmetric_difference (const Polygon_2< Kernel, Container > &p1, const Polygon_2< Kernel, Container > &p2, OutputIterator oi)
 
OutputIterator symmetric_difference (const Polygon_2< Kernel, Container > &p1, const Polygon_with_holes_2< Kernel, Container > &p2, OutputIterator oi)
 
OutputIterator symmetric_difference (const Polygon_with_holes_2< Kernel, Container > &p1, const Polygon_2< Kernel, Container > &p2, OutputIterator oi)
 
OutputIterator symmetric_difference (const Polygon_with_holes_2< Kernel, Container > &p1, const Polygon_with_holes_2< Kernel, Container > &p2, OutputIterator oi)
 
OutputIterator symmetric_difference (const General_polygon_2< Traits > &p1, const General_polygon_2< Traits > &p2, OutputIterator oi)
 
OutputIterator symmetric_difference (const General_polygon_with_holes_2< General_polygon_2< Traits > > &p1, const General_polygon_2< Traits > &p2, OutputIterator oi)
 
OutputIterator symmetric_difference (const General_polygon_2< Traits > &p1, const General_polygon_with_holes_2< General_polygon_2< Traits > > &p2, OutputIterator oi)
 
OutputIterator symmetric_difference (const General_polygon_with_holes_2< Polygon > &p1, const General_polygon_with_holes_2< Polygon > &p2, OutputIterator oi)
 
OutputIterator symmetric_difference (InputIterator begin, InputIterator end, OutputIterator oi)
 
OutputIterator symmetric_difference (InputIterator1 pgn_begin1, InputIterator1 pgn_end1, InputIterator2 pgn_begin2, InputIterator2 pgn_end2, OutputIterator oi)
 
OutputIterator connect_holes (const Polygon_with_holes_2< Kernel, Container > &pwh, OutputIterator oi)
 
template<typename Traits , typename Dcel , typename InputIterator , typename OutputIterator >
OutputIterator locate (const Arrangement_2< Traits, Dcel > &arr, InputIterator points_begin, InputIterator points_end, OutputIterator oi)
 The function locate performs a batched point-location operation on a given arrangement. More...
 
template<typename Traits , typename Dcel , typename Formatter >
std::istream & read (Arrangement_2< Traits, Dcel > &arr, std::istream &is, Formatter &formatter)
 Reads the arrangement object arr from the given input stream is using a specific input format defined by "formatter".
 
template<typename Traits , typename Dcel , typename Formatter >
std::ostream & write (const Arrangement_2< Traits, Dcel > &arr, std::ostream &os, Formatter &formatter)
 Writes the arrangement object arr into the given output stream os using a specific output format defined by formatter.
 
template<typename Traits , typename Dcel >
std::ostream & operator<< (std::ostream &os, const Arrangement_2< Traits, Dcel > &arr)
 Inserts the arrangement object arr into the output stream os using the output format defined by the Arr_text_formatter class. More...
 
template<class Traits , class Dcel >
std::istream & operator>> (std::istream &is, Arrangement_2< Traits, Dcel > &arr)
 Extracts an arrangement from a given input stream using the input format defined by the Arr_text_formatter class - that is, only the basic geometric and topological features of the arrangement are read and no auxiliary data is attached to the Dcel features.
 
template<class GeomTraitsA , class GeomTraitsB , class GeomTraitsRes , class TopTraitsA , class TopTraitsB , class TopTraitsRes , class OverlayTraits >
void overlay (const Arrangement_2< GeomTraitsA, TopTraitsA > &arr1, const Arrangement_2< GeomTraitsB, TopTraitsB > &arr2, Arrangement_2< GeomTraitsRes, TopTraitsRes > &arr_res, OverlayTraits &ovl_tr)
 Computes the overlay of two arrangements arr1 and arr2, and sets the output arrangement res to represent the overlaid arrangement. More...
 
template<typename Traits , typename Dcel1 , typename Dcel2 , typename ResDcel , typename OverlayTraits >
void overlay (const Arrangement_with_history_2< Traits, Dcel1 > &arr1, const Arrangement_with_history_2< Traits, Dcel2 > &arr2, Arrangement_with_history_2< Traits, ResDcel > &res, OverlayTraits &ovl_tr)
 Computes the overlay of two arrangements with history arr1 and arr2, and sets the output arrangement with history res to represent the overlaid arrangement. More...
 
template<typename Traits , typename Dcel , typename OutputIterator >
OutputIterator decompose (const Arrangement_2< Traits, Dcel > &arr, OutputIterator oi)
 The function decompose produces the symbolic vertical decomposition of a given arrangement, performing a batched vertical ray-shooting query from all arrangement vertices, such that every vertex is associated with a pair of objects, one corresponds to the arrangement feature that lies below it, and the other corresponds to the feature that lies above it. More...
 
template<typename Traits , typename Dcel , typename WithHistoryFormatter >
std::istream & read (Arrangement_with_history_2< Traits, Dcel > &arr, std::istream &is, WithHistoryFormatter &formatter)
 Reads the arrangement-with-history object arr from the given input stream is using a specific input format defined by "formatter".
 
template<typename Traits , typename Dcel , typename WithHistoryFormatter >
std::ostream & write (const Arrangement_with_history_2< Traits, Dcel > &arr, std::ostream &os, WithHistoryFormatter &formatter)
 Writes the arrangement-with-history object arr into the given output stream os using a specific output format defined by formatter.
 
template<typename Traits , typename Dcel >
std::ostream & operator<< (std::ostream &os, const Arrangement_with_history_2< Traits, Dcel > &arr)
 Inserts the arrangement-with-history object arr into the output stream os using the output format defined by the Arr_with_history_text_formatter class. More...
 
template<class Traits , class Dcel >
std::istream & operator>> (std::istream &is, Arrangement_with_history_2< Traits, Dcel > &arr)
 Extracts an arrangement-with-history from a given input stream using the default input format.
 
template<class GeomTraits , class TopTraits , class Curve , class PointLocation >
bool do_intersect (Arrangement_on_surface_2< GeomTraits, TopTraits > &arr, const Curve &c, const PointLocation &pl)
 The function do_intersect checks if a given curve or \( x\)-monotone curve intersects an existing arrangement's edges or vertices. More...
 
template<typename Traits , typename Dcel , typename PointLocation >
Arrangement_2< Traits, Dcel >
::Halfedge_handle 
insert_non_intersecting_curve (Arrangement_2< Traits, Dcel > &arr, const typename Traits::X_monotone_curve_2 &xc, const PointLocation &pl=walk_pl)
 The function insert_non_intersecting_curve inserts a given \( x\)-monotone curve into a given arrangement, where the interior of the given curve is disjoint from all existing arrangement vertices and edges. More...
 
template<typename Traits , typename Dcel , InputIterator >
void insert_non_intersecting_curves (Arrangement_2< Traits, Dcel > &arr, InputIterator first, InputIterator last)
 The function insert_non_intersecting_curves inserts a set of \( x\)-monotone curves in a given range into a given arrangement. More...
 
template<typename Traits , typename Dcel , typename PointLocation >
Arrangement_2< Traits, Dcel >
::Vertex_handle 
insert_point (Arrangement_2< Traits, Dcel > &arr, const typename Traits::Point_2 &p, const PointLocation &pl=walk_pl)
 The function insert_point inserts a given point into a given arrangement. More...
 
template<typename Traits , typename Dcel >
bool is_valid (const Arrangement_2< Traits, Dcel > &arr)
 The function is_valid checks the validity of a given arrangement. More...
 
template<typename Traits , typename Dcel >
Arrangement_2< Traits, Dcel >
::Face_handle 
remove_edge (Arrangement_2< Traits, Dcel > &arr, typename Arrangement_2< Traits, Dcel >::Halfedge_handle e)
 The function remove_edge removes an edge given by one of the twin halfedges that forms it, from a given arrangement. More...
 
template<typename Traits , typename Dcel >
bool remove_vertex (Arrangement_2< Traits, Dcel > &arr, typename Arrangement_2< Traits, Dcel >::Vertex_handle v)
 The function remove_vertex attempts to removed a given vertex from a given arrangement. More...
 
template<class GeomTraits , class TopTraits , class OutputIterator , class PointLocation >
OutputIterator zone (Arrangement_on_surface_2< GeomTraits, TopTraits > &arr, const typename GeomTraits::X_monotone_curve_2 &c, OutputIterator oi, const PointLocation &pl)
 The function zone compute the zone of the given \( x\)-monotone curve in the existing arrangement. More...
 
template<typename Traits , typename Dcel , typename PointLocation >
Arrangement_with_history_2
< Traits, Dcel >::Curve_handle 
insert (Arrangement_with_history_2< Traits, Dcel > &arr, const typename Traits::Curve_2 &c, const PointLocation &pl=walk_pl)
 Inserts the given curve c into the arrangement with history arr, and returns a handle to the inserted curve. More...
 
template<class Traits , class Dcel , InputIterator >
void insert (Arrangement_with_history_2< Traits, Dcel > &arr, InputIterator first, InputIterator last)
 Aggregately inserts the curves in the range [first,last) into the arrangement with history arr using the sweep-line framework.
 
template<class Traits , class Dcel >
Size remove_curve (Arrangement_with_history_2< Traits, Dcel > &arr, typename Arrangement_with_history_2< Traits, Dcel >::Curve_handle ch)
 The function remove_curve removes a given curve from a given arrangement. More...
 
template<typename Traits , typename Dcel1 , typename Dcel2 , typename ResDcel >
void overlay (const Arrangement_with_history_2< Traits, Dcel1 > &arr1, const Arrangement_with_history_2< Traits, Dcel2 > &arr2, Arrangement_with_history_2< Traits, ResDcel > &res)
 
template<typename SegmentTraits >
Qt_widget & operator<< (std::ostream &os, const Polyline_2< SegmentTraits > &polyline)
 Inserts a polyline into a given Qt_widget stream. More...
 
template<class Traits , class Dcel , class Curve , class PointLocation >
void insert (Arrangement_2< Traits, Dcel > &arr, const Curve &c, const PointLocation &pl=walk_pl)
 The function insert inserts one or more curves or \( x\)-monotone curves into a given arrangement, where no restrictions are imposed on the inserted curves. More...
 
template<typename Traits , typename Dcel >
void insert (Arrangement_2< Traits, Dcel > &arr, const typename Traits::X_monotone_curve_2 &xc, const Object &obj)
 Inserts the \( x\)-monotone (only) curve xc into the arrangement arr. More...
 
template<class Traits , class Dcel , class InputIterator >
void insert (Arrangement_2< Traits, Dcel > &arr, InputIterator first, InputIterator last)
 Aggregately inserts the curves or \( x\)-monotone curves in the range [first,last) into the arrangement arr using the sweep-line framework.