This tool produces a grid where every voxel that contains a point is active. It employs thread-local storage for best performance. More...
#include <openvdb/openvdb.h>#include <openvdb/Grid.h>#include <openvdb/Types.h>#include <openvdb/util/NullInterrupter.h>#include <openvdb/thread/Threading.h>#include <tbb/enumerable_thread_specific.h>#include <tbb/parallel_for.h>#include <tbb/parallel_reduce.h>#include <tbb/blocked_range.h>#include <vector>Go to the source code of this file.
| Classes | |
| class | PointsToMask< GridT, InterrupterT > | 
| Makes every voxel of a grid active if it contains a point.  More... | |
| struct | PointsToMask< GridT, InterrupterT >::ReducePool | 
| Namespaces | |
| namespace | openvdb | 
| namespace | openvdb::v12_0 | 
| namespace | openvdb::v12_0::tools | 
| Functions | |
| template<typename PointListT, typename GridT> | |
| void | maskPoints (const PointListT &points, GridT &grid) | 
| Makes every voxel of the gridactive if it contains a point. | |
| template<typename PointListT> | |
| MaskGrid::Ptr | createPointMask (const PointListT &points, const math::Transform &xform) | 
| Return a MaskGrid where each binary voxel value is on if the voxel contains one (or more) points (i.e. the 3D position of a point is closer to this voxel than any other voxels). | |
This tool produces a grid where every voxel that contains a point is active. It employs thread-local storage for best performance.
The PointListT template argument below refers to any class with the following interface (see unittest/TestPointsToMask.cc and SOP_OpenVDB_From_Particles.cc for practical examples): 
The InterruptT template argument below refers to any class with the following interface: