CGAL 5.1 - 2D and 3D Linear Geometry Kernel
|
#include <Concepts/FunctionObjectConcepts.h>
AdaptableFunctor
(with two arguments)Operations | |
Kernel::FT | operator() (const Kernel::Weighted_point_2 &pw, const Kernel::Weighted_point_2 &qw) const |
returns the power product of pw and qw . More... | |
Kernel::FT Kernel::ComputePowerProduct_2::operator() | ( | const Kernel::Weighted_point_2 & | pw, |
const Kernel::Weighted_point_2 & | qw | ||
) | const |
returns the power product of pw
and qw
.
Let \( {p}^{(w)} = (p,w_p), p\in\mathbb{R}^2, w_p\in\mathbb{R}\) and \( {q}^{(w)}=(q,w_q), q\in\mathbb{R}^2, w_q\in\mathbb{R}\) be two weighted points.
The power product, also called power distance between \( {p}^{(w)}\) and \( {q}^{(w)}\) is defined as
\[ \Pi({p}^{(w)},{q}^{(w)}) = {\|{p-q}\|^2-w_p-w_q} \]
where \( \|{p-q}\|\) is the Euclidean distance between \( p\) and \( q\).
The weighted points \( {p}^{(w)}\) and \( {q}^{(w)}\) are said to be orthogonal iff \( \Pi{({p}^{(w)},{q}^{(w)})} = 0\).
Three weighted points have, in 2D, a unique common orthogonal weighted point called the power circle. The power segment will denote the weighted point orthogonal to two weighted points on the line defined by these two points.