CGAL 6.1 - 2D and 3D Linear Geometry Kernel

Loading...
Searching...
No Matches
List of all members
Kernel::PowerSideOfBoundedPowerSphere_3 Concept Reference
Reference Manual » Concepts » Kernel Function Object Concepts

## Definition

Refines
  `AdaptableQuinaryFunction`

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)\).
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`.
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`.
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.