\( \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.5.1 - 2D Arrangements
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
Class and Concept List
Here is the list of all concepts and classes of this package. Classes are inside the namespace CGAL. Concepts are in the global namespace.
[detail level 123]
oNArrTraitsThe namespace containing concepts specific to Arrangements
|oCApproximate_2
|oCAreMergeable_2
|oCCompareX_2
|oCCompareXAtLimit_2
|oCCompareXNearLimit_2
|oCCompareXy_2
|oCCompareYAtX_2
|oCCompareYAtXLeft_2
|oCCompareYAtXRight_2
|oCCompareYNearBoundary_2
|oCConstructMaxVertex_2
|oCConstructMinVertex_2
|oCConstructXMonotoneCurve_2
|oCCurve_2General planar curve
|oCEqual_2
|oCIntersect_2
|oCIsVertical_2
|oCMakeXMonotone_2
|oCMerge_2
|oCParameterSpaceInX_2
|oCParameterSpaceInY_2
|oCPoint_2Represents a point in the plane
|oCSplit_2
|\CXMonotoneCurve_2Represents a planar (weakly) \( x\)-monotone curve
oNCGAL
|oCArr_accessor
|oCArr_algebraic_segment_traits_2The 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
|oCArr_Bezier_curve_traits_2The traits class Arr_Bezier_curve_traits_2 is a model of the ArrangementTraits_2 concept that handles planar Bézier curves
|oCArr_circle_segment_traits_2The 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
|oCArr_circular_arc_traits_2This class is a traits class for CGAL arrangements, built on top of a model of concept CircularKernel
|oCArr_circular_line_arc_traits_2This class is a traits class for CGAL arrangements, built on top of a model of concept CircularKernel
|oCArr_conic_traits_2The 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
|oCArr_consolidated_curve_data_traits_2The 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
|oCArr_curve_data_traits_2The 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
|oCArr_dcel_base
|oCArr_default_dcelThe 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
|oCArr_default_overlay_traitsAn 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
|oCArr_face_overlay_traitsAn 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
|oCArr_extended_dcelThe Arr_extended_dcel class-template extends the topological-features of the Dcel namely the vertex, halfedge, and face types
|oCArr_extended_faceThe Arr_extended_face class-template extends the face topological-features of the Dcel
|oCArr_extended_halfedgeThe Arr_extended_halfedge class-template extends the halfedge topological-features of the Dcel
|oCArr_extended_vertexThe Arr_extended_vertex class-template extends the vertex topological-features of the Dcel
|oCArr_face_extended_dcelThe Arr_face_extended_dcel class-template extends the Dcel face-records, making it possible to store extra (non-geometric) data with the arrangement faces
|oCArr_face_index_mapArr_face_index_map maintains a mapping of face handles of an attached arrangement object to indices (of type unsigned int)
|oCArr_landmarks_point_location
|oCArr_line_arc_traits_2This class is a traits class for CGAL arrangements, built on top of a model of concept CircularKernel
|oCArr_linear_traits_2The 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
|oCArr_naive_point_location
|oCArr_non_caching_segment_basic_traits_2The 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
|oCArr_non_caching_segment_traits_2The 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
|oCArr_observer
|oCArr_point_location_resultA unary metafunction to determine the return type of a point-location or vertical ray-shoot query
|oCArr_polyline_traits_2The traits class Arr_polyline_traits_2 handles piecewise linear curves, commonly referred to as polylines
|oCArr_rational_function_traits_2The traits class Arr_rational_function_traits_2 is a model of the ArrangementTraits_2 concept
|oCArr_segment_traits_2The 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
|oCArr_oblivious_side_tagThe 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
|oCArr_open_side_tagAll 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
|oCArr_trapezoid_ric_point_location
|oCArr_vertex_index_mapArr_vertex_index_map maintains a mapping of vertex handles of an attached arrangement object to indices (of type unsigned int)
|oCArr_walk_along_line_point_location
|oCArrangement_2
|oCArrangement_with_history_2
|oCArr_extended_dcel_text_formatterArr_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
|oCArr_face_extended_text_formatterArr_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
|oCArr_text_formatterArr_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
|\CArr_with_history_text_formatterArr_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
oCArrangementBasicTraits_2The concept ArrangementBasicTraits_2 defines the minimal set of geometric predicates needed for the construction and maintenance of objects of the class Arrangement_2, as well as performing simple queries (such as point-location queries) on such arrangements
oCArrangementDcelA doubly-connected edge-list (Dcel for short) data-structure. It consists of three containers of records: vertices \( V\), halfedges \( E\), and faces \( F\). It maintains the incidence relation among them. The halfedges are ordered in pairs sometimes referred to as twins, such that each halfedge pair represent an edge
oCArrangementDcelFaceA face record in a Dcel data structure. A face may either be unbounded, otherwise it has an incident halfedge along the chain defining its outer boundary. A face may also contain holes and isolated vertices in its interior
oCArrangementDcelHalfedgeA halfedge record in a Dcel data structure. Two halfedges with opposite directions always form an edge (a halfedge pair). The halfedges form together chains, defining the boundaries of connected components, such that all halfedges along a chain have the same incident face. Note that the chain the halfedge belongs to may form the outer boundary of a bounded face (an outer CCB) or the boundary of a hole inside a face (an inner CCB)
oCArrangementDcelHoleA hole record in a Dcel data structure, which stores the face that contains the hole in its interior, along with an iterator for the hole in the holes' container of this face
oCArrangementDcelIsolatedVertexAn isolated vertex-information record in a Dcel data structure, which stores the face that contains the isolated vertex in its interior, along with an iterator for the isolated vertex in the isolated vertices' container of this face
oCArrangementDcelVertexA vertex record in a Dcel data structure. A vertex is always associated with a point. However, the vertex record only stores a pointer to the associated point, and the actual Point object is stored elsewhere
oCArrangementDcelWithRebindThe concept ArrangementDcelWithRebind refines the ArrangementDcel concept by adding a policy clone idiom in form of a rebind struct-template
oCArrangementInputFormatterA model for the ArrangementInputFormatter concept supports a set of functions that enable reading an arrangement from an input stream using a specific format
oCArrangementLandmarkTraits_2The concept ArrangementLandmarkTraits_2 refines the general traits concept by adding operations needed for the landmarks point-location strategy, namely - approximating points and connecting points with a simple \( x\)-monotone curve
oCArrangementOpenBoundaryTraits_2Several predicates are required to handle \( x\)-monotone curves that approach infinity and thus approach the boundary of the parameter space. These predicates are sufficient to handle not only curves embedded in an unbounded parameter space, but also curves embedded in a bounded parameter space with open boundaries. Models of the concept ArrangementOpenBoundaryTraits_2 handle curves that approach the boundary of a parameter space. This concept refines the concept ArrangementBasicTraits_2. The arrangement template instantiated with a traits class that models this concept can handle \( x\)-monotone curves that are unbounded in any direction. The concept ArrangementOpenBoundaryTraits_2, nontheless, also supports planar \( x\)-monotone curves that reach the boundary of an open yet bounded parameter space
oCArrangementOutputFormatterA model for the ArrangementOutputFormatter concept supports a set of functions that enable writing an arrangement to an output stream using a specific format
oCArrangementPointLocation_2A model of the ArrangementPointLocation_2 concept can answer point-location queries on an arrangement attached to it. Namely, given a Arrangement_2::Point_2 object, representing a point in the plane, it returns the arrangement cell containing it. In the general case, the query point is contained inside an arrangement face, but in degenerate situations it may lie on an edge or coincide with an arrangement vertex
oCArrangementTraits_2The concept ArrangementTraits_2 allows the construction of arrangement of general planar curves. Models of this concept are used by the free CGAL::insert() functions of the arrangement package and by the CGAL::Arrangement_with_history_2 class
oCArrangementVerticalRayShoot_2A model of the ArrangementVerticalRayShoot_2 concept can answer vertical ray-shooting queries on an arrangement attached to it. Namely, given a Arrangement_2::Point_2 object, representing a point in the plane, it returns the arrangement feature (edge or vertex) that lies strictly above it (or below it). By "strictly" we mean that if the query point lies on an arrangement edge (or on an arrangement vertex) this edge will not be the query result, but the feature lying above or below it. (An exception to this rule is the degenerate case where the query point lies in the interior of a vertical edge.) Note that it may happen that the query point lies above the upper envelope (or below the lower envelope) of the arrangement, and the vertical ray emanating from the query point goes to infinity without hitting any arrangement feature on its way. In this case the unbounded face is returned
oCArrangementWithHistoryInputFormatterA model for the ArrangementWithHistoryInputFormatter concept supports a set of functions that enable reading an arrangement-with-history instance from an input stream using a specific format
oCArrangementWithHistoryOutputFormatterA model for the ArrangementWithHistoryOutputFormatter concept supports a set of functions that enable writing an arrangement-with-history instance to an output stream using a specific format
oCArrangementXMonotoneTraits_2The concept ArrangementXMonotoneTraits_2 refines the basic arrangement-traits concept. A model of this concept is able to handle \( x\)-monotone curves that intersect in their interior (and points that coincide with curve interiors). This is necessary for constructing arrangements of sets of intersecting \( x\)-monotone curves
\COverlayTraitsA model for the OverlayTraits should be able to operate on records (namely, vertices, halfedges and faces) of two input Dcel classes, named Dcel_A and Dcel_B, and construct the records of an output Dcel class, referred to as Dcel_R