CGAL 5.3 - 2D Triangulations on the Sphere
CGAL::Projection_on_sphere_traits_3< LK, SK > Class Template Reference

#include <CGAL/Projection_on_sphere_traits_3.h>

Definition

template<typename LK, typename SK = CGAL::Spherical_kernel_3< LK, CGAL::Algebraic_kernel_for_spheres_2_3<typename LK::FT> >>
class CGAL::Projection_on_sphere_traits_3< LK, SK >

The class Projection_on_sphere_traits_3 is a model of the concept DelaunayTriangulationOnSphereTraits_2.

It implements the Point_on_sphere_2 type as a custom point type which represents the projection of a point living in the 3D Euclidean space onto the sphere along the segment between said point and the center of the sphere.

Template Parameters
LKa linear kernel type; must be a model of Kernel.
SKa spherical kernel type; must be a model of SphericalKernel.
Is Model Of:
DelaunayTriangulationOnSphereTraits_2
See also
CGAL::Delaunay_triangulation_on_sphere_traits_2
Examples:
Triangulation_on_sphere_2/triang_on_sphere_exact.cpp, Triangulation_on_sphere_2/triang_on_sphere_proj.cpp, and Triangulation_on_sphere_2/triang_on_sphere_range.cpp.

Public Types

typedef LK::FT FT
 The field number type.
 
typedef unspecified_type Point_on_sphere_2
 The point on the sphere type.
 
typedef SK::Circular_arc_3 Arc_on_sphere_2
 
typedef LK::Point_3 Point_3
 
typedef LK::Segment_3 Segment_3
 
typedef LK::Triangle_3 Triangle_3
 

Predicates

typedef unspecified_type Equal_on_sphere_2
 Points are equal if they have the same projection onto the sphere.
 

Precision predicates

bool is_on_sphere (const Point_on_sphere_2 &p) const
 Due to the chosen point representation, any point is theoretically on the sphere, and this function always returns true. More...
 
bool are_points_too_close (const Point_on_sphere_2 &p, const Point_on_sphere_2 &q) const
 returns false if LK can represent algebraic coordinates, or whether the distance between p and q is lower than \( 2 \sqrt{R\delta} \) otherwise (see the traits class CGAL::Delaunay_triangulation_on_sphere_traits_2). More...
 

Member Function Documentation

◆ are_points_too_close()

template<typename LK , typename SK = CGAL::Spherical_kernel_3< LK, CGAL::Algebraic_kernel_for_spheres_2_3<typename LK::FT> >>
bool CGAL::Projection_on_sphere_traits_3< LK, SK >::are_points_too_close ( const Point_on_sphere_2 p,
const Point_on_sphere_2 q 
) const

returns false if LK can represent algebraic coordinates, or whether the distance between p and q is lower than \( 2 \sqrt{R\delta} \) otherwise (see the traits class CGAL::Delaunay_triangulation_on_sphere_traits_2).

◆ is_on_sphere()

template<typename LK , typename SK = CGAL::Spherical_kernel_3< LK, CGAL::Algebraic_kernel_for_spheres_2_3<typename LK::FT> >>
bool CGAL::Projection_on_sphere_traits_3< LK, SK >::is_on_sphere ( const Point_on_sphere_2 p) const

Due to the chosen point representation, any point is theoretically on the sphere, and this function always returns true.