Go to the documentation of this file.
17 #ifndef IGNITION_MATH_FRUSTUM_HH_
18 #define IGNITION_MATH_FRUSTUM_HH_
23 #include <ignition/math/config.hh>
29 inline namespace IGNITION_MATH_VERSION_NAMESPACE
42 FRUSTUM_PLANE_NEAR = 0,
45 FRUSTUM_PLANE_FAR = 1,
48 FRUSTUM_PLANE_LEFT = 2,
51 FRUSTUM_PLANE_RIGHT = 3,
54 FRUSTUM_PLANE_TOP = 4,
57 FRUSTUM_PLANE_BOTTOM = 5
81 public:
Frustum(
const double _near,
84 const double _aspectRatio,
98 public:
double Near()
const;
104 public:
void SetNear(
const double _near);
110 public:
double Far()
const;
116 public:
void SetFar(
const double _far);
136 public:
double AspectRatio()
const;
142 public:
void SetAspectRatio(
const double _aspectRatio);
147 public:
Planed Plane(
const FrustumPlane _plane)
const;
152 public:
bool Contains(
const Box &_b)
const;
157 public:
bool Contains(
const Vector3d &_p)
const;
162 public:
Pose3d Pose()
const;
167 public:
void SetPose(
const Pose3d &_pose);
176 private:
void ComputePlanes();
180 private: FrustumPrivate *dataPtr;
An angle and related functions.
Definition: Angle.hh:47
Mathematical representation of a frustum and related functions.
Definition: Frustum.hh:36
The Vector3 class represents the generic vector containing 3 elements. Since it's commonly used to ke...
Definition: Vector3.hh:39
Mathematical representation of a box and related functions.
Definition: Box.hh:38
A plane and related functions.
Definition: Plane.hh:34
Encapsulates a position and rotation in three space.
Definition: Pose3.hh:33
FrustumPlane
Planes that define the boundaries of the frustum.
Definition: Frustum.hh:39