OpenVDB  12.0.0
Classes | Public Types | Public Member Functions | Static Public Member Functions | List of all members
ParticleAtlas< PointIndexGridType > Struct Template Reference

#include <openvdb/tools/ParticleAtlas.h>

Classes

struct  Iterator
 Provides accelerated range and nearest-neighbor searches for particles that are partitioned using the ParticleAtlas. More...
 

Public Types

using Ptr = SharedPtr< ParticleAtlas >
 
using ConstPtr = SharedPtr< const ParticleAtlas >
 
using PointIndexGridPtr = typename PointIndexGridType::Ptr
 
using IndexType = typename PointIndexGridType::ValueType
 

Public Member Functions

 ParticleAtlas ()
 
template<typename ParticleArrayType >
void construct (const ParticleArrayType &particles, double minVoxelSize, size_t maxLevels=50)
 Partitions particle indices. More...
 
size_t levels () const
 Returns the number of resolution levels. More...
 
bool empty () const
 true if the container size is 0, false otherwise. More...
 
double minRadius (size_t n) const
 Returns minimum particle radius for level n. More...
 
double maxRadius (size_t n) const
 Returns maximum particle radius for level n. More...
 
PointIndexGridType & pointIndexGrid (size_t n)
 Returns the PointIndexGrid that represents the given level n. More...
 
const PointIndexGridType & pointIndexGrid (size_t n) const
 Returns the PointIndexGrid that represents the given level n. More...
 

Static Public Member Functions

template<typename ParticleArrayType >
static Ptr create (const ParticleArrayType &particles, double minVoxelSize, size_t maxLevels=50)
 Create a new ParticleAtlas from the given particles. More...
 

Member Typedef Documentation

using IndexType = typename PointIndexGridType::ValueType
using PointIndexGridPtr = typename PointIndexGridType::Ptr

Constructor & Destructor Documentation

ParticleAtlas ( )
inline

Member Function Documentation

void construct ( const ParticleArrayType &  particles,
double  minVoxelSize,
size_t  maxLevels = 50 
)
inline

Partitions particle indices.

Parameters
particlescontainer conforming to the ParticleArray interface
minVoxelSizeminimum voxel size limit
maxLevelsmaximum number of resolution levels
ParticleAtlas< PointIndexGridType >::Ptr create ( const ParticleArrayType &  particles,
double  minVoxelSize,
size_t  maxLevels = 50 
)
inlinestatic

Create a new ParticleAtlas from the given particles.

Parameters
particlescontainer conforming to the ParticleArray interface
minVoxelSizeminimum voxel size limit
maxLevelsmaximum number of resolution levels
bool empty ( ) const
inline

true if the container size is 0, false otherwise.

size_t levels ( ) const
inline

Returns the number of resolution levels.

double maxRadius ( size_t  n) const
inline

Returns maximum particle radius for level n.

double minRadius ( size_t  n) const
inline

Returns minimum particle radius for level n.

PointIndexGridType& pointIndexGrid ( size_t  n)
inline

Returns the PointIndexGrid that represents the given level n.

const PointIndexGridType& pointIndexGrid ( size_t  n) const
inline

Returns the PointIndexGrid that represents the given level n.