#include <EstimateDiameter.hpp>
Diameter Estimator class If you need a longer period (currently 2^128-1) of the RandomGenerator use the RandomGenerators::XorShift1024Star
Definition at line 23 of file EstimateDiameter.hpp.
ApproxMVBB::DiameterEstimator::DiameterEstimator | ( | std::size_t | seed = RandomGenerators::defaultSeed | ) | [inline] |
Definition at line 26 of file EstimateDiameter.hpp.
void ApproxMVBB::DiameterEstimator::_DoNotTryToGetTightBounds | ( | ) | [inline, private] |
Definition at line 129 of file EstimateDiameter.hpp.
void ApproxMVBB::DiameterEstimator::_DoNotTryToReduceQ | ( | ) | [inline, private] |
Definition at line 117 of file EstimateDiameter.hpp.
void ApproxMVBB::DiameterEstimator::_DoTryToGetTightBounds | ( | ) | [inline, private] |
Definition at line 128 of file EstimateDiameter.hpp.
void ApproxMVBB::DiameterEstimator::_DoTryToReduceQ | ( | ) | [inline, private] |
Definition at line 116 of file EstimateDiameter.hpp.
int ApproxMVBB::DiameterEstimator::_GetQscan | ( | ) | [inline, private] |
Definition at line 124 of file EstimateDiameter.hpp.
int ApproxMVBB::DiameterEstimator::_GetReductionModeInIterative | ( | ) | [inline, private] |
Definition at line 77 of file EstimateDiameter.hpp.
int ApproxMVBB::DiameterEstimator::_GetReductionModeOfDbleNorm | ( | ) | [inline, private] |
Definition at line 110 of file EstimateDiameter.hpp.
int ApproxMVBB::DiameterEstimator::_GetReductionModeOfDiameter | ( | ) | [inline, private] |
Definition at line 93 of file EstimateDiameter.hpp.
int ApproxMVBB::DiameterEstimator::_GetTightBounds | ( | ) | [inline, private] |
Definition at line 130 of file EstimateDiameter.hpp.
int ApproxMVBB::DiameterEstimator::_GetTryToReduceQ | ( | ) | [inline, private] |
Definition at line 118 of file EstimateDiameter.hpp.
int ApproxMVBB::DiameterEstimator::_GetVerboseWhenReducing | ( | ) | [inline, private] |
Definition at line 60 of file EstimateDiameter.hpp.
void ApproxMVBB::DiameterEstimator::_NoVerboseWhenReducing | ( | ) | [inline, private] |
Definition at line 59 of file EstimateDiameter.hpp.
void ApproxMVBB::DiameterEstimator::_SetQscanToBackward | ( | ) | [inline, private] |
Definition at line 123 of file EstimateDiameter.hpp.
void ApproxMVBB::DiameterEstimator::_SetQscanToForward | ( | ) | [inline, private] |
Definition at line 122 of file EstimateDiameter.hpp.
void ApproxMVBB::DiameterEstimator::_SetReductionModeInIterative | ( | int | m | ) | [inline, private] |
Definition at line 65 of file EstimateDiameter.hpp.
void ApproxMVBB::DiameterEstimator::_SetReductionModeOfDbleNorm | ( | int | m | ) | [inline, private] |
Definition at line 98 of file EstimateDiameter.hpp.
void ApproxMVBB::DiameterEstimator::_SetReductionModeOfDiameter | ( | int | m | ) | [inline, private] |
Definition at line 81 of file EstimateDiameter.hpp.
void ApproxMVBB::DiameterEstimator::_VerboseWhenReducing | ( | ) | [inline, private] |
Definition at line 58 of file EstimateDiameter.hpp.
double ApproxMVBB::DiameterEstimator::estimateDiameter | ( | Diameter::TypeSegment * | theDiam, |
double const ** | theList, | ||
const int | first, | ||
const int | last, | ||
const int | dim, | ||
double | epsilon | ||
) |
Raw function to estimate the diameter of a point cloud
theDiam | returns the diameter info |
theList | input point cloud (look at example how to call this function) |
first | First index into the point cloud |
dim | dimension of the points |
epsilon | the accuracy of the diameter estimation such that [diam_min, diam_max] <= epsilon, and [diam_min, diam_max] contains the true diameter |
Definition at line 27 of file EstimateDiameter.cpp.
double ApproxMVBB::DiameterEstimator::estimateDiameterInOneList | ( | Diameter::TypeSegment * | theDiam, |
double const ** | theList, | ||
const int | first, | ||
const int | last, | ||
const int | dim, | ||
double | _epsilon_ | ||
) | [private] |
Definition at line 43 of file EstimateDiameter.cpp.
int ApproxMVBB::DiameterEstimator::getRandomInt | ( | unsigned int | min, |
unsigned int | max | ||
) | [inline, private] |
TODO: ugly cast, I dont want to change the estimater code
Definition at line 136 of file EstimateDiameter.hpp.
int ApproxMVBB::DiameterEstimator::_Q_scan_ = 0 [private] |
Definition at line 121 of file EstimateDiameter.hpp.
int ApproxMVBB::DiameterEstimator::_reduction_mode_in_iterative_ = 1 [private] |
reduction in the iterative search of the double normal
Definition at line 64 of file EstimateDiameter.hpp.
int ApproxMVBB::DiameterEstimator::_reduction_mode_of_dbleNorm_ = 1 [private] |
Definition at line 97 of file EstimateDiameter.hpp.
int ApproxMVBB::DiameterEstimator::_reduction_mode_of_diameter_ = 1 [private] |
'reduction' of diameter
Definition at line 80 of file EstimateDiameter.hpp.
int ApproxMVBB::DiameterEstimator::_tight_bounds_ = 0 [private] |
Definition at line 127 of file EstimateDiameter.hpp.
int ApproxMVBB::DiameterEstimator::_try_to_reduce_Q_ = 1 [private] |
Definition at line 114 of file EstimateDiameter.hpp.
int ApproxMVBB::DiameterEstimator::_verbose_when_reducing_ = 0 [private] |
some settings from the original code ================================ verbose when reducing
Definition at line 57 of file EstimateDiameter.hpp.
RandomGenerators::DefaultRandomGen ApproxMVBB::DiameterEstimator::m_gen [private] |
Random number generator.
=====================================================================
Definition at line 133 of file EstimateDiameter.hpp.