CGAL 5.1 - 2D Circular Geometry Kernel

#include <Concepts/CircularKernel.h>

Definition

Classes

class  BoundedSide_2
 
class  CircularArc_2
 Concept for arcs of circles. More...
 
class  CircularArcPoint_2
 Concept for points on circles, circular arcs or line arcs. More...
 
class  CompareX_2
 
class  CompareXY_2
 
class  CompareY_2
 
class  CompareYatX_2
 A function object concept to compare a point p and an arc a on the vertical line passing through p. More...
 
class  CompareYtoRight_2
 A function object concept to compare vertically two arcs on the right side of a common point p: More...
 
class  ComputeCircularX_2
 
class  ComputeCircularY_2
 
class  ConstructBbox_2
 A function object concept to construct a bounding box of geometric objects: More...
 
class  ConstructCircle_2
 
class  ConstructCircularArc_2
 
class  ConstructCircularArcPoint_2
 
class  ConstructCircularMaxVertex_2
 
class  ConstructCircularMinVertex_2
 
class  ConstructCircularSourceVertex_2
 
class  ConstructCircularTargetVertex_2
 
class  ConstructLine_2
 
class  ConstructLineArc_2
 
class  DoIntersect_2
 Testing whether two curves intersect. More...
 
class  DoOverlap_2
 Testing whether the interiors of two curves overlap. More...
 
class  Equal_2
 Testing equality between objects. More...
 
class  GetEquation
 
class  HasOn_2
 To test whether a point lies on a curve. More...
 
class  HasOnBoundedSide_2
 
class  HasOnUnboundedSide_2
 
class  Intersect_2
 
class  InXRange_2
 To test whether a point lies in the vertical range of a curve. More...
 
class  IsVertical_2
 
class  IsXMonotone_2
 
class  IsYMonotone_2
 
class  LineArc_2
 Concept for line segments supported by a line that is a model of Kernel::Line_2 and whose endpoints are models of the CircularKernel::CircularArcPoint_2 concept. More...
 
class  MakeXMonotone_2
 
class  MakeXYMonotone_2
 
class  Split_2
 

Types

A model of CircularKernel is supposed to provide some basic types and to define the following geometric objects Moreover, a model of CircularKernel must provide predicates, constructions and other functionalities.

typedef unspecified_type Linear_kernel
 Model of LinearKernel. More...
 
typedef unspecified_type Algebraic_kernel
 Model of AlgebraicKernelForCircles. More...
 
typedef unspecified_type RT
 Model of RingNumberType. More...
 
typedef unspecified_type FT
 Model of FieldNumberType. More...
 
typedef unspecified_type Root_of_2
 Model of RootOf_2. More...
 
typedef unspecified_type Root_for_circles_2_2
 Model of AlgebraicKernelForCircles::RootForCircles_2_2. More...
 
typedef unspecified_type Polynomial_1_2
 Model of AlgebraicKernelForCircles::Polynomial_1_2. More...
 
typedef unspecified_type Polynomial_for_circles_2_2
 Model of AlgebraicKernelForCircles::PolynomialForCircles_2_2. More...
 
typedef unspecified_type Point_2
 Model of Kernel::Point_2. More...
 
typedef unspecified_type Line_2
 Model of Kernel::Line_2. More...
 
typedef unspecified_type Circle_2
 Model of Kernel::Circle_2. More...
 
typedef unspecified_type Line_arc_2
 Model of CircularKernel::LineArc_2. More...
 
typedef unspecified_type Circular_arc_2
 Model of CircularKernel::CircularArc_2. More...
 
typedef unspecified_type Circular_arc_point_2
 Model of CircularKernel::CircularArcPoint_2. More...
 

Predicates

typedef unspecified_type Compare_x_2
 Model of CircularKernel::CompareX_2. More...
 
typedef unspecified_type Compare_y_2
 Model of CircularKernel::CompareY_2. More...
 
typedef unspecified_type Compare_xy_2
 Model of CircularKernel::CompareXY_2. More...
 
typedef unspecified_type Equal_2
 Model of CircularKernel::Equal_2. More...
 
typedef unspecified_type Compare_y_at_x_2
 Model of CircularKernel::CompareYatX_2. More...
 
typedef unspecified_type Compare_y_to_right_2
 Model of CircularKernel::CompareYtoRight_2. More...
 
typedef unspecified_type Has_on_2
 Model of CircularKernel::HasOn_2. More...
 
typedef unspecified_type Do_overlap_2
 Model of CircularKernel::DoOverlap_2. More...
 
typedef unspecified_type Do_intersect_2
 Model of CircularKernel::DoIntersect_2. More...
 
typedef unspecified_type Bounded_side_2
 Model of CircularKernel::BoundedSide_2. More...
 
typedef unspecified_type Has_on_bounded_side_2
 Model of CircularKernel::HasOnBoundedSide_2. More...
 
typedef unspecified_type Has_on_unbounded_side_2
 Model of CircularKernel::HasOnUnboundedSide_2. More...
 
typedef unspecified_type In_x_range_2
 Model of CircularKernel::InXRange_2. More...
 
typedef unspecified_type Is_vertical_2
 Model of CircularKernel::IsVertical_2. More...
 
typedef unspecified_type Is_x_monotone_2
 Model of CircularKernel::IsXMonotone_2. More...
 
typedef unspecified_type Is_y_monotone_2
 Model of CircularKernel::IsYMonotone_2. More...
 

Constructions

