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

#include <CGAL/Line_arc_2.h>

Definition

Is Model Of:
CircularKernel::LineArc_2

I/O

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
CGAL::Circular_arc_point_2<CircularKernel>
CGAL::Circular_arc_2<CircularKernel>

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)
 

Creation

 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)
 Same.
 
 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.

Precondition
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 
)
related

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.