OpenVDB
3.0.0
|
Partitions points into Log2Dim
aligned buckets.
More...
#include <PointPartitioner.h>
Classes | |
class | IndexIterator |
Public Types | |
enum | { LOG2DIM = Log2Dim } |
typedef boost::shared_ptr< PointPartitioner > | Ptr |
typedef boost::shared_ptr< const PointPartitioner > | ConstPtr |
typedef PointIndexT | IndexType |
typedef boost::int_t< 1+(3 *Log2Dim)>::least | VoxelOffsetType |
typedef boost::scoped_array< VoxelOffsetType > | VoxelOffsetArray |
Public Member Functions | |
PointPartitioner () | |
template<typename PointArray > | |
void | construct (const PointArray &points, const math::Transform &xform, bool voxelOrder=false, bool recordVoxelOffsets=false) |
Partitions point indices into Log2Dim aligned buckets. More... | |
size_t | size () const |
Returns the number of buckets. More... | |
bool | empty () const |
true if the container size is 0, false otherwise. More... | |
void | clear () |
Removes all data and frees up memory. More... | |
void | swap (PointPartitioner &) |
Exchanges the content of the container by another. More... | |
IndexIterator | indices (size_t n) const |
Returns the point indices for bucket n. More... | |
CoordBBox | getBBox (size_t n) const |
Returns the coordinate-aligned bounding box for bucket n. More... | |
const Coord & | origin (size_t n) const |
Returns the origin coordinate for bucket n. More... | |
const VoxelOffsetArray & | voxelOffsets () const |
Returns a list of LeafNode voxel offsets for the points. More... | |
Static Public Member Functions | |
template<typename PointArray > | |
static Ptr | create (const PointArray &points, const math::Transform &xform, bool voxelOrder=false, bool recordVoxelOffsets=false) |
Partitions point indices into Log2Dim aligned buckets. More... | |
Partitions points into Log2Dim
aligned buckets.
Log2Dim
defines the bucket coordinate dimensions, i.e. Log2Dim = 3 corresponds to a bucket that spans a (2^3)^3 = 8^3 voxel region. typedef boost::shared_ptr<const PointPartitioner> ConstPtr |
typedef PointIndexT IndexType |
typedef boost::shared_ptr<PointPartitioner> Ptr |
typedef boost::scoped_array<VoxelOffsetType> VoxelOffsetArray |
typedef boost::int_t<1 + (3 * Log2Dim)>::least VoxelOffsetType |
|
inline |
|
inline |
Removes all data and frees up memory.
|
inline |
Partitions point indices into Log2Dim
aligned buckets.
points | list of world space points. |
xform | world to index space transform. |
voxelOrder | sort point indices by local voxel offsets. |
recordVoxelOffsets | construct local voxel offsets |
|
inlinestatic |
Partitions point indices into Log2Dim
aligned buckets.
points | list of world space points. |
xform | world to index space transform. |
voxelOrder | sort point indices by local voxel offsets. |
recordVoxelOffsets | construct local voxel offsets |
|
inline |
true if the container size is 0, false otherwise.
|
inline |
Returns the coordinate-aligned bounding box for bucket n.
|
inline |
Returns the point indices for bucket n.
|
inline |
Returns the origin coordinate for bucket n.
|
inline |
Returns the number of buckets.
|
inline |
Exchanges the content of the container by another.
|
inline |
Returns a list of LeafNode
voxel offsets for the points.