|
| | Aabb (f32x4 min=f32x4::zero, f32x4 max=f32x4::zero) noexcept |
| | Creates a new Axis Aligned Bounding Box in 3D space. (AABB)
|
| |
| f32x4 | getMin () const noexcept |
| | Returns minimum AABB corner position in 3D space.
|
| |
| f32x4 | getMax () const noexcept |
| | Returns maximum AABB corner position in 3D space.
|
| |
| void | setMin (f32x4 min) noexcept |
| | Sets minimum AABB corner position in 3D space.
|
| |
| void | setMax (f32x4 max) noexcept |
| | Sets maximum AABB corner position in 3D space.
|
| |
| void | set (f32x4 min, f32x4 max) noexcept |
| | Sets minimum and maximum AABB corner position in 3D space.
|
| |
| bool | trySet (f32x4 min, f32x4 max) noexcept |
| | Tries to set minimum and maximum AABB corner position in 3D space.
|
| |
| void | setSize (f32x4 size) noexcept |
| | Sets size of the bounding box.
|
| |
| void | setSize (f32x4 size, f32x4 position) noexcept |
| | Sets size and position of the bounding box in 3D space.
|
| |
|
f32x4 | getSize () const noexcept |
| | Returns size of the bounding box.
|
| |
|
f32x4 | getPosition () const noexcept |
| | Returns position of the bounding box in 3D space.
|
| |
| void | setExtent (f32x4 extent) noexcept |
| | Sets extent and position of the bounding box in 3D space.
|
| |
| void | setExtent (f32x4 extent, f32x4 position) noexcept |
| | Sets extent and position of the bounding box in 3D space.
|
| |
|
f32x4 | getExtent () const noexcept |
| | Returns extent of the bounding box. (half size)
|
| |
| void | getExtent (f32x4 &extent, f32x4 &position) const noexcept |
| | Returns extent and position of the bounding box in 3D space.
|
| |
| void | extend (f32x4 point) noexcept |
| | Extends bounding box min and max corner positions in 3D space.
|
| |
| void | extend (const Aabb &aabb) noexcept |
| | Extends bounding box min and max corner positions in 3D space.
|
| |
| void | shrink (f32x4 point) noexcept |
| | Shrinks bounding box min and max corner positions in 3D space.
|
| |
| void | shrink (const Aabb &aabb) noexcept |
| | Extends bounding box min and max corner positions in 3D space.
|
| |
| void | translate (f32x4 translation) noexcept |
| | Translates bounding box in 3D space.
|
| |
| void | scale (f32x4 scale) noexcept |
| | Scales bounding box in 3D space.
|
| |
|
float | calcArea () const noexcept |
| | Calculates area of the bounding box.
|
| |
|
float | calcVolume () const noexcept |
| | Calculates volume of the bounding box.
|
| |
|
Aabb | operator* (f32x4 v) const noexcept |
| |
|
Aabb | operator/ (f32x4 v) const noexcept |
| |
|
Aabb | operator+ (f32x4 v) const noexcept |
| |
|
Aabb | operator- (f32x4 v) const noexcept |
| |
|
Aabb & | operator*= (f32x4 v) noexcept |
| |
|
Aabb & | operator/= (f32x4 v) noexcept |
| |
|
Aabb & | operator+= (f32x4 v) noexcept |
| |
|
Aabb & | operator-= (f32x4 v) noexcept |
| |
|
bool | operator== (const Aabb &v) const noexcept |
| |
|
bool | operator!= (const Aabb &v) const noexcept |
| |
Axis Aligned Bounding Box structure. (AABB)
A simple and efficient way to represent the boundaries of a 3D or 2D object for collision detection or spatial queries in game development and computer graphics. The sides of the bounding box are aligned with the coordinate axes (e.g., X, Y, and Z axes in 3D space). This means that the edges of the box do not rotate with the object but remain parallel to the axes. Bounding box defines a rectangular (2D) or cuboid (3D) volume that surrounds an object, used to approximate the object's shape for efficient calculations.