HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
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>
+ Include dependency graph for PointScatter.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  openvdb::OPENVDB_VERSION_NAME::tools::BasePointScatter< PointAccessorType, RandomGenerator, InterruptType >
 Forward declaration of base class. More...
 
class  openvdb::OPENVDB_VERSION_NAME::tools::UniformPointScatter< PointAccessorType, RandomGenerator, InterruptType >
 The two point scatters UniformPointScatter and NonUniformPointScatter depend on the following two classes: More...
 
class  openvdb::OPENVDB_VERSION_NAME::tools::DenseUniformPointScatter< PointAccessorType, RandomGenerator, InterruptType >
 Scatters a fixed (and integer) number of points in all active voxels and tiles. More...
 
class  openvdb::OPENVDB_VERSION_NAME::tools::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  openvdb::OPENVDB_VERSION_NAME::tools::BasePointScatter< PointAccessorType, RandomGenerator, InterruptType >
 Forward declaration of base class. More...
 

Namespaces

 openvdb
 
 openvdb::OPENVDB_VERSION_NAME
 
 openvdb::OPENVDB_VERSION_NAME::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.

Definition in file PointScatter.h.