CGAL 5.6.3 - 2D and 3D Linear Geometry Kernel

Loading...
Searching...
No Matches
List of all members
Kernel::PowerSideOfBoundedPowerCircle_2 Concept Reference
2D and 3D Linear Geometry Kernel Reference » Concepts » Kernel Function Object Concepts

## Definition

Refines
  `AdaptableQuaternaryFunction`

See also
  `CGAL::Weighted_point_2<Kernel>`
  `ComputePowerProduct_2` for the definition of orthogonality for power distances.
  `PowerSideOfOrientedPowerCircle_2`

## Operations
A model of this concept must provide:
CGAL::Bounded_side | operator() (const Kernel::Weighted_point_2 &p, const Kernel::Weighted_point_2 &q, const Kernel::Weighted_point_2 &r, const Kernel::Weighted_point_2 &t)
| Let \( {z(p,q,r)}^{(w)}\) be the power circle of the weighted points \( (p,q,r)\).
CGAL::Bounded_side | operator() (const Kernel::Weighted_point_2 &p, const Kernel::Weighted_point_2 &q, const Kernel::Weighted_point_2 &t)
| returns the sign of the power test of `t` with respect to the smallest circle orthogonal to `p` and `q`.
CGAL::Bounded_side | operator() (const Kernel::Weighted_point_2 &p, const Kernel::Weighted_point_2 &t)
| returns the sign of the power test of `t` with respect to the smallest circle orthogonal to `p`.

## Member Function Documentation

## ◆ operator()() [1/2]

CGAL::Bounded_side Kernel::PowerSideOfBoundedPowerCircle_2::operator() | ( | const Kernel::Weighted_point_2 & | p,
|  | const Kernel::Weighted_point_2 & | q,
|  | const Kernel::Weighted_point_2 & | r,
|  | const Kernel::Weighted_point_2 & | t
| ) |  |

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

This method returns:

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

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

Precondition
  `p`, `q`, and `r` are not collinear.

If all the points have a weight equal to 0, then `power_side_of_bounded_power_circle_2(p,q,r,t)` == `side_of_bounded_circle(p,q,r,t)`.

## ◆ operator()() [2/2]

CGAL::Bounded_side Kernel::PowerSideOfBoundedPowerCircle_2::operator() | ( | const Kernel::Weighted_point_2 & | p,
|  | const Kernel::Weighted_point_2 & | q,
|  | const Kernel::Weighted_point_2 & | t
| ) |  |

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

Precondition
  `p` and `q` have different bare points.