HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
SampleFromVoxels.h File Reference

NearestNeighborSampler, TrilinearSampler, TriquadraticSampler and TricubicSampler. More...

#include <cmath>
+ Include dependency graph for SampleFromVoxels.h:

Go to the source code of this file.

Classes

class  nanovdb::SampleFromVoxels< TreeT, Order, UseCache >
 
class  nanovdb::SampleFromVoxels< TreeOrAccT, 0, true >
 Nearest neighbor, i.e. zero order, interpolator with caching. More...
 
class  nanovdb::SampleFromVoxels< TreeOrAccT, 0, false >
 Nearest neighbor, i.e. zero order, interpolator without caching. More...
 
class  nanovdb::TrilinearSampler< TreeOrAccT >
 Tri-linear sampler, i.e. first order, interpolator. More...
 
class  nanovdb::SampleFromVoxels< TreeOrAccT, 1, false >
 Template specialization that does not use caching of stencil points. More...
 
class  nanovdb::SampleFromVoxels< TreeOrAccT, 1, true >
 Template specialization with caching of stencil values. More...
 
class  nanovdb::TriquadraticSampler< TreeOrAccT >
 Tri-quadratic sampler, i.e. second order, interpolator. More...
 
class  nanovdb::SampleFromVoxels< TreeOrAccT, 2, false >
 Template specialization that does not use caching of stencil points. More...
 
class  nanovdb::SampleFromVoxels< TreeOrAccT, 2, true >
 Template specialization with caching of stencil values. More...
 
class  nanovdb::TricubicSampler< TreeOrAccT >
 Tri-cubic sampler, i.e. third order, interpolator. More...
 
class  nanovdb::SampleFromVoxels< TreeOrAccT, 3, true >
 
class  nanovdb::SampleFromVoxels< TreeOrAccT, 3, false >
 

Namespaces

 nanovdb
 

Macros

#define __hostdev__
 

Functions

template<int Order, typename TreeOrAccT , bool UseCache = true>
__hostdev__ SampleFromVoxels
< TreeOrAccT, Order, UseCache > 
nanovdb::createSampler (const TreeOrAccT &acc)
 Factory free-function for a sampler of specific polynomial orders. More...
 
template<typename CoordT , typename RealT , template< typename > class Vec3T>
__hostdev__ CoordT nanovdb::Floor (Vec3T< RealT > &xyz)
 Utility function that returns the Coord of the round-down of xyz and redefined as the fractional part, ie xyz-in = return-value + xyz-out. More...
 
template<typename CoordT , template< typename > class Vec3T>
__hostdev__ CoordT nanovdb::Floor (Vec3T< float > &xyz)
 Template specialization of Floor for Vec3<float> More...
 
template<typename CoordT , template< typename > class Vec3T>
__hostdev__ CoordT nanovdb::Floor (Vec3T< double > &xyz)
 Template specialization of Floor for Vec3<float> More...
 

Detailed Description

NearestNeighborSampler, TrilinearSampler, TriquadraticSampler and TricubicSampler.

Note
These interpolators employ internal caching for better performance when used repeatedly in the same voxel location, so try to reuse an instance of these classes more than once.
Warning
While all the interpolators defined below work with both scalars and vectors values (e.g. float and Vec3<float>) TrilinarSampler::zeroCrossing and Trilinear::gradient will only compile with floating point value types.
Author
Ken Museth

Definition in file SampleFromVoxels.h.

Macro Definition Documentation

#define __hostdev__

Definition at line 29 of file SampleFromVoxels.h.