|
| | bbox () |
| | Default Constructor.
|
| |
| | bbox (const vec3 &minimum, const vec3 &maximum) |
| | Constructor that sets values from vector values passed.
|
| |
| | bbox (float xMin, float yMin, float zMin, float xMax, float yMax, float zMax) |
| | Constructor that sets values from float values passed.
|
| |
| plane | get_plane (volume_plane::e side) const |
| | Retrieves the plane for the specified side of the bounding box.
|
| |
| void | get_plane_points (volume_plane::e side, vec3 points_out[]) const |
| | Retrieves the four points that form the boundary of the specified side of the bounding box.
|
| |
| bbox & | from_points (const char *point_buffer, unsigned int point_count, unsigned int point_stride, bool reset=true) |
| | Calculates the bounding box based on the points specified.
|
| |
| bbox & | from_sphere (const vec3 ¢er, float radius) |
| | Calculates the bounding box based on the sphere specified.
|
| |
| bool | intersect (const bbox &bounds) const |
| | Tests to see if this AABB is intersected by another AABB.
|
| |
| bool | intersect (const bbox &bounds, bool &contained) const |
| | Tests to see if this AABB is intersected by another AABB with full containment test.
|
| |
| bool | intersect (const bbox &bounds, bbox &intersection) const |
| | Tests to see if this AABB is intersected by another AABB and returns the resulting intersection.
|
| |
| bool | intersect (const bbox &bounds, const vec3 &tolerance) const |
| | Tests to see if this AABB is intersected by another AABB with a tolerance.
|
| |
| bool | intersect (const vec3 &origin, const vec3 &velocity, float &t, bool restrict_range=true) const |
| | Tests to see if a ray intersects the AABB.
|
| |
| bool | intersect (const vec3 &v0, const vec3 &v1, const vec3 &v2, const bbox &triangle_bounds) const |
| | Tests to see if a triangle intersects the AABB.
|
| |
| bool | intersect (const vec3 &v0, const vec3 &v1, const vec3 &v2) const |
| | Tests to see if a triangle intersects the AABB.
|
| |
| bool | contains_point (const vec3 &point) const |
| | Tests to see if a point falls within this bounding box or not.
|
| |
| bool | contains_point (const vec3 &point, const vec3 &tolerance) const |
| | Tests to see if a point falls within this bounding box or not including a specific tolerance around the box.
|
| |
| bool | contains_point (const vec3 &point, float tolerance) const |
| | Tests to see if a point falls within this bounding box or not including a specific tolerance around the box.
|
| |
| vec3 | closest_point (const vec3 &source_point) const |
| | Computes the closest point on the surface of the AABB to the input point.
|
| |
| void | validate () |
| | Ensures that the values placed in the min/max values never make the bounding box itself inverted.
|
| |
| void | reset () |
| | Resets the bounding box values.
|
| |
| bbox & | mul (const transform &t) |
| | Transforms an axis aligned bounding box by the specified matrix.
|
| |
| bbox & | mul_no_scale (const transform &t) |
| |
| bbox & | add_point (const vec3 &point) |
| | Grows the bounding box based on the point passed.
|
| |
| vec3 | get_dimensions () const |
| | Returns a vector containing the dimensions of the bounding box.
|
| |
| vec3 | get_center () const |
| | Returns a vector containing the exact center point of the box.
|
| |
| vec3 | get_extents () const |
| | Returns a vector containing the extents of the bounding box (the half-dimensions)
|
| |
| void | inflate (float amount) |
| | Grows the bounding box by the specified number of world space units on all three axes.
|
| |
| void | inflate (const vec3 &amount) |
| | Grows the bounding box by the specified numbers of world space units on each of the three axes independently.
|
| |
| bool | is_populated () const |
| | Checks if the bounding box is populated.
|
| |
| bool | is_degenerate () const |
| | Checks if the bounding box is degenerate (empty)
|
| |
| std::array< vec3, 8 > | get_corners () const |
| |
| bbox | operator* (float scale) const |
| | Scales the bounding box values by the scalar passed.
|
| |
| bbox & | operator+= (const vec3 &shift) |
| | Moves the bounding box by the vector passed.
|
| |
| bbox & | operator-= (const vec3 &shift) |
| | Moves the bounding box by the vector passed.
|
| |
| bbox & | operator*= (const transform &t) |
| | Transforms the bounding box by the matrix passed.
|
| |
| bbox & | operator*= (float scale) |
| | Scales the bounding box values by the scalar passed.
|
| |
| bool | operator== (const bbox &bounds) const |
| | Checks for equality between this bounding box and another.
|
| |
| bool | operator!= (const bbox &bounds) const |
| | Checks for inequality between this bounding box and another.
|
| |
Storage for box vector values and wraps up common functionality.
Definition at line 20 of file bbox.h.
| std::array< vec3, 8 > math::bbox::get_corners |
( |
| ) |
const |
Returns the 8 corners of the box in the following order: (xmin,ymin,zmin), (xmax,ymin,zmin), (xmin,ymax,zmin), (xmax,ymax,zmin), (xmin,ymin,zmax), (xmax,ymin,zmax), (xmin,ymax,zmax), (xmax,ymax,zmax)
Definition at line 976 of file bbox.cpp.