OpenVDB  2.3.0
Classes | Public Types | Public Member Functions | List of all members
MeshVoxelizer< FloatTreeT, InterruptT > Class Template Reference

TBB body object to voxelize a mesh of triangles and/or quads into a collection of VDB grids, namely a squared distance grid, a closest primitive grid and an intersecting voxels grid (masks the mesh intersecting voxels) More...

#include <MeshToVolume.h>

Public Types

typedef FloatTreeT::ValueType FloatValueT
 
typedef FloatTreeT::LeafNodeType FloatLeafT
 
typedef tree::ValueAccessor
< FloatTreeT > 
FloatAccessorT
 
typedef FloatTreeT::template
ValueConverter< Int32 >::Type 
IntTreeT
 
typedef IntTreeT::LeafNodeType IntLeafT
 
typedef tree::ValueAccessor
< IntTreeT
IntAccessorT
 
typedef FloatTreeT::template
ValueConverter< bool >::Type 
BoolTreeT
 
typedef BoolTreeT::LeafNodeType BoolLeafT
 
typedef tree::ValueAccessor
< BoolTreeT
BoolAccessorT
 

Public Member Functions

 MeshVoxelizer (const std::vector< Vec3s > &pointList, const std::vector< Vec4I > &polygonList, InterruptT *interrupter=NULL)
 
 ~MeshVoxelizer ()
 
void run (bool threaded=true)
 
 MeshVoxelizer (MeshVoxelizer< FloatTreeT, InterruptT > &rhs, tbb::split)
 
void operator() (const tbb::blocked_range< size_t > &range)
 
void join (MeshVoxelizer< FloatTreeT, InterruptT > &rhs)
 
FloatTreeT & sqrDistTree ()
 
IntTreeTprimIndexTree ()
 
BoolTreeTintersectionTree ()
 

Detailed Description

template<typename FloatTreeT, typename InterruptT = util::NullInterrupter>
class openvdb::v2_3_0::tools::internal::MeshVoxelizer< FloatTreeT, InterruptT >

TBB body object to voxelize a mesh of triangles and/or quads into a collection of VDB grids, namely a squared distance grid, a closest primitive grid and an intersecting voxels grid (masks the mesh intersecting voxels)

MeshVoxelizer

Note
Only the leaf nodes that intersect the mesh are allocated, and only voxels in a narrow band (of two to three voxels in proximity to the mesh's surface) are activated. They are populated with distance values and primitive indices.

Member Typedef Documentation

typedef BoolTreeT::LeafNodeType BoolLeafT
typedef FloatTreeT::template ValueConverter<bool>::Type BoolTreeT
typedef tree::ValueAccessor<FloatTreeT> FloatAccessorT
typedef FloatTreeT::LeafNodeType FloatLeafT
typedef FloatTreeT::ValueType FloatValueT
typedef IntTreeT::LeafNodeType IntLeafT
typedef FloatTreeT::template ValueConverter<Int32>::Type IntTreeT

Constructor & Destructor Documentation

MeshVoxelizer ( const std::vector< Vec3s > &  pointList,
const std::vector< Vec4I > &  polygonList,
InterruptT *  interrupter = NULL 
)
~MeshVoxelizer ( )
inline
MeshVoxelizer ( MeshVoxelizer< FloatTreeT, InterruptT > &  rhs,
tbb::split   
)

Member Function Documentation

BoolTreeT& intersectionTree ( )
inline
void join ( MeshVoxelizer< FloatTreeT, InterruptT > &  rhs)
void operator() ( const tbb::blocked_range< size_t > &  range)
IntTreeT& primIndexTree ( )
inline
void run ( bool  threaded = true)
FloatTreeT& sqrDistTree ( )
inline

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