A class describing the AABB collision structure, which is a box in 3D space determined by two diagonal points. More...
#include <AABB.h>
Public Member Functions | |
| AABB () | |
| Creating an AABB with zero size (low bound +inf, upper bound -inf) More... | |
| AABB (const AABB &core, const Vec3s &delta) | |
| Creating an AABB centered as core and is of half-dimension delta. More... | |
| AABB (const AABB &other)=default | |
| AABB (const Vec3s &a, const Vec3s &b) | |
| Creating an AABB with two endpoints a and b. More... | |
| AABB (const Vec3s &a, const Vec3s &b, const Vec3s &c) | |
| Creating an AABB contains three points. More... | |
| AABB (const Vec3s &v) | |
| Creating an AABB at position v with zero size. More... | |
| bool | axisOverlap (const AABB &other, int axis_id) const |
| Check whether two AABB are overlapped along specific axis. More... | |
| bool | contain (const AABB &other) const |
| Check whether the AABB contains another AABB. More... | |
| AABB & | expand (const AABB &core, CoalScalar ratio) |
| expand the aabb by increase the thickness of the plate by a ratio More... | |
| AABB & | expand (const CoalScalar delta) |
| expand the half size of the AABB by a scalar delta, and keep the center unchanged. More... | |
| AABB & | expand (const Vec3s &delta) |
| expand the half size of the AABB by delta, and keep the center unchanged. More... | |
| bool | operator!= (const AABB &other) const |
| AABB & | operator= (const AABB &other)=default |
| bool | operator== (const AABB &other) const |
| Comparison operator. More... | |
| bool | overlap (const AABB &other, AABB &overlap_part) const |
| Check whether two AABB are overlap and return the overlap part. More... | |
| AABB & | update (const Vec3s &a, const Vec3s &b) |
Bounding volume API | |
Common API to BVs. | |
| bool | contain (const Vec3s &p) const |
| Check whether the AABB contains a point. More... | |
| bool | overlap (const AABB &other) const |
| Check whether two AABB are overlap. More... | |
| bool | overlap (const Plane &p) const |
| Check whether AABB overlaps a plane. More... | |
| bool | overlap (const Halfspace &hs) const |
| Check whether AABB overlaps a halfspace. More... | |
| bool | overlap (const AABB &other, const CollisionRequest &request, CoalScalar &sqrDistLowerBound) const |
| Check whether two AABB are overlap. More... | |
| CoalScalar | distance (const AABB &other) const |
| Distance between two AABBs. More... | |
| CoalScalar | distance (const AABB &other, Vec3s *P, Vec3s *Q) const |
| Distance between two AABBs; P and Q, should not be NULL, return the nearest points. More... | |
| AABB & | operator+= (const Vec3s &p) |
| Merge the AABB and a point. More... | |
| AABB & | operator+= (const AABB &other) |
| Merge the AABB and another AABB. More... | |
| AABB | operator+ (const AABB &other) const |
| Return the merged AABB of current AABB and the other one. More... | |
| CoalScalar | size () const |
| Size of the AABB (used in BV_Splitter to order two AABBs) More... | |
| Vec3s | center () const |
| Center of the AABB. More... | |
| CoalScalar | width () const |
| Width of the AABB. More... | |
| CoalScalar | height () const |
| Height of the AABB. More... | |
| CoalScalar | depth () const |
| Depth of the AABB. More... | |
| CoalScalar | volume () const |
| Volume of the AABB. More... | |
Public Attributes | |
| Vec3s | max_ |
| The max point in the AABB. More... | |
| Vec3s | min_ |
| The min point in the AABB. More... | |
A class describing the AABB collision structure, which is a box in 3D space determined by two diagonal points.
Definition at line 55 of file coal/BV/AABB.h.