#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: