occ
Loading...
Searching...
No Matches
occ::geometry::mc::impl Namespace Reference

Classes

struct  Edge
 
struct  EdgeCrossing
 
struct  EdgeHash
 
struct  has_basis_transform
 
struct  has_basis_transform< T, std::void_t< decltype(std::declval< T >().basis_transform())> >
 
struct  has_batch_evaluate
 
struct  has_batch_evaluate< T, std::void_t< decltype(std::declval< T >().batch(std::declval< Eigen::Ref< const FMat3N > >(), std::declval< Eigen::Ref< FVec > >()))> >
 
struct  has_point_evaluate
 
struct  has_point_evaluate< T, std::void_t< decltype(std::declval< const T & >()(std::declval< const FVec3 & >()))> >
 

Functions

template<typename E >
void march_cube (const std::array< float, 8 > &values, E &edge_func)
 
constexpr float get_offset (float a, float b)
 
template<typename T >
interpolate (T a, T b, float t)
 
template<typename S >
float eval_point (const S &source, const FVec3 &p)
 
template<typename S , typename E >
void refine_and_emit (const S &source, const std::vector< EdgeCrossing > &crossings, float isovalue, int steps, E &extract_fn)
 

Variables

const size_t CUBE_REMAP [8] = {2, 3, 1, 0, 6, 7, 5, 4}
 
constexpr float sqrt_3 = 1.73205080757
 

Function Documentation

◆ eval_point()

template<typename S >
float occ::geometry::mc::impl::eval_point ( const S &  source,
const FVec3 p 
)
inline

◆ get_offset()

constexpr float occ::geometry::mc::impl::get_offset ( float  a,
float  b 
)
inlineconstexpr

◆ interpolate()

template<typename T >
T occ::geometry::mc::impl::interpolate ( a,
b,
float  t 
)

◆ march_cube()

template<typename E >
void occ::geometry::mc::impl::march_cube ( const std::array< float, 8 > &  values,
E &  edge_func 
)

◆ refine_and_emit()

template<typename S , typename E >
void occ::geometry::mc::impl::refine_and_emit ( const S &  source,
const std::vector< EdgeCrossing > &  crossings,
float  isovalue,
int  steps,
E &  extract_fn 
)

Variable Documentation

◆ CUBE_REMAP

const size_t occ::geometry::mc::impl::CUBE_REMAP[8] = {2, 3, 1, 0, 6, 7, 5, 4}

◆ sqrt_3

constexpr float occ::geometry::mc::impl::sqrt_3 = 1.73205080757
constexpr