10#ifndef OPENVDB_POINTS_POINT_COUNT_HAS_BEEN_INCLUDED
11#define OPENVDB_POINTS_POINT_COUNT_HAS_BEEN_INCLUDED
19#include <tbb/parallel_reduce.h>
32template <
typename Po
intDataTreeT,
typename FilterT = NullFilter>
35 const bool threaded =
true);
43template <
typename Po
intDataTreeT,
typename FilterT = NullFilter>
45 const PointDataTreeT&
tree,
47 const bool threaded =
true);
53template <
typename PointDataGridT,
54 typename GridT =
typename PointDataGridT::template ValueConverter<Int32>::Type,
56inline typename GridT::Ptr
66template <
typename PointDataGridT,
67 typename GridT =
typename PointDataGridT::template ValueConverter<Int32>::Type,
69inline typename GridT::Ptr
71 const openvdb::math::Transform& transform,
78#include "impl/PointCountImpl.h"
Index filters primarily designed to be used with a FilterIndexIter.
Attribute-owned data structure for points. Point attributes are stored in leaf nodes and ordered by v...
Methods for extracting masks from VDB Point grids.
A no-op filter that can be used when iterating over all indices.
Definition IndexIterator.h:52
Index64 pointOffsets(std::vector< Index64 > &pointOffsets, const PointDataTreeT &tree, const FilterT &filter=NullFilter(), const bool threaded=true)
Populate an array of cumulative point offsets per leaf node.
Index64 pointCount(const PointDataTreeT &tree, const FilterT &filter=NullFilter(), const bool threaded=true)
Count the total number of points in a PointDataTree.
GridT::Ptr pointCountGrid(const PointDataGridT &grid, const FilterT &filter=NullFilter())
Generate a new grid with voxel values to store the number of points per voxel.
Definition PointDataGrid.h:48
uint64_t Index64
Definition Types.h:33
Definition Exceptions.h:13
#define OPENVDB_VERSION_NAME
The version namespace name for this library version.
Definition version.h.in:121
#define OPENVDB_USE_VERSION_NAMESPACE
Definition version.h.in:291