OpenVDB  2.3.0
Public Types | Public Member Functions | List of all members
MeshToVolume< FloatGridT, InterruptT > Class Template Reference

#include <MeshToVolume.h>

Public Types

typedef FloatGridT::TreeType FloatTreeT
 
typedef FloatTreeT::ValueType FloatValueT
 
typedef FloatTreeT::template
ValueConverter< Int32 >::Type 
IntTreeT
 
typedef Grid< IntTreeTIntGridT
 
typedef FloatTreeT::template
ValueConverter< bool >::Type 
BoolTreeT
 
typedef Grid< BoolTreeTBoolGridT
 

Public Member Functions

 MeshToVolume (openvdb::math::Transform::Ptr &, int conversionFlags=0, InterruptT *interrupter=NULL, int signSweeps=1)
 
void convertToLevelSet (const std::vector< Vec3s > &pointList, const std::vector< Vec4I > &polygonList, FloatValueT exBandWidth=FloatValueT(LEVEL_SET_HALF_WIDTH), FloatValueT inBandWidth=FloatValueT(LEVEL_SET_HALF_WIDTH))
 Mesh to Level Set / Signed Distance Field conversion. More...
 
void convertToUnsignedDistanceField (const std::vector< Vec3s > &pointList, const std::vector< Vec4I > &polygonList, FloatValueT exBandWidth)
 Mesh to Unsigned Distance Field conversion. More...
 
void clear ()
 
FloatGridT::Ptr distGridPtr () const
 Returns a narrow-band (signed) distance field / level set grid. More...
 
IntGridT::Ptr indexGridPtr () const
 

Member Typedef Documentation

typedef FloatTreeT::template ValueConverter<bool>::Type BoolTreeT
typedef FloatGridT::TreeType FloatTreeT
typedef FloatTreeT::ValueType FloatValueT
typedef FloatTreeT::template ValueConverter<Int32>::Type IntTreeT

Constructor & Destructor Documentation

MeshToVolume ( openvdb::math::Transform::Ptr &  transform,
int  conversionFlags = 0,
InterruptT *  interrupter = NULL,
int  signSweeps = 1 
)

Member Function Documentation

void clear ( )
void convertToLevelSet ( const std::vector< Vec3s > &  pointList,
const std::vector< Vec4I > &  polygonList,
FloatValueT  exBandWidth = FloatValueT(LEVEL_SET_HALF_WIDTH),
FloatValueT  inBandWidth = FloatValueT(LEVEL_SET_HALF_WIDTH) 
)
inline

Mesh to Level Set / Signed Distance Field conversion.

Note
Requires a closed surface but not necessarily a manifold surface. Supports surfaces with self intersections, degenerate faces and is independent of mesh surface normals.
Parameters
pointListList of points in grid index space, preferably unique and shared by different polygons.
polygonListList of triangles and/or quads.
exBandWidthThe exterior narrow-band width in voxel units.
inBandWidthThe interior narrow-band width in voxel units.
void convertToUnsignedDistanceField ( const std::vector< Vec3s > &  pointList,
const std::vector< Vec4I > &  polygonList,
FloatValueT  exBandWidth 
)
inline

Mesh to Unsigned Distance Field conversion.

Note
Does not requires a closed surface.
Parameters
pointListList of points in grid index space, preferably unique and shared by different polygons.
polygonListList of triangles and/or quads.
exBandWidthThe narrow-band width in voxel units.
FloatGridT::Ptr distGridPtr ( ) const
inline

Returns a narrow-band (signed) distance field / level set grid.

IntGridT::Ptr indexGridPtr ( ) const
inline

Returns a grid containing the closest-primitive index for each voxel in the narrow-band.


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