occ
Loading...
Searching...
No Matches
occ::geometry::mc::MarchingCubes Struct Reference

#include <marching_cubes.h>

Collaboration diagram for occ::geometry::mc::MarchingCubes:
[legend]

Public Member Functions

void set_origin_and_side_lengths (const FVec3 &o, const FVec3 &l)
 
 MarchingCubes (size_t s)
 
 MarchingCubes (size_t x, size_t y, size_t z)
 
template<typename S >
void extract (const S &source, std::vector< float > &vertices, std::vector< uint32_t > &indices)
 
template<typename S >
void extract_with_normals (const S &source, std::vector< float > &vertices, std::vector< uint32_t > &indices, std::vector< float > &normals)
 
template<typename S >
void extract_with_curvature (const S &source, std::vector< float > &vertices, std::vector< uint32_t > &indices, std::vector< float > &normals, std::vector< float > &curvatures)
 

Public Attributes

size_t size_x
 
size_t size_y
 
size_t size_z
 
FVec3 origin {0.0f, 0.0f, 0.0f}
 
FVec3 lengths {1.0f, 1.0f, 1.0f}
 
FVec3 scale {1.0f, 1.0f, 1.0f}
 
float isovalue = 0.0f
 
FMat3N layer_positions
 
bool flip_normals {false}
 
std::array< FMat, 4 > layers
 

Constructor & Destructor Documentation

◆ MarchingCubes() [1/2]

occ::geometry::mc::MarchingCubes::MarchingCubes ( size_t  s)
inline

◆ MarchingCubes() [2/2]

occ::geometry::mc::MarchingCubes::MarchingCubes ( size_t  x,
size_t  y,
size_t  z 
)
inline

Member Function Documentation

◆ extract()

template<typename S >
void occ::geometry::mc::MarchingCubes::extract ( const S &  source,
std::vector< float > &  vertices,
std::vector< uint32_t > &  indices 
)
inline

◆ extract_with_curvature()

template<typename S >
void occ::geometry::mc::MarchingCubes::extract_with_curvature ( const S &  source,
std::vector< float > &  vertices,
std::vector< uint32_t > &  indices,
std::vector< float > &  normals,
std::vector< float > &  curvatures 
)
inline

◆ extract_with_normals()

template<typename S >
void occ::geometry::mc::MarchingCubes::extract_with_normals ( const S &  source,
std::vector< float > &  vertices,
std::vector< uint32_t > &  indices,
std::vector< float > &  normals 
)
inline

◆ set_origin_and_side_lengths()

void occ::geometry::mc::MarchingCubes::set_origin_and_side_lengths ( const FVec3 o,
const FVec3 l 
)
inline

Member Data Documentation

◆ flip_normals

bool occ::geometry::mc::MarchingCubes::flip_normals {false}

◆ isovalue

float occ::geometry::mc::MarchingCubes::isovalue = 0.0f

◆ layer_positions

FMat3N occ::geometry::mc::MarchingCubes::layer_positions

◆ layers

std::array<FMat, 4> occ::geometry::mc::MarchingCubes::layers

◆ lengths

FVec3 occ::geometry::mc::MarchingCubes::lengths {1.0f, 1.0f, 1.0f}

◆ origin

FVec3 occ::geometry::mc::MarchingCubes::origin {0.0f, 0.0f, 0.0f}

◆ scale

FVec3 occ::geometry::mc::MarchingCubes::scale {1.0f, 1.0f, 1.0f}

◆ size_x

size_t occ::geometry::mc::MarchingCubes::size_x

◆ size_y

size_t occ::geometry::mc::MarchingCubes::size_y

◆ size_z

size_t occ::geometry::mc::MarchingCubes::size_z

The documentation for this struct was generated from the following file: