\( \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 - 3D Spherical Geometry Kernel
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
SphericalKernel::ConstructCircularArc_3 Concept Reference

Definition

The circular arc constructed from a circle, a source, and a target, is defined as the set of points of the circle that lie between the source p1 and the target p2, when traversing the circle counterclockwise seen from the side of the plane of the circle pointed by its positive normal vectors.

In this definition, we say that a normal vector \( (a,b,c)\) is positive if \( (a,b,c)>(0,0,0)\) (i.e. \( (a>0) || (a==0) \&\& (b>0) || (a==0)\&\&(b==0)\&\&(c>0)\)).

Operations

A model of this concept must provide:

SphericalKernel::Circular_arc_3 operator() (const SphericalKernel::Circle_3 &c)
 Constructs an arc from a full circle.
 
SphericalKernel::Circular_arc_3 operator() (const SphericalKernel::Circle_3 &c, const SphericalKernel::Circular_arc_point_3 &p, const SphericalKernel::Circular_arc_point_3 &q)
 Constructs the circular arc supported by c, whose source and target are p and q, respectively. More...
 
SphericalKernel::Circular_arc_3 operator() (const SphericalKernel::Point_3 &p, const SphericalKernel::Point_3 &q, const SphericalKernel::Point_3 &r)
 Constructs an arc that is supported by the circle of type SphericalKernel::Circle_3 passing through the points p, q and r. More...
 

Member Function Documentation

SphericalKernel::Circular_arc_3 SphericalKernel::ConstructCircularArc_3::operator() ( const SphericalKernel::Circle_3 c,
const SphericalKernel::Circular_arc_point_3 p,
const SphericalKernel::Circular_arc_point_3 q 
)

Constructs the circular arc supported by c, whose source and target are p and q, respectively.

Precondition
p and q lie on c and they are different.
SphericalKernel::Circular_arc_3 SphericalKernel::ConstructCircularArc_3::operator() ( const SphericalKernel::Point_3 p,
const SphericalKernel::Point_3 q,
const SphericalKernel::Point_3 r 
)

Constructs an arc that is supported by the circle of type SphericalKernel::Circle_3 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 seen from the side of the plane containing the circle pointed by its positive normal vectors. the circle. Note that, depending on the orientation of the point triple (p,q,r), q may not lie on the arc.

Precondition
p, q, and r are not collinear.