30 nassertv(!_min.is_nan() && !_max.is_nan());
31 nassertv(_min[0] <= _max[0] && _min[1] <= _max[1] && _min[2] <= _max[2]);
61 INLINE_MATHUTIL
int BoundingBox::
62 get_num_points()
const {
71 nassertr(n >= 0 && n < 8, LPoint3::zero());
75 const LPoint3 *a = &_min;
76 return LPoint3(a[(n>>2)&1][0], a[(n>>1)&1][1], a[(n)&1][2]);
82 INLINE_MATHUTIL
int BoundingBox::
83 get_num_planes()
const {
92 nassertr(n >= 0 && n < 6, LPlane());
103 nassertv(!min.is_nan() && !max.is_nan());
104 nassertv(_min[0] <= _max[0] && _min[1] <= _max[1] && _min[2] <= _max[2]);
get_point
Returns the nth vertex of the rectangular solid.
bool is_empty() const
Any kind of volume might be empty.
void set_min_max(const LPoint3 &min, const LPoint3 &max)
Sets the min and max point of the rectangular solid.
bool is_infinite() const
The other side of the empty coin is an infinite volume.
const LPoint3 & get_maxq() const
An inline accessor for the maximum value.
get_plane
Returns the nth face of the rectangular solid.
BoundingBox()
Constructs an empty box object.
const LPoint3 & get_minq() const
An inline accessor for the minimum value.