BoundFrustum Class
This class serves to construct the bounding frustum in single precision coordinates.
Instances of this class are deleted automatically when it is necessary.
In case of double precision coordinates, the bounding frustum should be constructed by using the WorldBoundFrustum class. It includes the same functions as the BoundFrustum class, but its functions deal with the double precision coordinates.
To support both single and double precision builds, you can use the WorldBoundFrustum class only. The engine will automatically substitute it with the BoundFrustum if it is required.
BoundFrustum Class
Members
BoundFrustum ()
Constructor. Creates an empty bounding frustum.BoundFrustum (const mat4 & projection, const mat4 & modelview)
Initialization by matrices.Arguments
- const mat4 & projection - A projection matrix.
- const mat4 & modelview - A modelview matrix.
BoundFrustum (const BoundFrustum & bf)
Initialization by the bounding frustum.Arguments
- const BoundFrustum & bf - The bounding frustum.
BoundFrustum (const BoundFrustum & bf, const mat4 & itransform)
Initialization by the bounding frustum and transformation matrix.Arguments
- const BoundFrustum & bf - The bounding frustum.
- const mat4 & itransform - The inverse transformation matrix.
~BoundFrustum ()
Destructor.void clear ()
Clears the bounding frustum.void set (const mat4 & projection, const mat4 & modelview)
Sets the bounding frustum by matrices.Arguments
- const mat4 & projection - A projection matrix.
- const mat4 & modelview - A modelview matrix.
void set (const BoundFrustum & bf)
Sets the bounding frustum by the bounding frustum.Arguments
- const BoundFrustum & bf - The bounding frustum.
void set (const BoundFrustum & bf, const mat4 & itransform)
Sets the bounding frustum by the bounding frustum and transformation matrix.Arguments
- const BoundFrustum & bf - The bounding frustum.
- const mat4 & itransform - The inverse transformation matrix.
int inside (const vec3 & point, float radius) const
Checks if the sphere is inside the bounding frustum.Arguments
- const vec3 & point - The coordinates of the center of the sphere.
- float radius - The sphere radius.
Return value
Return 1 if the sphere is inside the bounding frustum; otherwise, 0 is returned.int inside (const vec3 & min, const vec3 & max) const
Checks if the box is inside the bounding frustum.Arguments
- const vec3 & min - The box minimum coordinate.
- const vec3 & max - The box maximum coordinate.
Return value
Return 1 if the box is inside the bounding frustum; otherwise, 0 is returned.int inside (const BoundSphere & bs) const
Checks if the bounding sphere is inside the bounding frustum.Arguments
- const BoundSphere & bs - The bounding sphere.
Return value
Return 1 if the bounding sphere is inside the bounding frustum; otherwise, 0 is returned.int inside (const BoundBox & bb) const
Checks if the bounding box is inside the bounding frustum.Arguments
- const BoundBox & bb - The bounding box.
Return value
Return 1 if the bounding box is inside the bounding frustum; otherwise, 0 is returned.UNIGINE_INLINE int isValid () const
Checks the bounding frustum status.Return value
Return 1 if the bounding frustum is valid.UNIGINE_INLINE const mat4 & getProjection () const
Gets the bounding frustum projection matrix.Return value
The bounding frustum projection matrix.UNIGINE_INLINE const mat4 & getModelview () const
Gets the bounding frustum modelview matrix.Return value
The bounding frustum modelview matrix.UNIGINE_INLINE const vec4 * getPlanes () const
Gets the bounding frustum cliping planes array.Return value
The bounding frustum cliping planes array.Last update: 2017-07-03
Help improve this article
Was this article helpful?
(or select a word/phrase and press Ctrl+Enter)