typedef unspecified_type Construct_line_2
 Model of CircularKernel::ConstructLine_2. More...
 
typedef unspecified_type Construct_circle_2
 Model of CircularKernel::ConstructCircle_2. More...
 
typedef unspecified_type Construct_bbox_2
 Model of CircularKernel::ConstructBbox_2. More...
 
typedef unspecified_type Construct_circular_arc_point_2
 Model of CircularKernel::ConstructCircularArcPoint_2. More...
 
typedef unspecified_type Construct_line_arc_2
 Model of CircularKernel::ConstructLineArc_2. More...
 
typedef unspecified_type Construct_circular_arc_2
 Model of CircularKernel::ConstructCircularArc_2. More...
 
typedef unspecified_type Compute_circular_x_2
 Model of CircularKernel::ComputeCircularX_2 More...
 
typedef unspecified_type Compute_circular_y_2
 Model of CircularKernel::ComputeCircularY_2 More...
 
typedef unspecified_type Construct_circular_min_vertex_2
 Model of CircularKernel::ConstructCircularMinVertex_2. More...
 
typedef unspecified_type Construct_circular_max_vertex_2
 Model of CircularKernel::ConstructCircularMaxVertex_2. More...
 
typedef unspecified_type Construct_circular_source_vertex_2
 Model of CircularKernel::ConstructCircularSourceVertex_2. More...
 
typedef unspecified_type Construct_circular_target_vertex_2
 Model of CircularKernel::ConstructCircularTargetVertex_2. More...
 
typedef unspecified_type Intersect_2
 Model of CircularKernel::Intersect_2. More...
 
typedef unspecified_type Split_2
 Model of CircularKernel::Split_2. More...
 
typedef unspecified_type Make_x_monotone_2
 Model of CircularKernel::MakeXMonotone_2. More...
 
typedef unspecified_type Make_xy_monotone_2
 Model of CircularKernel::MakeXYMonotone_2. More...
 

Link with the algebraic kernel

typedef unspecified_type Get_equation
 Model of CircularKernel::GetEquation. More...
 

Operations

As in the Kernel concept, for each of the function objects above, there must exist a member function that requires no arguments and returns an instance of that function object.

The name of the member function is the uncapitalized name of the type returned with the suffix _object appended. For example, for the function object CircularKernel::Construct_circular_arc_2 the following member function must exist:

Construct_circular_arc_2 construct_circular_arc_2_object () const
 

Member Typedef Documentation

◆ Algebraic_kernel

typedef unspecified_type CircularKernel::Algebraic_kernel

◆ Bounded_side_2

◆ Circle_2

typedef unspecified_type CircularKernel::Circle_2

Model of Kernel::Circle_2.

◆ Circular_arc_2

◆ Circular_arc_point_2

◆ Compare_x_2

typedef unspecified_type CircularKernel::Compare_x_2

◆ Compare_xy_2

typedef unspecified_type CircularKernel::Compare_xy_2

◆ Compare_y_2

typedef unspecified_type CircularKernel::Compare_y_2

◆ Compare_y_at_x_2

◆ Compare_y_to_right_2

◆ Compute_circular_x_2

◆ Compute_circular_y_2

◆ Construct_bbox_2

◆ Construct_circle_2

◆ Construct_circular_arc_2

◆ Construct_circular_arc_point_2

◆ Construct_circular_max_vertex_2

◆ Construct_circular_min_vertex_2

◆ Construct_circular_source_vertex_2

◆ Construct_circular_target_vertex_2

◆ Construct_line_2

◆ Construct_line_arc_2

◆ Do_intersect_2

◆ Do_overlap_2

typedef unspecified_type CircularKernel::Do_overlap_2

◆ Equal_2

typedef unspecified_type CircularKernel::Equal_2

◆ FT

typedef unspecified_type CircularKernel::FT

Model of FieldNumberType.

◆ Get_equation

typedef unspecified_type CircularKernel::Get_equation

◆ Has_on_2

typedef unspecified_type CircularKernel::Has_on_2

◆ Has_on_bounded_side_2

◆ Has_on_unbounded_side_2

◆ In_x_range_2

typedef unspecified_type CircularKernel::In_x_range_2

◆ Intersect_2

typedef unspecified_type CircularKernel::Intersect_2

◆ Is_vertical_2

typedef unspecified_type CircularKernel::Is_vertical_2

◆ Is_x_monotone_2

◆ Is_y_monotone_2

◆ Line_2

typedef unspecified_type CircularKernel::Line_2

Model of Kernel::Line_2.

◆ Line_arc_2

typedef unspecified_type CircularKernel::Line_arc_2

◆ Linear_kernel

typedef unspecified_type CircularKernel::Linear_kernel

Model of LinearKernel.

◆ Make_x_monotone_2

◆ Make_xy_monotone_2

◆ Point_2

typedef unspecified_type CircularKernel::Point_2

Model of Kernel::Point_2.

◆ Polynomial_1_2

◆ Polynomial_for_circles_2_2

◆ Root_for_circles_2_2

◆ Root_of_2

typedef unspecified_type CircularKernel::Root_of_2

Model of RootOf_2.

◆ RT

typedef unspecified_type CircularKernel::RT

Model of RingNumberType.

◆ Split_2

typedef unspecified_type CircularKernel::Split_2

Member Function Documentation

◆ construct_circular_arc_2_object()

Construct_circular_arc_2 CircularKernel::construct_circular_arc_2_object ( ) const