#include <DGtal/geometry/volumes/distance/ExactPredicateLpPowerSeparableMetric.h>
|
| ExactPredicateLpPowerSeparableMetric () |
|
| ~ExactPredicateLpPowerSeparableMetric () |
|
| ExactPredicateLpPowerSeparableMetric (const ExactPredicateLpPowerSeparableMetric &) |
|
ExactPredicateLpPowerSeparableMetric & | operator= (const ExactPredicateLpPowerSeparableMetric &) |
|
Weight | powerDistance (const Point &aPoint, const Point &aQ, const Weight &aWq) const |
|
DGtal::Closest | closestPower (const Point &origin, const Point &first, const Weight &wF, const Point &second, const Weight &wS) const |
|
Promoted | exactDistanceRepresentation (const Point &aP, const Point &aQ) const |
|
bool | hiddenByPower (const Point &u, const Weight &wu, const Point &v, const Weight &wv, const Point &w, const Weight &ww, const Point &startingPoint, const Point &endPoint, const typename Point::UnsignedComponent dim) const |
|
void | selfDisplay (std::ostream &out) const |
|
bool | isValid () const |
|
template<typename TSpace, typename TPromoted>
class DGtal::ExactPredicateLpPowerSeparableMetric< TSpace, 2, TPromoted >
Definition at line 280 of file ExactPredicateLpPowerSeparableMetric.h.
◆ Abscissa
template<typename TSpace , typename TPromoted >
◆ Point
template<typename TSpace , typename TPromoted >
◆ Promoted
template<typename TSpace , typename TPromoted >
◆ Space
template<typename TSpace , typename TPromoted >
◆ Value
template<typename TSpace , typename TPromoted >
◆ Vector
template<typename TSpace , typename TPromoted >
◆ Weight
template<typename TSpace , typename TPromoted >
◆ ExactPredicateLpPowerSeparableMetric() [1/2]
template<typename TSpace , typename TPromoted >
◆ ~ExactPredicateLpPowerSeparableMetric()
template<typename TSpace , typename TPromoted >
◆ ExactPredicateLpPowerSeparableMetric() [2/2]
template<typename TSpace , typename TPromoted >
◆ binarySearchHidden()
template<typename TSpace , typename TPromoted >
Perform a binary search on the interval [lower,upper] to detect the mid-point between u and v according to the l_p distance.
- Parameters
-
udim | coordinate of u along dimension dim |
vdim | coordinate of v along dimension dim |
nu | partial distance of u (sum of |xj-x_i|^p) discarding the term along the dimension dim |
nv | partial distance of v (sum of |xj-x_i|^p) discarding the term along the dimension dim |
lower | interval lower bound |
upper | interval upper bound |
- Returns
- the Voronoi boundary point coordinates along dimension dim.
◆ closestPower()
template<typename TSpace , typename TPromoted >
Given an origin and two weighted points, this method decides which one is closest to the origin. This method should be faster than comparing distance values.
- Parameters
-
origin | the origin |
first | the first point |
wF | the first point weight |
second | the second point |
wS | the second point weight $ |
- Returns
- a Closest enum: FIRST, SECOND or BOTH.
◆ exactDistanceRepresentation()
template<typename TSpace , typename TPromoted >
Compute an exact representation of Lp distances. We just return the sum of powers without computing the last 1/p power. I.e. only \( \sum |p_i- q_i|^p\) is given.
- Parameters
-
aP | a first point |
aQ | a second point |
- Returns
- the power p of the l_p distance between aP and aQ.
◆ hiddenByPower()
template<typename TSpace , typename TPromoted >
bool DGtal::ExactPredicateLpPowerSeparableMetric< TSpace, 2, TPromoted >::hiddenByPower |
( |
const Point & |
u, |
|
|
const Weight & |
wu, |
|
|
const Point & |
v, |
|
|
const Weight & |
wv, |
|
|
const Point & |
w, |
|
|
const Weight & |
ww, |
|
|
const Point & |
startingPoint, |
|
|
const Point & |
endPoint, |
|
|
const typename Point::UnsignedComponent |
dim |
|
) |
| const |
Given three sites (a,b,c) and a straight segment [startingPoint,endPoint] along dimension dim, we detect if the voronoi cells of a and c hide the voronoi cell of c on the straight line.
- Precondition
- both voronoi cells associated with a and b must intersect the straight line.
- Parameters
-
u | a site |
wu | a weight |
v | a site |
wv | a weight |
w | a site |
ww | a weight |
startingPoint | starting point of the segment |
endPoint | end point of the segment |
dim | direction of the straight line |
- Returns
- true if (a,c) hides b.
◆ isValid()
template<typename TSpace , typename TPromoted >
Checks the validity/consistency of the object.
- Returns
- 'true' if the object is valid, 'false' otherwise.
◆ operator=()
template<typename TSpace , typename TPromoted >
◆ powerDistance()
template<typename TSpace , typename TPromoted >
Return the power distance of a point aPoint and a weighted point (aQ,aWq)
- Parameters
-
aPoint | aPoint |
aQ | another point |
aWq | wieght of øa aQ |
- Returns
- the power distance
◆ selfDisplay()
template<typename TSpace , typename TPromoted >
Writes/Displays the object on an output stream.
- Parameters
-
out | the output stream where the object is written. |
The documentation for this class was generated from the following file: