HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
openvdb::OPENVDB_VERSION_NAME::tools::Morphology< TreeType > Class Template Reference

#include <Morphology.h>

Classes

struct  CopyMasks
 
struct  ErodeVoxelsOp
 
struct  LeafCache
 
struct  MaskManager
 
struct  Neighbor
 
struct  UpdateMasks
 

Public Types

typedef tree::LeafManager
< TreeType > 
ManagerType
 

Public Member Functions

 Morphology (TreeType &tree)
 
 Morphology (ManagerType *mgr)
 
virtual ~Morphology ()
 
void dilateVoxels6 ()
 Face-adjacent dilation pattern. More...
 
void dilateVoxels18 ()
 Face- and edge-adjacent dilation pattern. More...
 
void dilateVoxels26 ()
 Face-, edge- and vertex-adjacent dilation pattern. More...
 
void dilateVoxels (int iterations=1, NearestNeighbors nn=NN_FACE)
 
void erodeVoxels6 ()
 Face-adjacent erosion pattern. More...
 
void erodeVoxels18 ()
 Face- and edge-adjacent erosion pattern. More...
 
void erodeVoxels26 ()
 Face-, edge- and vertex-adjacent erosion pattern. More...
 
void erodeVoxels (int iterations=1, NearestNeighbors nn=NN_FACE)
 

Protected Types

typedef TreeType::LeafNodeType LeafType
 
typedef LeafType::NodeMaskType MaskType
 
typedef tree::ValueAccessor
< TreeType > 
AccessorType
 
typedef DimToWord
< LEAF_LOG2DIM >::Type 
Word
 

Protected Member Functions

void doErosion (NearestNeighbors nn)
 
void copyMasks (std::vector< MaskType > &a, const ManagerType &b)
 

Protected Attributes

const bool mOwnsManager
 
ManagerTypemManager
 
AccessorType mAcc
 
int mSteps
 

Static Protected Attributes

static const int LEAF_DIM = LeafType::DIM
 
static const int END = LEAF_DIM - 1
 
static const int LEAF_LOG2DIM = LeafType::LOG2DIM
 

Detailed Description

template<typename TreeType>
class openvdb::OPENVDB_VERSION_NAME::tools::Morphology< TreeType >

Definition at line 244 of file Morphology.h.

Member Typedef Documentation

template<typename TreeType>
typedef tree::ValueAccessor<TreeType> openvdb::OPENVDB_VERSION_NAME::tools::Morphology< TreeType >::AccessorType
protected

Definition at line 281 of file Morphology.h.

template<typename TreeType>
typedef TreeType::LeafNodeType openvdb::OPENVDB_VERSION_NAME::tools::Morphology< TreeType >::LeafType
protected

Definition at line 279 of file Morphology.h.

template<typename TreeType>
typedef tree::LeafManager<TreeType> openvdb::OPENVDB_VERSION_NAME::tools::Morphology< TreeType >::ManagerType

Definition at line 247 of file Morphology.h.

template<typename TreeType>
typedef LeafType::NodeMaskType openvdb::OPENVDB_VERSION_NAME::tools::Morphology< TreeType >::MaskType
protected

Definition at line 280 of file Morphology.h.

template<typename TreeType>
typedef DimToWord<LEAF_LOG2DIM>::Type openvdb::OPENVDB_VERSION_NAME::tools::Morphology< TreeType >::Word
protected

Definition at line 291 of file Morphology.h.

Constructor & Destructor Documentation

template<typename TreeType>
openvdb::OPENVDB_VERSION_NAME::tools::Morphology< TreeType >::Morphology ( TreeType &  tree)
inline

Definition at line 249 of file Morphology.h.

template<typename TreeType>
openvdb::OPENVDB_VERSION_NAME::tools::Morphology< TreeType >::Morphology ( ManagerType mgr)
inline

Definition at line 251 of file Morphology.h.

template<typename TreeType>
virtual openvdb::OPENVDB_VERSION_NAME::tools::Morphology< TreeType >::~Morphology ( )
inlinevirtual

Definition at line 253 of file Morphology.h.

Member Function Documentation

