OpenVDB 13.0.0

Loading...
Searching...
No Matches
PointScatter.h File Reference

We offer three different algorithms (each in its own class) for scattering of points in active voxels: More...

`#include <openvdb/Types.h>`
`#include <openvdb/Grid.h>`
`#include <openvdb/math/Math.h>`
`#include <openvdb/util/NullInterrupter.h>`
`#include <tbb/parallel_sort.h>`
`#include <tbb/parallel_for.h>`
`#include <iostream>`
`#include <memory>`
`#include <string>`

Go to the source code of this file.

## Classes
class | UniformPointScatter< PointAccessorType, RandomGenerator, InterruptType >
| The two point scatters UniformPointScatter and NonUniformPointScatter depend on the following two classes: More...
class | DenseUniformPointScatter< PointAccessorType, RandomGenerator, InterruptType >
| Scatters a fixed (and integer) number of points in all active voxels and tiles. More...
class | NonUniformPointScatter< PointAccessorType, RandomGenerator, InterruptType >
| Non-uniform scatters of point in the active voxels. The local point count is implicitly defined as a product of of a global density (called pointsPerVolume) and the local voxel (or tile) value. More...
class | BasePointScatter< PointAccessorType, RandomGenerator, InterruptType >
| Forward declaration of base class. More...

## Namespaces
namespace | openvdb
namespace | openvdb::v13_0
namespace | openvdb::v13_0::tools

## Detailed Description

We offer three different algorithms (each in its own class) for scattering of points in active voxels:

Author
  Ken Museth

1) UniformPointScatter. Has two modes: Either randomly distributes a fixed number of points into the active voxels, or the user can specify a fixed probability of having a points per unit of volume.

2) DenseUniformPointScatter. Randomly distributes points into active voxels using a fixed number of points per voxel.

3) NonIniformPointScatter. Define the local probability of having a point in a voxel as the product of a global density and the value of the voxel itself.