Ball bound that works in arbitrary metric spaces. More...
Public Types | |
| typedef TMetric | Metric | 
| typedef TMetric | Metric | 
| typedef TPoint | Point | 
| typedef TPoint | Point | 
Public Member Functions | |
| void | CalculateMidpoint (Point *centroid) const | 
| Gets the center.   | |
| void | CalculateMidpoint (Point *centroid) const | 
| Gets the center.   | |
| TPoint & | center () | 
| const TPoint & | center () const | 
| TPoint & | center () | 
| const TPoint & | center () const | 
| bool | Contains (const Point &point) const | 
| Determines if a point is within this bound.   | |
| bool | Contains (const Point &point) const | 
| Determines if a point is within this bound.   | |
| double | MaxDistance (const DBallBound &other) const | 
| Computes maximum distance.   | |
| double | MaxDistance (const Point &point) const | 
| Computes maximum distance.   | |
| double | MaxDistance (const DBallBound &other) const | 
| Computes maximum distance.   | |
| double | MaxDistance (const Point &point) const | 
| Computes maximum distance.   | |
| double | MaxDistanceSq (const DBallBound &other) const | 
| double | MaxDistanceSq (const Point &point) const | 
| double | MaxDistanceSq (const DBallBound &other) const | 
| double | MaxDistanceSq (const Point &point) const | 
| double | MidDistance (const Point &point) const | 
| double | MidDistance (const DBallBound &other) const | 
| Calculates midpoint-to-midpoint bounding box distance.   | |
| double | MidDistance (const Point &point) const | 
| double | MidDistance (const DBallBound &other) const | 
| Calculates midpoint-to-midpoint bounding box distance.   | |
| double | MidDistanceSq (const DBallBound &other) const | 
| double | MidDistanceSq (const DBallBound &other) const | 
| double | MinDistance (const DBallBound &other) const | 
| Calculates minimum bound-to-bound squared distance.   | |
| double | MinDistance (const Point &point) const | 
| Calculates minimum bound-to-point squared distance.   | |
| double | MinDistance (const DBallBound &other) const | 
| Calculates minimum bound-to-bound squared distance.   | |
| double | MinDistance (const Point &point) const | 
| Calculates minimum bound-to-point squared distance.   | |
| double | MinDistanceSq (const DBallBound &other) const | 
| double | MinDistanceSq (const Point &point) const | 
| double | MinDistanceSq (const DBallBound &other) const | 
| double | MinDistanceSq (const Point &point) const | 
| double | MinimaxDistance (const DBallBound &other) const | 
| Computes minimax distance, where the other node is trying to avoid me.   | |
| double | MinimaxDistance (const DBallBound &other) const | 
| Computes minimax distance, where the other node is trying to avoid me.   | |
| double | MinimaxDistanceSq (const DBallBound &other) const | 
| double | MinimaxDistanceSq (const DBallBound &other) const | 
| double | MinToMid (const DBallBound &other) const | 
| Calculates closest-to-their-midpoint bounding box distance, i.e.   | |
| double | MinToMid (const DBallBound &other) const | 
| Calculates closest-to-their-midpoint bounding box distance, i.e.   | |
| double | MinToMidSq (const DBallBound &other) const | 
| double | MinToMidSq (const DBallBound &other) const | 
| double | radius () const | 
| double | radius () const | 
| DRange | RangeDistance (const DBallBound &other) const | 
| Calculates minimum and maximum bound-to-bound squared distance.   | |
| DRange | RangeDistance (const DBallBound &other) const | 
| Calculates minimum and maximum bound-to-bound squared distance.   | |
| DRange | RangeDistanceSq (const DBallBound &other) const | 
| DRange | RangeDistanceSq (const DBallBound &other) const | 
| void | set_radius (double d) | 
| void | set_radius (double d) | 
Ball bound that works in arbitrary metric spaces.
See LMetric for an example metric template parameter.
To initialize this, set the radius with set_radius and set the point by initializing point() directly. 
Definition at line 757 of file bounds.h.
| void DBallBound< TMetric, TPoint >::CalculateMidpoint | ( | Point * | centroid | ) |  const [inline] | 
        
Gets the center.
Don't really use this directly. This is only here for consistency with DHrectBound, so it can plug in more directly if a "centroid" is needed.
Definition at line 802 of file bounds.h.
References ot::InitCopy().
| void DBallBound< TMetric, TPoint >::CalculateMidpoint | ( | Point * | centroid | ) |  const [inline] | 
        
Gets the center.
Don't really use this directly. This is only here for consistency with DHrectBound, so it can plug in more directly if a "centroid" is needed.
Definition at line 802 of file bounds.h.
References ot::InitCopy().
| bool DBallBound< TMetric, TPoint >::Contains | ( | const Point & | point | ) |  const [inline] | 
        
Determines if a point is within this bound.
Definition at line 791 of file bounds.h.
References DBallBound< TMetric, TPoint >::MidDistance().
| bool DBallBound< TMetric, TPoint >::Contains | ( | const Point & | point | ) |  const [inline] | 
        
Determines if a point is within this bound.
Definition at line 791 of file bounds.h.
References DBallBound< TMetric, TPoint >::MidDistance().
| double DBallBound< TMetric, TPoint >::MaxDistance | ( | const DBallBound< TMetric, TPoint > & | other | ) |  const [inline] | 
        
Computes maximum distance.
Definition at line 843 of file bounds.h.
References DBallBound< TMetric, TPoint >::MidDistance().
| double DBallBound< TMetric, TPoint >::MaxDistance | ( | const Point & | point | ) |  const [inline] | 
        
