OpenVDB  12.0.0
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
BasePointScatter< PointAccessorType, RandomGenerator, InterruptType > Class Template Reference

Forward declaration of base class. More...

#include <openvdb/tools/PointScatter.h>

Inherited by DenseUniformPointScatter< PointAccessorType, RandomGenerator, InterruptType >, NonUniformPointScatter< PointAccessorType, RandomGenerator, InterruptType >, and UniformPointScatter< PointAccessorType, RandomGenerator, InterruptType >.

Public Member Functions

Index64 getPointCount () const
 
Index64 getVoxelCount () const
 

Protected Member Functions

 BasePointScatter (PointAccessorType &points, RandomGenerator &randGen, double spread, InterruptType *interrupt=nullptr)
 This is a base class so the constructor is protected. More...
 
void start (const char *name)
 
void end ()
 
bool interrupt ()
 
double getRand01 ()
 Return a random floating point number between zero and one. More...
 
double getRand ()
 Return a random floating point number between 0.5 -+ mSpread/2. More...
 
template<typename GridT >
void addPoint (const GridT &grid, const Vec3R &dmin)
 
template<typename GridT >
void addPoint (const GridT &grid, const Vec3R &dmin, const Coord &size)
 

Protected Attributes

PointAccessorType & mPoints
 
InterruptType * mInterrupter
 
Index64 mPointCount
 
Index64 mVoxelCount
 
Index64 mInterruptCount
 
const double mSpread
 
math::Rand01< double, RandomGenerator > mRand01
 

Detailed Description

template<typename PointAccessorType, typename RandomGenerator, typename InterruptType>
class openvdb::v12_0::tools::BasePointScatter< PointAccessorType, RandomGenerator, InterruptType >

Forward declaration of base class.

Base class of all the point scattering classes defined above.

Constructor & Destructor Documentation

BasePointScatter ( PointAccessorType &  points,
RandomGenerator &  randGen,
double  spread,
InterruptType *  interrupt = nullptr 
)
inlineprotected

This is a base class so the constructor is protected.

Member Function Documentation

void addPoint ( const GridT &  grid,
const Vec3R dmin 
)
inlineprotected
void addPoint ( const GridT &  grid,
const Vec3R dmin,
const Coord &  size 
)
inlineprotected
void end ( )
inlineprotected
Index64 getPointCount ( ) const
inline
double getRand ( )
inlineprotected

Return a random floating point number between 0.5 -+ mSpread/2.

double getRand01 ( )
inlineprotected

Return a random floating point number between zero and one.

Index64 getVoxelCount ( ) const
inline
bool interrupt ( )
inlineprotected
void start ( const char *  name)
inlineprotected

Member Data Documentation

Index64 mInterruptCount
protected
InterruptType* mInterrupter
protected
Index64 mPointCount
protected
PointAccessorType& mPoints
protected
math::Rand01<double, RandomGenerator> mRand01
protected
const double mSpread
protected
Index64 mVoxelCount
protected