CGAL 4.12.1 - 2D and 3D Linear Geometry Kernel
Kernel::PowerSideOfBoundedPowerCircle_2 Concept Reference

## Definition

Refines:
AdaptableFunctor (with four arguments)
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)$$. More...

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. More...

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.

## ◆ 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.