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

#include <marching_cubes.h>

Public Member Functions

void set_origin_and_side_lengths (const FVec3 &o, const FVec3 &l)
void set_origin_and_lengths_inclusive (const FVec3 &o, const FVec3 &l)
void populate_layer_positions ()
 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_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}
int edge_refinement_steps {0}
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

◆ populate_layer_positions()

void occ::geometry::mc::MarchingCubes::populate_layer_positions ( )
inline

◆ set_origin_and_lengths_inclusive()

void occ::geometry::mc::MarchingCubes::set_origin_and_lengths_inclusive ( const FVec3 & o,
const FVec3 & l )
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

◆ edge_refinement_steps

int occ::geometry::mc::MarchingCubes::edge_refinement_steps {0}

◆ 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: