Unigine::BoundFrustum Class
Header: | #include <UnigineBounds.h> |
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 & invtransform)
Initialization by the bounding frustum and transformation matrix.Arguments
- const BoundFrustum & bf - The bounding frustum.
- const mat4 & invtransform - The inverse transformation matrix.
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.
const mat4 & getModelview() const
Gets the bounding frustum modelview matrix.Return value
The bounding frustum modelview matrix.const vec4 * getPlanes() const
Gets the bounding frustum cliping planes array.Return value
The bounding frustum cliping planes array.const mat4 & getProjection() const
Return value
The bounding frustum projection matrix.int isValid() const
Checks the bounding frustum status.Return value
1 if the bounding frustum is valid.void clear()
Clears the bounding frustum.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
1 if the sphere is inside the bounding frustum; otherwise, 0.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
1 if the box is inside the bounding frustum; otherwise, 0.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
1 if the bounding sphere is inside the bounding frustum; otherwise, 0.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
1 if the bounding box is inside the bounding frustum; otherwise, 0.int insideAll(const BoundBox & bb)
Arguments
- const BoundBox & bb
int insideAll(const BoundSphere & bs)
Arguments
- const BoundSphere & bs
Last update: 2017-07-03
Help improve this article
Was this article helpful?
(or select a word/phrase and press Ctrl+Enter)