HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Prune.h File Reference

Defined various multi-threaded utility functions for trees. More...

#include <openvdb/math/Math.h>
#include <openvdb/Types.h>
#include <openvdb/tree/NodeManager.h>
#include <algorithm>
#include <type_traits>
+ Include dependency graph for Prune.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  openvdb::OPENVDB_VERSION_NAME::tools::InactivePruneOp< TreeT, TerminationLevel >
 
class  openvdb::OPENVDB_VERSION_NAME::tools::TolerancePruneOp< TreeT, TerminationLevel >
 
class  openvdb::OPENVDB_VERSION_NAME::tools::LevelSetPruneOp< TreeT, TerminationLevel >
 

Namespaces

 openvdb
 
 openvdb::OPENVDB_VERSION_NAME
 
 openvdb::OPENVDB_VERSION_NAME::tools
 

Functions

template<typename TreeT >
void openvdb::OPENVDB_VERSION_NAME::tools::prune (TreeT &tree, typename TreeT::ValueType tolerance=zeroVal< typename TreeT::ValueType >(), bool threaded=true, size_t grainSize=1)
 Reduce the memory footprint of a tree by replacing with tiles any nodes whose values are all the same (optionally to within a tolerance) and have the same active state. More...
 
template<typename TreeT >
void openvdb::OPENVDB_VERSION_NAME::tools::pruneTiles (TreeT &tree, typename TreeT::ValueType tolerance=zeroVal< typename TreeT::ValueType >(), bool threaded=true, size_t grainSize=1)
 Reduce the memory footprint of a tree by replacing with tiles any non-leaf nodes whose values are all the same (optionally to within a tolerance) and have the same active state. More...
 
template<typename TreeT >
void openvdb::OPENVDB_VERSION_NAME::tools::pruneInactive (TreeT &tree, bool threaded=true, size_t grainSize=1)
 Reduce the memory footprint of a tree by replacing with background tiles any nodes whose values are all inactive. More...
 
template<typename TreeT >
void openvdb::OPENVDB_VERSION_NAME::tools::pruneInactiveWithValue (TreeT &tree, const typename TreeT::ValueType &value, bool threaded=true, size_t grainSize=1)
 Reduce the memory footprint of a tree by replacing any nodes whose values are all inactive with tiles of the given value. More...
 
template<typename TreeT >
void openvdb::OPENVDB_VERSION_NAME::tools::pruneLevelSet (TreeT &tree, bool threaded=true, size_t grainSize=1)
 Reduce the memory footprint of a tree by replacing nodes whose values are all inactive with inactive tiles having a value equal to the first value encountered in the (inactive) child. More...
 
template<typename TreeT >
void openvdb::OPENVDB_VERSION_NAME::tools::pruneLevelSet (TreeT &tree, const typename TreeT::ValueType &outsideWidth, const typename TreeT::ValueType &insideWidth, bool threaded=true, size_t grainSize=1)
 Reduce the memory footprint of a tree by replacing nodes whose voxel values are all inactive with inactive tiles having the value -| insideWidth | if the voxel values are negative and | outsideWidth | otherwise. More...
 

Detailed Description

Defined various multi-threaded utility functions for trees.

Author
Ken Museth

Definition in file Prune.h.