NVIDIA Iray: Math API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
bbox.h File Reference

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

  mi
  Common namespace for APIs of NVIDIA Advanced Rendering Center GmbH.
 
  mi::math
  Namespace for the Math API.
 

Constant Groups

  mi
  Common namespace for APIs of NVIDIA Advanced Rendering Center GmbH.
 
  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...
 

Detailed Description

An axis-aligned N-dimensional bounding box class template of fixed dimension with supporting functions.

See Bounding Box Class.