HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
nanovdb::BBox< Vec3T, true > Struct Template Reference

Partial template specialization for floating point coordinate types. More...

#include <NanoVDB.h>

+ Inheritance diagram for nanovdb::BBox< Vec3T, true >:

Public Types

using Vec3Type = Vec3T
 
using ValueType = typename Vec3T::ValueType
 
using BaseT = BaseBBox< Vec3T >
 

Public Member Functions

__hostdev__ BBox ()
 Default construction sets BBox to an empty bbox. More...
 
__hostdev__ BBox (const Vec3T &min, const Vec3T &max)
 
__hostdev__ BBox (const Coord &min, const Coord &max)
 
__hostdev__ BBox (const BaseBBox< Coord > &bbox)
 
__hostdev__ bool empty () const
 
__hostdev__ operator bool () const
 
__hostdev__ Vec3T dim () const
 
__hostdev__ bool isInside (const Vec3T &p) const
 
- Public Member Functions inherited from nanovdb::BaseBBox< Vec3T >
__hostdev__ bool operator== (const BaseBBox &rhs) const
 
__hostdev__ bool operator!= (const BaseBBox &rhs) const
 
__hostdev__ const Vec3T & operator[] (int i) const
 
__hostdev__ Vec3T & operator[] (int i)
 
__hostdev__ Vec3T & min ()
 
__hostdev__ Vec3T & max ()
 
__hostdev__ const Vec3T & min () const
 
__hostdev__ const Vec3T & max () const
 
__hostdev__ BaseBBoxtranslate (const Vec3T &xyz)
 
__hostdev__ BaseBBoxexpand (const Vec3T &xyz)
 Expand this bounding box to enclose point xyz. More...
 
__hostdev__ BaseBBoxexpand (const BaseBBox &bbox)
 Expand this bounding box to enclose the given bounding box. More...
 
__hostdev__ BaseBBoxintersect (const BaseBBox &bbox)
 Intersect this bounding box with the given bounding box. More...
 
__hostdev__ bool isInside (const Vec3T &xyz)
 

Static Public Member Functions

static __hostdev__ BBox createCube (const Coord &min, typename Coord::ValueType dim)
 

Additional Inherited Members

- Public Attributes inherited from nanovdb::BaseBBox< Vec3T >
Vec3T mCoord [2]
 
- Protected Member Functions inherited from nanovdb::BaseBBox< Vec3T >
__hostdev__ BaseBBox ()
 
__hostdev__ BaseBBox (const Vec3T &min, const Vec3T &max)
 

Detailed Description

template<typename Vec3T>
struct nanovdb::BBox< Vec3T, true >

Partial template specialization for floating point coordinate types.

Note
Min is inclusive and max is exclusive. If min = max the dimension of the bounding box is zero and therefore it is also empty.

Definition at line 2283 of file NanoVDB.h.

Member Typedef Documentation

template<typename Vec3T >
using nanovdb::BBox< Vec3T, true >::BaseT = BaseBBox<Vec3T>

Definition at line 2288 of file NanoVDB.h.

template<typename Vec3T >
using nanovdb::BBox< Vec3T, true >::ValueType = typename Vec3T::ValueType

Definition at line 2286 of file NanoVDB.h.

template<typename Vec3T >
using nanovdb::BBox< Vec3T, true >::Vec3Type = Vec3T

Definition at line 2285 of file NanoVDB.h.

Constructor & Destructor Documentation

template<typename Vec3T >
__hostdev__ nanovdb::BBox< Vec3T, true >::BBox ( )
inline

Default construction sets BBox to an empty bbox.

Definition at line 2291 of file NanoVDB.h.

template<typename Vec3T >
__hostdev__ nanovdb::BBox< Vec3T, true >::BBox ( const Vec3T &  min,
const Vec3T &  max 
)
inline

Definition at line 2296 of file NanoVDB.h.

template<typename Vec3T >
__hostdev__ nanovdb::BBox< Vec3T, true >::BBox ( const Coord min,
const Coord max 
)
inline

Definition at line 2300 of file NanoVDB.h.

template<typename Vec3T >
__hostdev__ nanovdb::BBox< Vec3T, true >::BBox ( const BaseBBox< Coord > &  bbox)
inline

Definition at line 2310 of file NanoVDB.h.

Member Function Documentation

template<typename Vec3T >
static __hostdev__ BBox nanovdb::BBox< Vec3T, true >::createCube ( const Coord min,
typename Coord::ValueType  dim 
)
inlinestatic

Definition at line 2305 of file NanoVDB.h.

template<typename Vec3T >
__hostdev__ Vec3T nanovdb::BBox< Vec3T, true >::dim ( ) const
inline

Definition at line 2320 of file NanoVDB.h.

template<typename Vec3T >
__hostdev__ bool nanovdb::BBox< Vec3T, true >::empty ( void  ) const
inline

Definition at line 2314 of file NanoVDB.h.

template<typename Vec3T >
__hostdev__ bool nanovdb::BBox< Vec3T, true >::isInside ( const Vec3T &  p) const
inline

Definition at line 2321 of file NanoVDB.h.

template<typename Vec3T >
__hostdev__ nanovdb::BBox< Vec3T, true >::operator bool ( ) const
inline

Definition at line 2317 of file NanoVDB.h.


The documentation for this struct was generated from the following file: