CGAL 5.4.1 - 2D and 3D Linear Geometry Kernel
Kernel::PowerSideOfBoundedPowerSphere_3 Concept Reference

Definition

Refines:
AdaptableFunctor (with five arguments)
See also
CGAL::Weighted_point_3<Kernel>
ComputePowerProduct_3 for the definition of orthogonality for power distances.
PowerSideOfOrientedPowerSphere_3

Operations

A model of this concept must provide:

CGAL::Bounded_side operator() (const Kernel::Weighted_point_3 &p, const Kernel::Weighted_point_3 &q, const Kernel::Weighted_point_3 &r, const Kernel::Weighted_point_3 &s, const Kernel::Weighted_point_3 &t)
 Let \( {z(p,q,r,s)}^{(w)}\) be the power sphere of the weighted points \( (p,q,r,s)\). More...
 
CGAL::Bounded_side operator() (const Kernel::Weighted_point_3 &p, const Kernel::Weighted_point_3 &q, const Kernel::Weighted_point_3 &r, const Kernel::Weighted_point_3 &t)
 returns the sign of the power test of t with respect to the smallest sphere orthogonal to p, q, and r. More...
 
CGAL::Bounded_side operator() (const Kernel::Weighted_point_3 &p, const Kernel::Weighted_point_3 &q, const Kernel::Weighted_point_3 &t)
 returns the sign of the power test of t with respect to the smallest sphere orthogonal to p and q. More...
 
CGAL::Bounded_side operator() (const Kernel::Weighted_point_3 &p, const Kernel::Weighted_point_3 &t)
 returns the sign of the power test of t with respect to the smallest sphere orthogonal to p.
 

Member Function Documentation

◆ operator()() [1/3]

CGAL::Bounded_side Kernel::PowerSideOfBoundedPowerSphere_3::operator() ( const Kernel::Weighted_point_3 p,
const Kernel::Weighted_point_3 q,
const Kernel::Weighted_point_3 r,
const Kernel::Weighted_point_3 s,
const Kernel::Weighted_point_3 t 
)

Let \( {z(p,q,r,s)}^{(w)}\) be the power sphere of the weighted points \( (p,q,r,s)\).

This method returns:

  • ON_BOUNDARY if t is orthogonal to \( {z(p,q,r,s)}^{(w)}\),
  • ON_UNBOUNDED_SIDE if t lies outside the bounded sphere of center \( z(p,q,r,s)\) and radius \( \sqrt{ w_{z(p,q,r,s)}^2 + w_t^2 }\) (which is equivalent to \( \Pi({t}^{(w)},{z(p,q,r,s)}^{(w)}) >0\)),
  • ON_BOUNDED_SIDE if t lies inside this bounded sphere.

The order of the points p, q, r, and s does not matter.

Precondition
p, q, r, s are not coplanar.

If all the points have a weight equal to 0, then power_side_of_bounded_power_sphere_3(p,q,r,s,t) == side_of_bounded_sphere(p,q,r,s,t).

◆ operator()() [2/3]

CGAL::Bounded_side Kernel::PowerSideOfBoundedPowerSphere_3::operator() ( const Kernel::Weighted_point_3 p,
const Kernel::Weighted_point_3 q,
const Kernel::Weighted_point_3 r,
const Kernel::Weighted_point_3 t 
)

returns the sign of the power test of t with respect to the smallest sphere orthogonal to p, q, and r.

Precondition
p, q, r are not collinear.

◆ operator()() [3/3]

CGAL::Bounded_side Kernel::PowerSideOfBoundedPowerSphere_3::operator() ( const Kernel::Weighted_point_3 p,
const Kernel::Weighted_point_3 q,
const Kernel::Weighted_point_3 t 
)

returns the sign of the power test of t with respect to the smallest sphere orthogonal to p and q.

Precondition
p and q have different bare points.