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

Point group manipulation in a VDB Point Grid. More...

#include <openvdb/openvdb.h>
#include "IndexIterator.h"
#include "IndexFilter.h"
#include "AttributeSet.h"
#include "PointDataGrid.h"
#include "PointAttribute.h"
#include "PointCount.h"
#include <tbb/parallel_reduce.h>
#include <algorithm>
#include <random>
#include <string>
#include <vector>
+ Include dependency graph for PointGroup.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 openvdb
 
 openvdb::OPENVDB_VERSION_NAME
 
 openvdb::OPENVDB_VERSION_NAME::points
 

Functions

void openvdb::OPENVDB_VERSION_NAME::points::deleteMissingPointGroups (std::vector< std::string > &groups, const AttributeSet::Descriptor &descriptor)
 Delete any group that is not present in the Descriptor. More...
 
template<typename PointDataTreeT >
void openvdb::OPENVDB_VERSION_NAME::points::appendGroup (PointDataTreeT &tree, const Name &group)
 Appends a new empty group to the VDB tree. More...
 
template<typename PointDataTreeT >
void openvdb::OPENVDB_VERSION_NAME::points::appendGroups (PointDataTreeT &tree, const std::vector< Name > &groups)
 Appends new empty groups to the VDB tree. More...
 
template<typename PointDataTreeT >
void openvdb::OPENVDB_VERSION_NAME::points::dropGroup (PointDataTreeT &tree, const Name &group, const bool compact=true)
 Drops an existing group from the VDB tree. More...
 
template<typename PointDataTreeT >
void openvdb::OPENVDB_VERSION_NAME::points::dropGroups (PointDataTreeT &tree, const std::vector< Name > &groups)
 Drops existing groups from the VDB tree, the tree is compacted after dropping. More...
 
template<typename PointDataTreeT >
void openvdb::OPENVDB_VERSION_NAME::points::dropGroups (PointDataTreeT &tree)
 Drops all existing groups from the VDB tree, the tree is compacted after dropping. More...
 
template<typename PointDataTreeT >
void openvdb::OPENVDB_VERSION_NAME::points::compactGroups (PointDataTreeT &tree)
 Compacts existing groups of a VDB Tree to use less memory if possible. More...
 
template<typename PointDataTreeT , typename PointIndexTreeT >
void openvdb::OPENVDB_VERSION_NAME::points::setGroup (PointDataTreeT &tree, const PointIndexTreeT &indexTree, const std::vector< short > &membership, const Name &group, const bool remove=false)
 Sets group membership from a PointIndexTree-ordered vector. More...
 
template<typename PointDataTreeT >
void openvdb::OPENVDB_VERSION_NAME::points::setGroup (PointDataTreeT &tree, const Name &group, const bool member=true)
 Sets membership for the specified group for all points (on/off). More...
 
template<typename PointDataTreeT , typename FilterT >
void openvdb::OPENVDB_VERSION_NAME::points::setGroupByFilter (PointDataTreeT &tree, const Name &group, const FilterT &filter)
 Sets group membership based on a provided filter. More...
 
template<typename PointDataTreeT >
void openvdb::OPENVDB_VERSION_NAME::points::setGroupByRandomTarget (PointDataTreeT &tree, const Name &group, const Index64 targetPoints, const unsigned int seed=0)
 
template<typename PointDataTreeT >
void openvdb::OPENVDB_VERSION_NAME::points::setGroupByRandomPercentage (PointDataTreeT &tree, const Name &group, const float percentage=10.0f, const unsigned int seed=0)
 

Detailed Description

Point group manipulation in a VDB Point Grid.

Author
Dan Bailey

Definition in file PointGroup.h.