OpenVDB 9.0.0
Classes | Macros | Functions
CSampleFromVoxels.h File Reference
#include "../CNanoVDB.h"
#include <math.h>

Go to the source code of this file.

Classes

struct  cnanovdb_stencil1F
 
struct  cnanovdb_stencil1F3
 

Macros

#define CREATE_STENCIL(VALUETYPE, SUFFIX)
 
#define CREATE_LERPSIMPLE(VALUETYPE, SUFFIX)
 
#define CREATE_SAMPLE(VALUETYPE, SUFFIX)
 

Functions

void cnanovdb_coord_round (cnanovdb_coord *__restrict coord, const cnanovdb_Vec3F *__restrict xyz)
 
void cnanovdb_coord_fract (cnanovdb_coord *__restrict coord, cnanovdb_Vec3F *__restrict fraction, const cnanovdb_Vec3F *__restrict xyz)
 
void cnanovdb_stencil1F_clear (cnanovdb_stencil1F *__restrict stencil)
 
void cnanovdb_stencil1F_fill (cnanovdb_stencil1F *__restrict stencil, cnanovdb_readaccessor *__restrict acc, cnanovdb_coord *__restrict coord)
 
void cnanovdb_stencil1F_update (cnanovdb_stencil1F *__restrict stencil, cnanovdb_readaccessor *__restrict acc, cnanovdb_coord *__restrict coord)
 
void cnanovdb_stencil1F3_clear (cnanovdb_stencil1F3 *__restrict stencil)
 
void cnanovdb_stencil1F3_fill (cnanovdb_stencil1F3 *__restrict stencil, cnanovdb_readaccessor *__restrict acc, cnanovdb_coord *__restrict coord)
 
void cnanovdb_stencil1F3_update (cnanovdb_stencil1F3 *__restrict stencil, cnanovdb_readaccessor *__restrict acc, cnanovdb_coord *__restrict coord)
 
float cnanovdb_lerpF (float a, float b, float w)
 
double cnanovdb_lerpD (double a, double b, float w)
 
cnanovdb_Vec3F cnanovdb_lerpF3 (cnanovdb_Vec3F a, cnanovdb_Vec3F b, float w)
 
float cnanovdb_sampleF_nearest (cnanovdb_readaccessor *__restrict acc, const cnanovdb_Vec3F *__restrict xyz)
 
float cnanovdb_sampleF_trilinear (cnanovdb_readaccessor *__restrict acc, const cnanovdb_Vec3F *__restrict xyz)
 
float cnanovdb_sampleF_trilinear_stencil (cnanovdb_stencil1F *__restrict stencil, cnanovdb_readaccessor *__restrict acc, const cnanovdb_Vec3F *__restrict xyz)
 
cnanovdb_Vec3F cnanovdb_sampleF3_nearest (cnanovdb_readaccessor *__restrict acc, const cnanovdb_Vec3F *__restrict xyz)
 
cnanovdb_Vec3F cnanovdb_sampleF3_trilinear (cnanovdb_readaccessor *__restrict acc, const cnanovdb_Vec3F *__restrict xyz)
 
cnanovdb_Vec3F cnanovdb_sampleF3_trilinear_stencil (cnanovdb_stencil1F3 *__restrict stencil, cnanovdb_readaccessor *__restrict acc, const cnanovdb_Vec3F *__restrict xyz)
 
void cnanovdb_sampleF_gradient (cnanovdb_Vec3F *__restrict ret, cnanovdb_readaccessor *__restrict acc, const cnanovdb_Vec3F *__restrict xyz)
 
void cnanovdb_sampleF_gradient0 (cnanovdb_Vec3F *__restrict ret, cnanovdb_readaccessor *__restrict acc, const cnanovdb_Vec3F *__restrict xyz)
 
void cnanovdb_sampleF_gradient0_stencil (cnanovdb_Vec3F *__restrict ret, cnanovdb_stencil1F *__restrict stencil, cnanovdb_readaccessor *__restrict acc, const cnanovdb_Vec3F *__restrict xyz)
 

Macro Definition Documentation

◆ CREATE_LERPSIMPLE

#define CREATE_LERPSIMPLE (   VALUETYPE,
  SUFFIX 
)
Value:
VALUETYPE \
cnanovdb_lerp##SUFFIX(VALUETYPE a, VALUETYPE b, float w) \
{ \
return a + w * (b - a); \
} \

◆ CREATE_SAMPLE

#define CREATE_SAMPLE (   VALUETYPE,
  SUFFIX 
)

◆ CREATE_STENCIL

#define CREATE_STENCIL (   VALUETYPE,
  SUFFIX 
)

Function Documentation

◆ cnanovdb_coord_fract()