Computes maximum distance.
Definition at line 832 of file bounds.h.
References DBallBound< TMetric, TPoint >::MidDistance().
| double DBallBound< TMetric, TPoint >::MaxDistance | ( | const DBallBound< TMetric, TPoint > & | other | ) |  const [inline] | 
        
Computes maximum distance.
Definition at line 843 of file bounds.h.
References DBallBound< TMetric, TPoint >::MidDistance().
| double DBallBound< TMetric, TPoint >::MaxDistance | ( | const Point & | point | ) |  const [inline] | 
        
Computes maximum distance.
Definition at line 832 of file bounds.h.
References DBallBound< TMetric, TPoint >::MidDistance().
| double DBallBound< TMetric, TPoint >::MidDistance | ( | const DBallBound< TMetric, TPoint > & | other | ) |  const [inline] | 
        
Calculates midpoint-to-midpoint bounding box distance.
Definition at line 907 of file bounds.h.
References DBallBound< TMetric, TPoint >::MidDistance().
| double DBallBound< TMetric, TPoint >::MidDistance | ( | const DBallBound< TMetric, TPoint > & | other | ) |  const [inline] | 
        
Calculates midpoint-to-midpoint bounding box distance.
Definition at line 907 of file bounds.h.
Referenced by DBallBound< TMetric, TPoint >::Contains(), DBallBound< TMetric, TPoint >::MaxDistance(), DBallBound< TMetric, TPoint >::MidDistance(), DBallBound< TMetric, TPoint >::MinDistance(), DBallBound< TMetric, TPoint >::MinimaxDistance(), DBallBound< TMetric, TPoint >::MinToMid(), and DBallBound< TMetric, TPoint >::RangeDistance().
| double DBallBound< TMetric, TPoint >::MinDistance | ( | const DBallBound< TMetric, TPoint > & | other | ) |  const [inline] | 
        
Calculates minimum bound-to-bound squared distance.
Definition at line 820 of file bounds.h.
References math::ClampNonNegative(), and DBallBound< TMetric, TPoint >::MidDistance().
| double DBallBound< TMetric, TPoint >::MinDistance | ( | const Point & | point | ) |  const [inline] | 
        
Calculates minimum bound-to-point squared distance.
Definition at line 809 of file bounds.h.
References math::ClampNonNegative(), and DBallBound< TMetric, TPoint >::MidDistance().
| double DBallBound< TMetric, TPoint >::MinDistance | ( | const DBallBound< TMetric, TPoint > & | other | ) |  const [inline] | 
        
Calculates minimum bound-to-bound squared distance.
Definition at line 820 of file bounds.h.
References math::ClampNonNegative(), and DBallBound< TMetric, TPoint >::MidDistance().
| double DBallBound< TMetric, TPoint >::MinDistance | ( | const Point & | point | ) |  const [inline] | 
        
Calculates minimum bound-to-point squared distance.
Definition at line 809 of file bounds.h.
References math::ClampNonNegative(), and DBallBound< TMetric, TPoint >::MidDistance().
| double DBallBound< TMetric, TPoint >::MinimaxDistance | ( | const DBallBound< TMetric, TPoint > & | other | ) |  const [inline] | 
        
Computes minimax distance, where the other node is trying to avoid me.
Definition at line 895 of file bounds.h.
References math::ClampNonNegative(), and DBallBound< TMetric, TPoint >::MidDistance().
| double DBallBound< TMetric, TPoint >::MinimaxDistance | ( | const DBallBound< TMetric, TPoint > & | other | ) |  const [inline] | 
        
Computes minimax distance, where the other node is trying to avoid me.
Definition at line 895 of file bounds.h.
References math::ClampNonNegative(), and DBallBound< TMetric, TPoint >::MidDistance().
| double DBallBound< TMetric, TPoint >::MinToMid | ( | const DBallBound< TMetric, TPoint > & | other | ) |  const [inline] | 
        
Calculates closest-to-their-midpoint bounding box distance, i.e.
calculates their midpoint and finds the minimum box-to-point distance.
Equivalent to:  other.CalcMidpoint(&other_midpoint) return MinDistanceSqToPoint(other_midpoint)  
Definition at line 883 of file bounds.h.
References math::ClampNonNegative(), and DBallBound< TMetric, TPoint >::MidDistance().
| double DBallBound< TMetric, TPoint >::MinToMid | ( | const DBallBound< TMetric, TPoint > & | other | ) |  const [inline] | 
        
Calculates closest-to-their-midpoint bounding box distance, i.e.
calculates their midpoint and finds the minimum box-to-point distance.
Equivalent to:  other.CalcMidpoint(&other_midpoint) return MinDistanceSqToPoint(other_midpoint)  
Definition at line 883 of file bounds.h.
References math::ClampNonNegative(), and DBallBound< TMetric, TPoint >::MidDistance().
| DRange DBallBound< TMetric, TPoint >::RangeDistance | ( | const DBallBound< TMetric, TPoint > & | other | ) |  const [inline] | 
        
Calculates minimum and maximum bound-to-bound squared distance.
Example: bound1.MinDistanceSq(other) for minimum squared distance.
Definition at line 856 of file bounds.h.
References math::ClampNonNegative(), and DBallBound< TMetric, TPoint >::MidDistance().
| DRange DBallBound< TMetric, TPoint >::RangeDistance | ( | const DBallBound< TMetric, TPoint > & | other | ) |  const [inline] | 
        
Calculates minimum and maximum bound-to-bound squared distance.
Example: bound1.MinDistanceSq(other) for minimum squared distance.
Definition at line 856 of file bounds.h.
References math::ClampNonNegative(), and DBallBound< TMetric, TPoint >::MidDistance().
 1.6.3