OpenVDB  9.0.1
Namespaces | Functions
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>

Go to the source code of this file.

Namespaces

 openvdb
 
 openvdb::v9_0
 
 openvdb::v9_0::points
 

Functions

void 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 appendGroup (PointDataTreeT &tree, const Name &group)
 Appends a new empty group to the VDB tree. More...
 
template<typename PointDataTreeT >
void appendGroups (PointDataTreeT &tree, const std::vector< Name > &groups)
 Appends new empty groups to the VDB tree. More...
 
template<typename PointDataTreeT >
void dropGroup (PointDataTreeT &tree, const Name &group, const bool compact=true)
 Drops an existing group from the VDB tree. More...
 
template<typename PointDataTreeT >
void 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 dropGroups (PointDataTreeT &tree)
 Drops all existing groups from the VDB tree, the tree is compacted after dropping. More...
 
template<typename PointDataTreeT >
void compactGroups (PointDataTreeT &tree)
 Compacts existing groups of a VDB Tree to use less memory if possible. More...
 
template<typename PointDataTreeT , typename PointIndexTreeT >
void 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 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 setGroupByFilter (PointDataTreeT &tree, const Name &group, const FilterT &filter)
 Sets group membership based on a provided filter. More...
 
template<typename PointDataTreeT >
void setGroupByRandomTarget (PointDataTreeT &tree, const Name &group, const Index64 targetPoints, const unsigned int seed=0)
 
template<typename PointDataTreeT >
void 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