CGAL 5.1  2D Circular Geometry Kernel

#include <CGAL/Circular_arc_2.h>
Related Functions  
(Note that these are not member functions.)  
bool  operator== (const Circular_arc_2< CircularKernel > &ca1, const Circular_arc_2< CircularKernel > &ca2) 
Test for equality. More...  
bool  operator!= (const Circular_arc_2< CircularKernel > &ca1, const Circular_arc_2< CircularKernel > &ca2) 
Test for nonequality.  
istream &  operator>> (std::istream &is, Circular_arc_2 &ca) 
ostream &  operator<< (std::ostream &os, const Circular_arc_2 &ca) 
Creation  
Circular_arc_2 (const Circle_2< CircularKernel > &c)  
Constructs an arc from a full circle.  
Circular_arc_2 (const Circle_2< CircularKernel > &c, const Circular_arc_point_2< CircularKernel > &p, const Circular_arc_point_2< CircularKernel > &q)  
Constructs the circular arc supported by c , whose source is p and whose target is q when traversing the circle in counterclockwise direction. More...  
Circular_arc_2 (const Point_2< CircularKernel > &p, const Point_2< CircularKernel > &q, const Point_2< CircularKernel > &r)  
Constructs an arc that is supported by the circle of type Circle_2<CircularKernel> passing through the points p , q and r . More...  
Access Functions  
Circle_2< CircularKernel >  supporting_circle () 
Point_2< CircularKernel > const &  center () const 
returns the center of the supporting circle.  
CircularKernel::FT const &  squared_radius () const 
returns the squared radius of the supporting circle.  
A circular arc is not oriented. Still, its source and target endpoints can be defined, supposing that its supporting circle in traversed the counterclockwise direction from  
Circular_arc_point_2< CircularKernel >  source () 
Circular_arc_point_2< CircularKernel >  target () 
When the methods When an arc is xmonotone, its left and right points can be accessed directly:  
Circular_arc_point_2< CircularKernel >  left () 
Circular_arc_point_2< CircularKernel >  right () 
Bbox_2  bbox () const 
Returns a bounding box containing the arc.  
Query Functions  
bool  is_x_monotone () 
Tests whether the arc is xmonotone.  
bool  is_y_monotone () 
Tests whether the arc is ymonotone.  
CGAL::Circular_arc_2< CircularKernel >::Circular_arc_2  (  const Circle_2< CircularKernel > &  c, 
const Circular_arc_point_2< CircularKernel > &  p,  
const Circular_arc_point_2< CircularKernel > &  q  
) 
Constructs the circular arc supported by c
, whose source is p
and whose target is q
when traversing the circle in counterclockwise direction.
p
and q
lie on c
. CGAL::Circular_arc_2< CircularKernel >::Circular_arc_2  (  const Point_2< CircularKernel > &  p, 
const Point_2< CircularKernel > &  q,  
const Point_2< CircularKernel > &  r  
) 
Constructs an arc that is supported by the circle of type Circle_2<CircularKernel>
passing through the points p
, q
and r
.
The source and target are respectively p
and r
, when traversing the supporting circle in the counterclockwise direction. Note that, depending on the orientation of the point triple (p,q,r)
, q
may not lie on the arc.
p
, q
, and r
are not collinear. Circular_arc_point_2<CircularKernel> CGAL::Circular_arc_2< CircularKernel >::left  (  ) 
ca
.is_x_monotone()
. Circular_arc_point_2<CircularKernel> CGAL::Circular_arc_2< CircularKernel >::right  (  ) 
ca
.is_x_monotone()
.

related 
Test for equality.
Two arcs are equal, iff their nonoriented supporting circles are equal (i.e. they have same center and same squared radius) and their endpoints are equal.