\( \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.13 - 2D Circular Geometry Kernel
CGAL::Line_arc_2< CircularKernel > Class Template Reference

#include <CGAL/Line_arc_2.h>


Is Model Of:


The format for input/output is, for each line arc: a Line_2 (the supporting line) and two Circular_arc_point_2 (the two endpoints), under the condition that the endpoints are actually lying on the line.

See also

Related Functions

(Note that these are not member functions.)

bool operator== (const Line_arc_2< CircularKernel > &la1, const Line_arc_2< CircularKernel > &la2)
 Test for equality. More...
bool operator!= (const Line_arc_2< CircularKernel > &la1, const Line_arc_2< CircularKernel > &la2)
 Test for non-equality.
istream & operator>> (std::istream &is, Line_arc_2 &ca)
ostream & operator<< (std::ostream &os, const Line_arc_2 &ca)


 Line_arc_2 (const Line_2< CircularKernel > &l, const Circular_arc_point_2< CircularKernel > &p1, const Circular_arc_point_2< CircularKernel > &p2)
 Construct the line segment supported by l, whose source is p1 and whose target is p2. More...
 Line_arc_2 (const Line_2< CircularKernel > &l, const Point_2< CircularKernel > &p1, const Point_2< CircularKernel > &p2)
 Line_arc_2 (const Segment_2< CircularKernel > &s)

Access Functions

Line_2< CircularKernelsupporting_line ()
Circular_arc_point_2< CircularKernelsource ()
Circular_arc_point_2< CircularKerneltarget ()
Circular_arc_point_2< CircularKernelleft ()
Circular_arc_point_2< CircularKernelright ()
Bbox_2 bbox () const
 Returns a bounding box containing the line segment.

Query Functions

bool is_vertical ()

Constructor & Destructor Documentation

◆ Line_arc_2()

template<typename CircularKernel >
CGAL::Line_arc_2< CircularKernel >::Line_arc_2 ( const Line_2< CircularKernel > &  l,
const Circular_arc_point_2< CircularKernel > &  p1,
const Circular_arc_point_2< CircularKernel > &  p2 

Construct the line segment supported by l, whose source is p1 and whose target is p2.

p1 and p2 lie on l.

Friends And Related Function Documentation

◆ operator==()

template<typename CircularKernel >
bool operator== ( const Line_arc_2< CircularKernel > &  la1,
const Line_arc_2< CircularKernel > &  la2 

Test for equality.

Two arcs are equal, iff their non-oriented supporting lines are equal (i.e. they contain the same set of points) and their endpoints are equal.