OpenVDB  11.0.0
Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Attributes | List of all members
SampleFromVoxels< TreeOrAccT, 1, true > Class Template Reference

Template specialization with caching of stencil values. More...

#include <nanovdb/util/SampleFromVoxels.h>

Inherits TrilinearSampler< TreeOrAccT >.

Public Member Functions

 SampleFromVoxels (const TreeOrAccT &acc)
 Construction from a Tree or ReadAccessor. More...
 
template<typename RealT , template< typename... > class Vec3T>
ValueT operator() (Vec3T< RealT > xyz) const
 
ValueT operator() (const CoordT &ijk) const
 
template<typename RealT , template< typename... > class Vec3T>
Vec3T< ValueTgradient (Vec3T< RealT > xyz) const
 Return the gradient in index space. More...
 
template<typename RealT , template< typename... > class Vec3T>
bool zeroCrossing (Vec3T< RealT > xyz) const
 Return true if the tr-linear stencil has a zero crossing at the specified index position. More...
 
bool zeroCrossing () const
 Return true if the cached tri-linear stencil has a zero crossing. More...
 
template<typename RealT , template< typename... > class Vec3T>
TreeOrAccT::ValueType operator() (Vec3T< RealT > xyz) const
 
template<typename RealT , template< typename... > class Vec3T>
Vec3T< typename TreeOrAccT::ValueType > gradient (Vec3T< RealT > xyz) const
 
const TreeOrAccT & accessor () const
 
void stencil (CoordT &ijk, ValueT(&v)[2][2][2]) const
 Extract the stencil of 8 values. More...
 
template<typename RealT , template< typename... > class Vec3T>
TreeOrAccT::ValueType sample (const Vec3T< RealT > &uvw, const ValueT(&v)[2][2][2])
 

Static Public Member Functions

template<typename RealT , template< typename... > class Vec3T>
static ValueT sample (const Vec3T< RealT > &uvw, const ValueT(&v)[2][2][2])
 
template<typename RealT , template< typename... > class Vec3T>
static Vec3T< ValueTgradient (const Vec3T< RealT > &uvw, const ValueT(&v)[2][2][2])
 
static bool zeroCrossing (const ValueT(&v)[2][2][2])
 

Static Public Attributes

static const int ORDER = 1
 

Protected Attributes

const TreeOrAccT & mAcc
 

Detailed Description

template<typename TreeOrAccT>
class nanovdb::SampleFromVoxels< TreeOrAccT, 1, true >

Template specialization with caching of stencil values.

Constructor & Destructor Documentation

SampleFromVoxels ( const TreeOrAccT &  acc)
inline

Construction from a Tree or ReadAccessor.

Member Function Documentation

const TreeOrAccT& accessor ( ) const
inlineinherited
static Vec3T<ValueT> gradient ( const Vec3T< RealT > &  uvw,
const ValueT(&)  v[2][2][2] 
)
inlinestaticinherited
Vec3T<ValueT> gradient ( Vec3T< RealT >  xyz) const
inline

Return the gradient in index space.

Warning
Will only compile with floating point value types
Vec3T<typename TreeOrAccT::ValueType> gradient ( Vec3T< RealT >  xyz) const
ValueT operator() ( Vec3T< RealT >  xyz) const
inline
Note
xyz is in index space space
TreeOrAccT::ValueType operator() ( const CoordT ijk) const
TreeOrAccT::ValueType operator() ( Vec3T< RealT >  xyz) const
static ValueT sample ( const Vec3T< RealT > &  uvw,
const ValueT(&)  v[2][2][2] 
)
inlinestaticinherited
TreeOrAccT::ValueType sample ( const Vec3T< RealT > &  uvw,
const ValueT(&)  v[2][2][2] 
)
inherited
void stencil ( CoordT ijk,
ValueT(&)  v[2][2][2] 
) const
inlineinherited

Extract the stencil of 8 values.

bool zeroCrossing ( const ValueT(&)  v[2][2][2])
inlinestaticinherited
bool zeroCrossing ( Vec3T< RealT >  xyz) const
inline

Return true if the tr-linear stencil has a zero crossing at the specified index position.

Warning
Will only compile with floating point value types
bool zeroCrossing ( ) const
inline

Return true if the cached tri-linear stencil has a zero crossing.

Warning
Will only compile with floating point value types

Member Data Documentation

const TreeOrAccT& mAcc
protectedinherited
const int ORDER = 1
staticinherited