
/*!
\ingroup PkgCircularKernel3GeometricConcepts
\cgalConcept

\sa `SphericalKernel::CompareZToRight_3`

*/
class SphericalKernel::CompareZAtTheta_3 {
public:

/// \name Operations
/// An object of this type must provide:
/// @{

/*!

compares the \f$ z\f$-coordinates of the two intersections points of `a0` and `a1` with the meridian defined by `m` (see Section \ref sectionSKobjects).
\pre `a0` and `a1` lie on the context sphere used by the function `SphericalKernel::compare_z_at_theta_3_object`. `m` \f$ \neq(0,0,0)\f$ and the \f$ z\f$-coordinate of `m` is \f$ 0\f$. Arcs `a0` and `a1` are \f$ \theta\f$-monotone and both intersected by the meridian defined by `m`(see Section \ref sectionSKobjects).
*/
Comparison_result operator()
( const SphericalKernel::Circular_arc_3& a0,
const SphericalKernel::Circular_arc_3& a1,
const SphericalKernel::Vector_3 &m);

/*!
given a meridian anchored at the poles of the context sphere used by the function `SphericalKernel::compare_z_at_theta_3_object`, and passing through point `p`,
compares the \f$ z\f$-coordinate of point `p` and that of the intersection of the meridian with `a`.
\pre `a` and `p` lie on the context sphere used by the function `SphericalKernel::compare_z_at_theta_3_object`, arc `a` is \f$ \theta\f$-monotone and the meridian passing through `p` intersects arc `a`.
*/
Comparison_result operator()
( const SphericalKernel::Circular_arc_point_3& p,
const SphericalKernel::Circular_arc_3& a);

/// @}

}; /* end SphericalKernel::CompareZAtTheta_3 */

