Provides accelerated range and nearest-neighbor searches for particles that are partitioned using the ParticleAtlas. More...
#include <openvdb/tools/ParticleAtlas.h>
| Public Types | |
| using | TreeType = typename PointIndexGridType::TreeType | 
| using | ConstAccessor = tree::ValueAccessor<const TreeType> | 
| using | ConstAccessorPtr = std::unique_ptr<ConstAccessor> | 
| using | Ptr | 
| using | ConstPtr | 
| using | PointIndexGridPtr | 
| using | IndexType | 
| Public Member Functions | |
| Iterator (const ParticleAtlas &atlas) | |
| Construct an iterator from the given atlas. | |
| template<typename ParticleArrayType> | |
| void | worldSpaceSearchAndUpdate (const Vec3d ¢er, double radius, const ParticleArrayType &particles) | 
| Clear the iterator and update it with the result of the given world-space radial query. | |
| template<typename ParticleArrayType> | |
| void | worldSpaceSearchAndUpdate (const BBoxd &bbox, const ParticleArrayType &particles) | 
| Clear the iterator and update it with the result of the given world-space radial query. | |
| size_t | levels () const | 
| Returns the total number of resolution levels. | |
| void | updateFromLevel (size_t level) | 
| Clear the iterator and update it with all particles that reside at the given resolution level. | |
| void | reset () | 
| Reset the iterator to point to the first item. | |
| const IndexType & | operator* () const | 
| Return a const reference to the item to which this iterator is pointing. | |
| void | increment () | 
| Advance iterator to next item. | |
| void | operator++ () | 
| Advance iterator to next item. | |
| bool | next () | 
| Advance iterator to next item. | |
| size_t | size () const | 
| Return the number of point indices in the iterator range. | |
| bool | operator== (const Iterator &p) const | 
| Return trueif both iterators point to the same element. | |
| bool | operator!= (const Iterator &p) const | 
| ParticleAtlas () | |
| void | construct (const ParticleArrayType &particles, double minVoxelSize, size_t maxLevels=50) | 
| Partitions particle indices. | |
| size_t | levels () const | 
| Returns the number of resolution levels. | |
| bool | empty () const | 
| true if the container size is 0, false otherwise. | |
| double | minRadius (size_t n) const | 
| Returns minimum particle radius for level n. | |
| double | maxRadius (size_t n) const | 
| Returns maximum particle radius for level n. | |
| PointIndexGridType & | pointIndexGrid (size_t n) | 
| Returns the PointIndexGridthat represents the given level n. | |
| const PointIndexGridType & | pointIndexGrid (size_t n) const | 
| Returns the PointIndexGridthat represents the given level n. | |
| bool | test () const | 
| Return trueif this iterator is not yet exhausted. | |
| operator bool () const | |
| Return trueif this iterator is not yet exhausted. | |
| Static Public Member Functions | |
| static Ptr | create (const ParticleArrayType &particles, double minVoxelSize, size_t maxLevels=50) | 
| Create a new ParticleAtlasfrom the given particles. | |
Provides accelerated range and nearest-neighbor searches for particles that are partitioned using the ParticleAtlas.
| using ConstAccessor = tree::ValueAccessor<const TreeType> | 
| using ConstAccessorPtr = std::unique_ptr<ConstAccessor> | 
| using ConstPtr | 
| using IndexType | 
| using PointIndexGridPtr | 
| using Ptr | 
| using TreeType = typename PointIndexGridType::TreeType | 
| 
 | inlineexplicit | 
Construct an iterator from the given atlas.
| 
 | inline | 
Partitions particle indices.
| particles | container conforming to the ParticleArray interface | 
| minVoxelSize | minimum voxel size limit | 
| maxLevels | maximum number of resolution levels | 
| 
 | inlinestatic | 
Create a new ParticleAtlas from the given particles. 
| particles | container conforming to the ParticleArray interface | 
| minVoxelSize | minimum voxel size limit | 
| maxLevels | maximum number of resolution levels | 
| 
 | inline | 
true if the container size is 0, false otherwise.
| 
 | inline | 
Advance iterator to next item.
| 
 | inline | 
Returns the number of resolution levels.
| 
 | inline | 
Returns the total number of resolution levels.
| 
 | inline | 
Returns maximum particle radius for level n.
| 
 | inline | 
Returns minimum particle radius for level n.
| 
 | inline | 
Advance iterator to next item.
true if this iterator is not yet exhausted. | 
 | inline | 
Return true if this iterator is not yet exhausted. 
| 
 | inline | 
| 
 | inline | 
Return a const reference to the item to which this iterator is pointing.
| 
 | inline | 
Advance iterator to next item.
| 
 | inline | 
Return true if both iterators point to the same element. 
| 
 | inline | 
| 
 | inline | 
Returns the PointIndexGrid that represents the given level n. 
| 
 | inline | 
Returns the PointIndexGrid that represents the given level n. 
| 
 | inline | 
Reset the iterator to point to the first item.
| 
 | inline | 
Return the number of point indices in the iterator range.
| 
 | inline | 
Return true if this iterator is not yet exhausted. 
| 
 | inline | 
Clear the iterator and update it with all particles that reside at the given resolution level.
| 
 | inline | 
Clear the iterator and update it with the result of the given world-space radial query.
| bbox | world-space bounding box | 
| particles | container conforming to the ParticleArray interface | 
| 
 | inline | 
Clear the iterator and update it with the result of the given world-space radial query.
| center | world-space center | 
| radius | world-space search radius | 
| particles | container conforming to the ParticleArray interface |