17 #ifndef _IGNITION_FRUSTUM_HH_
18 #define _IGNITION_FRUSTUM_HH_
39 FRUSTUM_PLANE_NEAR = 0,
42 FRUSTUM_PLANE_FAR = 1,
45 FRUSTUM_PLANE_LEFT = 2,
48 FRUSTUM_PLANE_RIGHT = 3,
51 FRUSTUM_PLANE_TOP = 4,
54 FRUSTUM_PLANE_BOTTOM = 5
78 public:
Frustum(
const double _near,
81 const double _aspectRatio,
95 public:
double Near()
const;
101 public:
void SetNear(
const double _near);
107 public:
double Far()
const;
113 public:
void SetFar(
const double _far);
133 public:
double AspectRatio()
const;
139 public:
void SetAspectRatio(
const double _aspectRatio);
144 public:
Planed Plane(
const FrustumPlane _plane)
const;
149 public:
bool Contains(
const Box &_b)
const;
154 public:
bool Contains(
const Vector3d &_p)
const;
159 public:
Pose3d Pose()
const;
164 public:
void SetPose(
const Pose3d &_pose);
168 private:
void ComputePlanes();
An angle and related functions.
Definition: Angle.hh:44
FrustumPlane
Planes that define the boundaries of the frustum.
Definition: Frustum.hh:36
#define IGNITION_VISIBLE
Use to represent "symbol visible" if supported.
Definition: Helpers.hh:408
Definition: FrustumPrivate.hh:32
A plane and related functions.
Definition: Plane.hh:32
Mathematical representation of a box and related functions.
Definition: Box.hh:33
Mathematical representation of a frustum and related functions.
Definition: Frustum.hh:33
static const Pose3< double > Zero
math::Pose3<T>(0, 0, 0, 0, 0, 0)
Definition: Pose3.hh:33