template<typename TreeType>
void openvdb::OPENVDB_VERSION_NAME::tools::Morphology< TreeType >::copyMasks ( std::vector< MaskType > &  a,
const ManagerType b 
)
inlineprotected

Definition at line 452 of file Morphology.h.

template<typename TreeType >
void openvdb::OPENVDB_VERSION_NAME::tools::Morphology< TreeType >::dilateVoxels ( int  iterations = 1,
NearestNeighbors  nn = NN_FACE 
)
inline

Definition at line 458 of file Morphology.h.

template<typename TreeType >
void openvdb::OPENVDB_VERSION_NAME::tools::Morphology< TreeType >::dilateVoxels18 ( )
inline

Face- and edge-adjacent dilation pattern.

Todo:
Currently operates only on leaf voxels; need to extend to tiles.

Definition at line 521 of file Morphology.h.

template<typename TreeType >
void openvdb::OPENVDB_VERSION_NAME::tools::Morphology< TreeType >::dilateVoxels26 ( )
inline

Face-, edge- and vertex-adjacent dilation pattern.

Definition at line 571 of file Morphology.h.

template<typename TreeType >
void openvdb::OPENVDB_VERSION_NAME::tools::Morphology< TreeType >::dilateVoxels6 ( )
inline

Face-adjacent dilation pattern.

Todo:
Currently operates only on leaf voxels; need to extend to tiles.

Definition at line 478 of file Morphology.h.

template<typename TreeType >
void openvdb::OPENVDB_VERSION_NAME::tools::Morphology< TreeType >::doErosion ( NearestNeighbors  nn)
inlineprotected
Todo:
Currently operates only on leaf voxels; need to extend to tiles.

Definition at line 823 of file Morphology.h.

template<typename TreeType>
void openvdb::OPENVDB_VERSION_NAME::tools::Morphology< TreeType >::erodeVoxels ( int  iterations = 1,
NearestNeighbors  nn = NN_FACE 
)
inline

Definition at line 269 of file Morphology.h.

template<typename TreeType>
void openvdb::OPENVDB_VERSION_NAME::tools::Morphology< TreeType >::erodeVoxels18 ( )
inline

Face- and edge-adjacent erosion pattern.

Definition at line 266 of file Morphology.h.

template<typename TreeType>
void openvdb::OPENVDB_VERSION_NAME::tools::Morphology< TreeType >::erodeVoxels26 ( )
inline

Face-, edge- and vertex-adjacent erosion pattern.

Definition at line 268 of file Morphology.h.

template<typename TreeType>
void openvdb::OPENVDB_VERSION_NAME::tools::Morphology< TreeType >::erodeVoxels6 ( )
inline

Face-adjacent erosion pattern.

Definition at line 264 of file Morphology.h.

Member Data Documentation

template<typename TreeType>
const int openvdb::OPENVDB_VERSION_NAME::tools::Morphology< TreeType >::END = LEAF_DIM - 1
staticprotected

Definition at line 289 of file Morphology.h.

template<typename TreeType>
const int openvdb::OPENVDB_VERSION_NAME::tools::Morphology< TreeType >::LEAF_DIM = LeafType::DIM
staticprotected

Definition at line 288 of file Morphology.h.

template<typename TreeType>
const int openvdb::OPENVDB_VERSION_NAME::tools::Morphology< TreeType >::LEAF_LOG2DIM = LeafType::LOG2DIM
staticprotected

Definition at line 290 of file Morphology.h.

template<typename TreeType>
AccessorType openvdb::OPENVDB_VERSION_NAME::tools::Morphology< TreeType >::mAcc
protected

Definition at line 285 of file Morphology.h.

template<typename TreeType>
ManagerType* openvdb::OPENVDB_VERSION_NAME::tools::Morphology< TreeType >::mManager
protected

Definition at line 284 of file Morphology.h.

template<typename TreeType>
const bool openvdb::OPENVDB_VERSION_NAME::tools::Morphology< TreeType >::mOwnsManager
protected

Definition at line 283 of file Morphology.h.

template<typename TreeType>
int openvdb::OPENVDB_VERSION_NAME::tools::Morphology< TreeType >::mSteps
protected

Definition at line 286 of file Morphology.h.


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