13 for (
unsigned int i = 0; i <
Dim; ++i)
15 _pmin[i] = -std::numeric_limits<ScalarType>::infinity();
16 _pmax[i] = std::numeric_limits<ScalarType>::infinity();
20 template <
class Po
int>
27 *left = *right = *
this;
30 left->_pmax[axis] = s;
34 right->_pmin[axis] = s;
38 template <
class Po
int>
47 template <
class Po
int>
52 for (
unsigned int i = 0; i <
Dim; ++i)
66 template <
class Po
int>
73 template <
class Po
int>
80 template <
class Po
int>
87 template <
class Po
int>
94 template <
class Po
int>
98 return (_pmax - _pmin).Length();
101 template <
class Po
int>
105 for (
unsigned int i = 0; i <
Dim; ++i)
106 if (_pmin[i] > p[i] || _pmax[i] < p[i])
113 template <
class Po
int>
117 for (
unsigned int i = 0; i <
Dim; ++i)
void Center(Point *center) const
Point::ScalarType ScalarType
void Split(unsigned int axis, ScalarType s, AABox< Point > *left, AABox< Point > *right) const
Point operator[](unsigned int index) const
bool IsInside(const Point &p) const
AABox< Point > & operator+=(const PointType &p)
ScalarType DiagLength() const