14#ifndef OPENVDB_POINTS_POINT_SCATTER_HAS_BEEN_INCLUDED 
   15#define OPENVDB_POINTS_POINT_SCATTER_HAS_BEEN_INCLUDED 
   33#include <tbb/parallel_sort.h> 
   34#include <tbb/parallel_for.h> 
   74    typename RandGenT = std::mt19937,
 
   75    typename PositionArrayT = TypedAttributeArray<Vec3f, NullCodec>,
 
   76    typename PointDataGridT = 
Grid<
 
   77        typename points::TreeConverter<typename GridT::TreeType>::Type>,
 
   78    typename InterrupterT = util::NullInterrupter>
 
   79inline typename PointDataGridT::Ptr
 
   82                    const unsigned int seed = 0,
 
   83                    const float spread = 1.0f,
 
   84                    InterrupterT* interrupter = 
nullptr);
 
  103    typename RandGenT = std::mt19937,
 
  104    typename PositionArrayT = TypedAttributeArray<Vec3f, NullCodec>,
 
  105    typename PointDataGridT = 
Grid<
 
  106        typename points::TreeConverter<typename GridT::TreeType>::Type>,
 
  107    typename InterrupterT = util::NullInterrupter>
 
  108inline typename PointDataGridT::Ptr
 
  110                         const float pointsPerVoxel,
 
  111                         const unsigned int seed = 0,
 
  112                         const float spread = 1.0f,
 
  113                         InterrupterT* interrupter = 
nullptr);
 
  135    typename RandGenT = std::mt19937,
 
  136    typename PositionArrayT = TypedAttributeArray<Vec3f, NullCodec>,
 
  137    typename PointDataGridT = 
Grid<
 
  138        typename points::TreeConverter<typename GridT::TreeType>::Type>,
 
  139    typename InterrupterT = util::NullInterrupter>
 
  140inline typename PointDataGridT::Ptr
 
  142                       const float pointsPerVoxel,
 
  143                       const unsigned int seed = 0,
 
  144                       const float spread = 1.0f,
 
  145                       InterrupterT* interrupter = 
nullptr);
 
Attribute Array storage templated on type and compression codec.
A LeafManager manages a linear array of pointers to a given tree's leaf nodes, as well as optional au...
Methods for counting points in VDB Point grids.
Attribute-owned data structure for points. Point attributes are stored in leaf nodes and ordered by v...
Defined various multi-threaded utility functions for trees.
PointDataGridT::Ptr denseUniformPointScatter(const GridT &grid, const float pointsPerVoxel, const unsigned int seed=0, const float spread=1.0f, InterrupterT *interrupter=nullptr)
Uniformly scatter a fixed number of points per active voxel. If the pointsPerVoxel value provided is ...
Definition PointScatterImpl.h:264
PointDataGridT::Ptr uniformPointScatter(const GridT &grid, const Index64 count, const unsigned int seed=0, const float spread=1.0f, InterrupterT *interrupter=nullptr)
The free functions depend on the following class:
Definition PointScatterImpl.h:92
PointDataGridT::Ptr nonUniformPointScatter(const GridT &grid, const float pointsPerVoxel, const unsigned int seed=0, const float spread=1.0f, InterrupterT *interrupter=nullptr)
Non uniformly scatter points per active voxel. The pointsPerVoxel value is used to weight each grids ...
Definition PointScatterImpl.h:346
openvdb::GridBase Grid
Definition Utils.h:34
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:218