An axis-aligned N-dimensional bounding box class template of fixed dimension with supporting functions. More...
Go to the source code of this file.
Classes | |
struct | mi::math::Bbox_struct<T, DIM> |
Storage class for an axis-aligned N-dimensional bounding box class template of fixed dimension. More... | |
class | mi::math::Bbox<T, DIM> |
Axis-aligned N-dimensional bounding box class template of fixed dimension. More... | |
Namespaces | |
namespace | mi |
Common namespace for APIs of NVIDIA Advanced Rendering Center GmbH. | |
namespace | mi::math |
Namespace for the Math API. | |
Functions | |
template<typename T , Size DIM> | |
Bbox<T, DIM> | mi::math::operator+ (const Bbox<T, DIM> &bbox, T value) |
Returns a bounding box that is the bbox increased by a constant value at each face, i.e., value is added to bbox.max and subtracted from bbox.min . More... | |
template<typename T , Size DIM> | |
Bbox<T, DIM> | mi::math::operator- (const Bbox<T, DIM> &bbox, T value) |
Returns a bounding box that is the bbox shrunk by a constant value at each face, i.e., value is subtracted from bbox.max and added to bbox.min . More... | |
template<typename T , Size DIM> | |
Bbox<T, DIM> | mi::math::operator* (const Bbox<T, DIM> &bbox, T factor) |
Returns a bounding box that is a version of bbox scaled by factor , i.e., bbox.max and bbox.min are multiplied by factor . More... | |
template<typename T , Size DIM> | |
Bbox<T, DIM> | mi::math::operator/ (const Bbox<T, DIM> &bbox, T divisor) |
Returns a bounding box that is a version of bbox divided by divisor , i.e., bbox.max and bbox.min are divided by divisor . More... | |
template<typename T , Size DIM> | |
Bbox<T, DIM> & | mi::math::operator+= (Bbox<T, DIM> &bbox, T value) |
Increases bbox by a constant value at each face, i.e., value is added to bbox.max and subtracted from bbox.min . More... | |
template<typename T , Size DIM> | |
Bbox<T, DIM> & | mi::math::operator-= (Bbox<T, DIM> &bbox, T value) |
Shrinks bbox by a constant value at each face, i.e., value is subtracted from bbox.max and added to bbox.min . More... | |
template<typename T , Size DIM> | |
Bbox<T, DIM> & | mi::math::operator*= (Bbox<T, DIM> &bbox, T factor) |
Scales bbox by factor , i.e., bbox.max and bbox.min are multiplied by factor . More... | |
template<typename T , Size DIM> | |
Bbox<T, DIM> & | mi::math::operator/= (Bbox<T, DIM> &bbox, T divisor) |
Divide bbox by divisor , i.e., bbox.max and bbox.min are divided by divisor . More... | |
template<typename T , Size DIM> | |
bool | mi::math::operator== (const Bbox<T, DIM> &lhs, const Bbox<T, DIM> &rhs) |
Returns true if lhs is elementwise equal to rhs . More... | |
template<typename T , Size DIM> | |
bool | mi::math::operator!= (const Bbox<T, DIM> &lhs, const Bbox<T, DIM> &rhs) |
Returns true if lhs is elementwise not equal to rhs . More... | |
template<typename T , Size DIM> | |
bool | mi::math::operator< (const Bbox<T, DIM> &lhs, const Bbox<T, DIM> &rhs) |
Returns true if lhs is lexicographically less than rhs . More... | |
template<typename T , Size DIM> | |
bool | mi::math::operator<= (const Bbox<T, DIM> &lhs, const Bbox<T, DIM> &rhs) |
Returns true if lhs is lexicographically less than or equal to rhs . More... | |
template<typename T , Size DIM> | |
bool | mi::math::operator> (const Bbox<T, DIM> &lhs, const Bbox<T, DIM> &rhs) |
Returns true if lhs is lexicographically greater than rhs . More... | |
template<typename T , Size DIM> | |
bool | mi::math::operator>= (const Bbox<T, DIM> &lhs, const Bbox<T, DIM> &rhs) |
Returns true if lhs is lexicographically greater than or equal to rhs . More... | |
template<typename T , Size DIM> | |
Bbox<T, DIM> | mi::math::lerp (const Bbox<T, DIM> &bbox1, const Bbox<T, DIM> &bbox2, T t) |
Returns the linear interpolation between bbox1 and bbox2 , i.e., it returns (1-t) * bbox1 + t * bbox2 . More... | |
template<typename T , Size DIM> | |
Bbox<T, DIM> | mi::math::clip (const Bbox<T, DIM> &bbox1, const Bbox<T, DIM> &bbox2) |
Clip bbox1 at bbox2 and return the result. More... | |
template<typename TT , typename T> | |
Bbox<T, 3> | mi::math::transform_point (const Matrix<TT, 4, 4> &mat, const Bbox<T, 3> &bbox) |
Returns the 3D bounding box transformed by a matrix. More... | |
template<typename TT , typename T> | |
Bbox<T, 3> | mi::math::transform_vector (const Matrix<TT, 4, 4> &mat, const Bbox<T, 3> &bbox) |
Returns the 3D bounding box transformed by a matrix. More... | |
An axis-aligned N-dimensional bounding box class template of fixed dimension with supporting functions.
See Bounding Box Class.