OpenVDB 12.0.0
 
Loading...
Searching...
No Matches
BoxSampler Struct Reference

#include <openvdb/tools/Interpolation.h>

Inheritance diagram for BoxSampler:
Sampler< 1, false >

Static Public Member Functions

static const char * name ()
 
static int radius ()
 
static bool mipmap ()
 
static bool consistent ()
 
static bool staggered ()
 
static size_t order ()
 
template<class TreeT>
static bool sample (const TreeT &inTree, const Vec3R &inCoord, typename TreeT::ValueType &result)
 Trilinearly reconstruct inTree at inCoord and store the result in result.
 
template<class TreeT>
static TreeT::ValueType sample (const TreeT &inTree, const Vec3R &inCoord)
 Trilinearly reconstruct inTree at inCoord.
 
template<class ValueT, class TreeT, size_t N>
static void getValues (ValueT(&data)[N][N][N], const TreeT &inTree, Coord ijk)
 Import all eight values from inTree to support tri-linear interpolation.
 
template<class ValueT, class TreeT, size_t N>
static bool probeValues (ValueT(&data)[N][N][N], const TreeT &inTree, Coord ijk)
 Import all eight values from inTree to support tri-linear interpolation.
 
template<class ValueT, size_t N>
static void extrema (ValueT(&data)[N][N][N], ValueT &vMin, ValueT &vMax)
 Find the minimum and maximum values of the eight cell values in @ data.
 
template<class ValueT, size_t N>
static ValueT trilinearInterpolation (ValueT(&data)[N][N][N], const Vec3R &uvw)
 

Member Function Documentation

◆ consistent()

static bool consistent ( )
inlinestatic

◆ extrema()

template<class ValueT, size_t N>
void extrema ( ValueT(&) data[N][N][N],
ValueT & vMin,
ValueT & vMax )
inlinestatic

Find the minimum and maximum values of the eight cell values in @ data.

◆ getValues()

template<class ValueT, class TreeT, size_t N>
void getValues ( ValueT(&) data[N][N][N],
const TreeT & inTree,
Coord ijk )
inlinestatic

Import all eight values from inTree to support tri-linear interpolation.

◆ mipmap()

static bool mipmap ( )
inlinestatic

◆ name()

static const char * name ( )
inlinestatic

◆ order()

static size_t order ( )
inlinestatic

◆ probeValues()

template<class ValueT, class TreeT, size_t N>
bool probeValues ( ValueT(&) data[N][N][N],
const TreeT & inTree,
Coord ijk )
inlinestatic

Import all eight values from inTree to support tri-linear interpolation.

Returns
true if any of the eight values are active

◆ radius()

static int radius ( )
inlinestatic

◆ sample() [1/2]

template<class TreeT>
TreeT::ValueType sample ( const TreeT & inTree,
const Vec3R & inCoord )
inlinestatic

Trilinearly reconstruct inTree at inCoord.

Returns
the reconstructed value

◆ sample() [2/2]

template<class TreeT>
bool sample ( const TreeT & inTree,
const Vec3R & inCoord,
typename TreeT::ValueType & result )
inlinestatic

Trilinearly reconstruct inTree at inCoord and store the result in result.

Returns
true if any one of the sampled values is active.

◆ staggered()

static bool staggered ( )
inlinestatic

◆ trilinearInterpolation()

template<class ValueT, size_t N>
ValueT trilinearInterpolation ( ValueT(&) data[N][N][N],
const Vec3R & uvw )
inlinestatic
Returns
the tri-linear interpolation with the unit cell coordinates uvw