Loading...
Searching...
No Matches
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 )