17 #ifndef _IGNITION_BOX_HH_
18 #define _IGNITION_BOX_HH_
49 public:
Box(
double _vec1X,
double _vec1Y,
double _vec1Z,
50 double _vec2X,
double _vec2Y,
double _vec2Z);
54 public:
Box(
const Box &_b);
57 public:
virtual ~
Box();
61 public:
double XLength()
const;
65 public:
double YLength()
const;
69 public:
double ZLength()
const;
81 public:
void Merge(
const Box &_box);
86 public:
Box &operator=(
const Box &_b);
91 public:
Box operator+(
const Box &_b)
const;
96 public:
const Box &operator+=(
const Box &_b);
101 public:
bool operator==(
const Box &_b)
const;
106 public:
bool operator!=(
const Box &_b)
const;
120 _out <<
"Min[" << _b.min <<
"] Max[" << _b.max <<
"]";
158 public:
bool Intersects(
const Box &_box)
const;
167 private:
enum Extent {EXTENT_NULL, EXTENT_FINITE};
171 private: Extent extent;
const Vector3d & Max() const
Get the maximum corner.
Definition: Box.hh:134
#define IGNITION_VISIBLE
Use to represent "symbol visible" if supported.
Definition: Helpers.hh:346
T max(const std::vector< T > &_values)
get the maximum value of vector of values
Definition: Helpers.hh:150
Vector3d & Min()
Get a mutable version of the minimum corner.
Definition: Box.hh:141
Mathematical representation of a box and related functions.
Definition: Box.hh:30
friend std::ostream & operator<<(std::ostream &_out, const ignition::math::Box &_b)
Output operator.
Definition: Box.hh:117
const Vector3d & Min() const
Get the minimum corner.
Definition: Box.hh:127
Vector3d & Max()
Get a mutable version of the maximum corner.
Definition: Box.hh:148
T min(const std::vector< T > &_values)
get the minimum value of vector of values
Definition: Helpers.hh:163