/// \defgroup PkgCircularKernel3Ref Reference Manual

/// \defgroup PkgCircularKernel3GeometricConcepts Geometric Concepts
/// \ingroup PkgCircularKernel3Ref

/// \defgroup PkgCircularKernel3GeometricClasses Geometric Kernel and Classes
/// \ingroup PkgCircularKernel3Ref


/// \defgroup PkgCircularKernel3GeometricFunctions Geometric Global Functions
/// \ingroup PkgCircularKernel3Ref


/// \defgroup PkgCircularKernel3AlgebraicConcepts Algebraic Concepts
/// \ingroup PkgCircularKernel3Ref


/// \defgroup PkgCircularKernel3AlgebraicClasses Algebraic Kernel and Classes
/// \ingroup PkgCircularKernel3Ref

/*!
\addtogroup PkgCircularKernel3Ref
\cgalPkgDescriptionBegin{3D Spherical Geometry Kernel,PkgCircularKernel3}
\cgalPkgPicture{segment_sphere_intersection_detail.png}
\cgalPkgSummaryBegin
\cgalPkgAuthors{Pedro Machado Manhães de Castro, Frédéric Cazals, Sébastien Loriot, and Monique Teillaud}
\cgalPkgDesc{This package is an extension of the linear \cgal %Kernel. It offers functionalities on spheres, circles, circular arcs and line segments, in the 3D space or restricted on a reference sphere.}
\cgalPkgManuals{Chapter_3D_Spherical_Geometry_Kernel,PkgCircularKernel3Ref}
\cgalPkgSummaryEnd
\cgalPkgShortInfoBegin
\cgalPkgSince{3.4}
\cgalPkgBib{cgal:cclt-sgk3}
\cgalPkgLicense{\ref licensesGPL "GPL"}
\cgalPkgShortInfoEnd
\cgalPkgDescriptionEnd

\cgalClassifedRefPages

\cgalCRPSection{Geometric Concepts}

- `SphericalKernel`

\cgalCRPSubsection{Object Types}

- `SphericalKernel::CircularArc_3`
- `SphericalKernel::CircularArcPoint_3`
- `SphericalKernel::LineArc_3`

\cgalCRPSubsection{Functors}

- `SphericalKernel::ConstructPlane_3`
- `SphericalKernel::ConstructSphere_3`
- `SphericalKernel::ConstructLine_3`
- `SphericalKernel::ConstructCircle_3`
- `SphericalKernel::ConstructCircularArcPoint_3`
- `SphericalKernel::ConstructLineArc_3`
- `SphericalKernel::ConstructCircularArc_3`
- `SphericalKernel::ConstructCircularMinVertex_3`
- `SphericalKernel::ConstructCircularMaxVertex_3`
- `SphericalKernel::ConstructCircularSourceVertex_3`
- `SphericalKernel::ConstructCircularTargetVertex_3`
- `SphericalKernel::ConstructBbox_3`
- `SphericalKernel::CompareX_3`
- `SphericalKernel::CompareY_3`
- `SphericalKernel::CompareZ_3`
- `SphericalKernel::CompareXY_3`
- `SphericalKernel::CompareXYZ_3`
- `SphericalKernel::CompareTheta_3`
- `SphericalKernel::CompareThetaZ_3`
- `SphericalKernel::CompareZAtTheta_3`
- `SphericalKernel::CompareZToRight_3`
- `SphericalKernel::Equal_3`
- `SphericalKernel::HasOn_3`
- `SphericalKernel::DoOverlap_3`
- `SphericalKernel::DoIntersect_3`
- `SphericalKernel::IsThetaMonotone_3`
- `SphericalKernel::BoundedSide_3`
- `SphericalKernel::HasOnBoundedSide_3`
- `SphericalKernel::HasOnUnboundedSide_3`
- `SphericalKernel::Intersect_3`
- `SphericalKernel::Split_3`
- `SphericalKernel::MakeThetaMonotone_3`
- `SphericalKernel::ComputeCircularX_3`
- `SphericalKernel::ComputeCircularY_3`
- `SphericalKernel::ComputeCircularZ_3`
- `SphericalKernel::ComputeApproximateSquaredLength_3`
- `SphericalKernel::ComputeApproximateAngle_3`
- `SphericalKernel::GetEquation`

\cgalCRPSection{Geometric Kernels and Classes}

\cgalCRPSubsection{Kernels}

- `CGAL::Spherical_kernel_3<Kernel,AlgebraicKernelForSpheres>`
- `CGAL::Exact_spherical_kernel_3`

\cgalCRPSubsection{Points}

- `CGAL::Circular_arc_point_3<SphericalKernel>`

\cgalCRPSubsection{Arcs}

- `CGAL::Line_arc_3<SphericalKernel>`
- `CGAL::Circular_arc_3<SphericalKernel>`

\cgalCRPSection{Constants and Enumerations}

- `CGAL::Circle_type`

\cgalCRPSection{Geometric Global Functions}

- \link compare_x_spherical_grp `CGAL::compare_x()` \endlink
- \link compare_y_spherical_grp `CGAL::compare_y()` \endlink
- \link compare_z_spherical_grp `CGAL::compare_z()` \endlink
- \link compare_xy_spherical_grp `CGAL::compare_xy()` \endlink
- \link compare_xyz_spherical_grp `CGAL::compare_xyz()` \endlink
- `CGAL::compare_theta()`
- `CGAL::compare_theta_z()`
- `CGAL::is_theta_monotone()`
- `CGAL::classify()`
- `CGAL::x_extremal_point()`
- `CGAL::y_extremal_point()`
- `CGAL::z_extremal_point()`
- `CGAL::theta_extremal_point()`
- `CGAL::x_extremal_points()`
- `CGAL::y_extremal_points()`
- `CGAL::z_extremal_points()`
- `CGAL::theta_extremal_points()`
- \link do_intersect_grp `CGAL::do_intersect()` \endlink
- \link intersection_grp `CGAL::intersection()` \endlink

\cgalCRPSection{Algebraic Concepts}

- `AlgebraicKernelForSpheres`

\cgalCRPSubsection{Functors}

- `AlgebraicKernelForSpheres::ConstructPolynomial_1_3`
- `AlgebraicKernelForSpheres::ConstructPolynomialForSpheres_2_3`
- `AlgebraicKernelForSpheres::ConstructPolynomialsForLines_3`
- `AlgebraicKernelForSpheres::CompareX`
- `AlgebraicKernelForSpheres::CompareY`
- `AlgebraicKernelForSpheres::CompareZ`
- `AlgebraicKernelForSpheres::CompareXY`
- `AlgebraicKernelForSpheres::CompareXYZ`
- `AlgebraicKernelForSpheres::SignAt`
- `AlgebraicKernelForSpheres::XCriticalPoints`
- `AlgebraicKernelForSpheres::YCriticalPoints`
- `AlgebraicKernelForSpheres::ZCriticalPoints`
- `AlgebraicKernelForSpheres::Solve`

\cgalCRPSection{Algebraic %Kernel and Classes}

\cgalCRPSubsection{%Kernel}

- `CGAL::Algebraic_kernel_for_spheres_2_3<RT>`

\cgalCRPSubsection{Polynomials}

- `CGAL::Polynomial_1_3<RT>`
- `CGAL::Polynomial_for_spheres_2_3<FT>`
- `CGAL::Polynomials_for_lines_3<FT>`

\cgalCRPSubsection{Roots of Polynomials}

- `CGAL::Sqrt_extension<NT,ROOT>`
- `CGAL::Root_for_spheres_2_3<RT>`
- `CGAL::Root_of_traits<RT>`


*/

