![]() |
OpenVDB 14.0.0
|
Common base for floating-point and integer bounding boxes; not constructible directly (only as a base of BBox).
More...
#include <nanovdb/math/Math.h>
Public Member Functions | |
| __hostdev__ constexpr bool | operator== (const BaseBBox &rhs) const noexcept |
| Equality on the two corner points. | |
| __hostdev__ constexpr bool | operator!= (const BaseBBox &rhs) const noexcept |
| Inequality on the two corner points. | |
| __hostdev__ constexpr const Vec3T & | operator[] (int i) const noexcept |
| Indexed corner access: i = 0 returns min, i = 1 returns max. | |
| __hostdev__ constexpr Vec3T & | operator[] (int i) noexcept |
Mutable variant of operator[]. | |
| __hostdev__ constexpr Vec3T & | min () noexcept |
| Mutable accessor for the min corner. | |
| __hostdev__ constexpr Vec3T & | max () noexcept |
| Mutable accessor for the max corner. | |
| __hostdev__ constexpr const Vec3T & | min () const noexcept |
| Const accessor for the min corner. | |
| __hostdev__ constexpr const Vec3T & | max () const noexcept |
| Const accessor for the max corner. | |
| __hostdev__ constexpr BaseBBox & | translate (const Vec3T &xyz) noexcept |
Translate (rigid-shift) both corners by xyz; return *this. | |
| __hostdev__ constexpr BaseBBox & | expand (const Vec3T &xyz) noexcept |
Expand this bounding box to enclose point xyz. | |
| __hostdev__ constexpr BaseBBox & | expand (const BaseBBox &bbox) noexcept |
| Expand this bounding box to enclose the given bounding box. | |
| __hostdev__ constexpr BaseBBox & | intersect (const BaseBBox &bbox) noexcept |
| Intersect this bounding box with the given bounding box. | |
| __hostdev__ constexpr bool | isInside (const Vec3T &xyz) const noexcept |
Return true iff xyz lies in the closed box (each component satisfies min[i] <= xyz[i] <= max[i]). | |
Public Attributes | |
| Vec3T | mCoord [2] |
Protected Member Functions | |
| __hostdev__ constexpr | BaseBBox () noexcept |
| Default-construct (leaves corners uninitialized — derived classes supply a meaningful default). | |
| __hostdev__ constexpr | BaseBBox (const Vec3T &min, const Vec3T &max) noexcept |
| Construct from min and max corners directly. | |
Common base for floating-point and integer bounding boxes; not constructible directly (only as a base of BBox).
Stores the closed-segment endpoints mCoord[0] (min corner) and mCoord[1] (max corner). Whether the box is "min-inclusive max-inclusive" or "min-inclusive max-exclusive" depends on the derived BBox specialization (integer vs floating point).
|
inlineconstexprprotectednoexcept |
Default-construct (leaves corners uninitialized — derived classes supply a meaningful default).
|
inlineconstexprprotectednoexcept |
Construct from min and max corners directly.
|
inlineconstexprnoexcept |
Expand this bounding box to enclose the given bounding box.
|
inlineconstexprnoexcept |
Expand this bounding box to enclose point xyz.
|
inlineconstexprnoexcept |
Intersect this bounding box with the given bounding box.
|
inlinenodiscardconstexprnoexcept |
Return true iff xyz lies in the closed box (each component satisfies min[i] <= xyz[i] <= max[i]).
|
inlineconstexprnoexcept |
Const accessor for the max corner.
|
inlineconstexprnoexcept |
Mutable accessor for the max corner.
|
inlineconstexprnoexcept |
Const accessor for the min corner.
|
inlineconstexprnoexcept |
Mutable accessor for the min corner.
|
inlinenodiscardconstexprnoexcept |
Inequality on the two corner points.
|
inlinenodiscardconstexprnoexcept |
Equality on the two corner points.
|
inlineconstexprnoexcept |
Indexed corner access: i = 0 returns min, i = 1 returns max.
|
inlineconstexprnoexcept |
Mutable variant of operator[].
|
inlineconstexprnoexcept |
Translate (rigid-shift) both corners by xyz; return *this.
| Vec3T mCoord[2] |