Loading...
Searching...
No Matches
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

namespace | openvdb
namespace | openvdb::v10_0
namespace | openvdb::v10_0::points

## Functions

void | deleteMissingPointGroups (std::vector< std::string > &groups, const AttributeSet::Descriptor &descriptor)
| Delete any group that is not present in the Descriptor.
template<typename PointDataTreeT>
void | appendGroup (PointDataTreeT &tree, const Name &group)
| Appends a new empty group to the VDB tree.
template<typename PointDataTreeT>
void | appendGroups (PointDataTreeT &tree, const std::vector< Name > &groups)
| Appends new empty groups to the VDB tree.
template<typename PointDataTreeT>
void | dropGroup (PointDataTreeT &tree, const Name &group, const bool compact=true)
| Drops an existing group from the VDB tree.
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.
template<typename PointDataTreeT>
void | dropGroups (PointDataTreeT &tree)
| Drops all existing groups from the VDB tree, the tree is compacted after dropping.
template<typename PointDataTreeT>
void | compactGroups (PointDataTreeT &tree)
| Compacts existing groups of a VDB Tree to use less memory if possible.
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.
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).
template<typename PointDataTreeT, typename FilterT>
void | setGroupByFilter (PointDataTreeT &tree, const Name &group, const FilterT &filter)
| Sets group membership based on a provided filter.
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