0.44.0
|
#include <iContouringCubes.h>
Public Member Functions | |
iContouringCubes () | |
void | setVoxelData (iVoxelData *voxelData) |
void | setVoxelDataNextLOD (iVoxelData *voxelData) |
void | setNextLODVoxelOffset (const iaVector3I &offset) |
iMeshPtr | compile (iaVector3I pos, iaVector3I volume, uint32 lod=0, uint32 neighbors=0) |
Static Public Member Functions | |
static float64 | calcLODScale (uint32 lod) |
static iaVector3f | calcLODOffset (uint32 lod) |
an algorythm inspired by dual contouring and marching cubes
igor::iContouringCubes::iContouringCubes | ( | ) |
initialize members
|
static |
calculates the lod offset based on lod
lod | given lod |
calculates scale based on LOD
lod | the lod to cal the scale for |
iMeshPtr igor::iContouringCubes::compile | ( | iaVector3I | pos, |
iaVector3I | volume, | ||
uint32 | lod = 0 , |
||
uint32 | neighbors = 0 |
||
) |
compile mesh out of voxel data
pos | location in voxel data to be compiled |
volume | the size of the are to be compiled |
void igor::iContouringCubes::setNextLODVoxelOffset | ( | const iaVector3I & | offset | ) |
sets offset to next (lower resolution) lod voxel data
offset | offset to next lod voxel data |
void igor::iContouringCubes::setVoxelData | ( | iVoxelData * | voxelData | ) |
sets voxel data to be used
voxelData | the voxel data |
void igor::iContouringCubes::setVoxelDataNextLOD | ( | iVoxelData * | voxelData | ) |
sets voxel data of next LOD level (lower resolution)
voxel data to next LOD is optional
voxelData | the voxel data of the next LOD |