void cnanovdb_coord_fract ( cnanovdb_coord *__restrict  coord,
cnanovdb_Vec3F *__restrict  fraction,
const cnanovdb_Vec3F *__restrict  xyz 
)

◆ cnanovdb_coord_round()

void cnanovdb_coord_round ( cnanovdb_coord *__restrict  coord,
const cnanovdb_Vec3F *__restrict  xyz 
)

◆ cnanovdb_lerpD()

double cnanovdb_lerpD ( double  a,
double  b,
float  w 
)

◆ cnanovdb_lerpF()

float cnanovdb_lerpF ( float  a,
float  b,
float  w 
)

◆ cnanovdb_lerpF3()

cnanovdb_Vec3F cnanovdb_lerpF3 ( cnanovdb_Vec3F  a,
cnanovdb_Vec3F  b,
float  w 
)

◆ cnanovdb_sampleF3_nearest()

cnanovdb_Vec3F cnanovdb_sampleF3_nearest ( cnanovdb_readaccessor *__restrict  acc,
const cnanovdb_Vec3F *__restrict  xyz 
)

◆ cnanovdb_sampleF3_trilinear()

cnanovdb_Vec3F cnanovdb_sampleF3_trilinear ( cnanovdb_readaccessor *__restrict  acc,
const cnanovdb_Vec3F *__restrict  xyz 
)

◆ cnanovdb_sampleF3_trilinear_stencil()

cnanovdb_Vec3F cnanovdb_sampleF3_trilinear_stencil ( cnanovdb_stencil1F3 *__restrict  stencil,
cnanovdb_readaccessor *__restrict  acc,
const cnanovdb_Vec3F *__restrict  xyz 
)

◆ cnanovdb_sampleF_gradient()

void cnanovdb_sampleF_gradient ( cnanovdb_Vec3F *__restrict  ret,
cnanovdb_readaccessor *__restrict  acc,
const cnanovdb_Vec3F *__restrict  xyz 
)

◆ cnanovdb_sampleF_gradient0()

void cnanovdb_sampleF_gradient0 ( cnanovdb_Vec3F *__restrict  ret,
cnanovdb_readaccessor *__restrict  acc,
const cnanovdb_Vec3F *__restrict  xyz 
)

◆ cnanovdb_sampleF_gradient0_stencil()

void cnanovdb_sampleF_gradient0_stencil ( cnanovdb_Vec3F *__restrict  ret,
cnanovdb_stencil1F *__restrict  stencil,
cnanovdb_readaccessor *__restrict  acc,
const cnanovdb_Vec3F *__restrict  xyz 
)

◆ cnanovdb_sampleF_nearest()

float cnanovdb_sampleF_nearest ( cnanovdb_readaccessor *__restrict  acc,
const cnanovdb_Vec3F *__restrict  xyz 
)

◆ cnanovdb_sampleF_trilinear()

float cnanovdb_sampleF_trilinear ( cnanovdb_readaccessor *__restrict  acc,
const cnanovdb_Vec3F *__restrict  xyz 
)

◆ cnanovdb_sampleF_trilinear_stencil()

float cnanovdb_sampleF_trilinear_stencil ( cnanovdb_stencil1F *__restrict  stencil,
cnanovdb_readaccessor *__restrict  acc,
const cnanovdb_Vec3F *__restrict  xyz 
)

◆ cnanovdb_stencil1F3_clear()

void cnanovdb_stencil1F3_clear ( cnanovdb_stencil1F3 *__restrict  stencil)

◆ cnanovdb_stencil1F3_fill()

void cnanovdb_stencil1F3_fill ( cnanovdb_stencil1F3 *__restrict  stencil,
cnanovdb_readaccessor *__restrict  acc,
cnanovdb_coord *__restrict  coord 
)

◆ cnanovdb_stencil1F3_update()

void cnanovdb_stencil1F3_update ( cnanovdb_stencil1F3 *__restrict  stencil,
cnanovdb_readaccessor *__restrict  acc,
cnanovdb_coord *__restrict  coord 
)

◆ cnanovdb_stencil1F_clear()

void cnanovdb_stencil1F_clear ( cnanovdb_stencil1F *__restrict  stencil)

◆ cnanovdb_stencil1F_fill()

void cnanovdb_stencil1F_fill ( cnanovdb_stencil1F *__restrict  stencil,
cnanovdb_readaccessor *__restrict  acc,
cnanovdb_coord *__restrict  coord 
)

◆ cnanovdb_stencil1F_update()

void cnanovdb_stencil1F_update ( cnanovdb_stencil1F *__restrict  stencil,
cnanovdb_readaccessor *__restrict  acc,
cnanovdb_coord *__restrict  coord 
)