|
OpenVDB
3.0.0
|
Multi-threaded space-partitioning scheme for points. More...
#include <openvdb/Types.h>#include <openvdb/math/Transform.h>#include <vector>#include <deque>#include <algorithm>#include <boost/scoped_array.hpp>#include <boost/integer.hpp>#include <boost/math/special_functions/fpclassify.hpp>#include <tbb/atomic.h>#include <tbb/blocked_range.h>#include <tbb/parallel_for.h>#include <tbb/parallel_reduce.h>#include <tbb/parallel_sort.h>#include <tbb/task_group.h>#include <tbb/task_scheduler_init.h>Go to the source code of this file.
Classes | |
| class | PointPartitioner< PointIndexT, Log2Dim > |
Partitions points into Log2Dim aligned buckets. More... | |
| class | PointPartitioner< PointIndexT, Log2Dim >::IndexIterator |
| struct | ComputeBBoxOp< PointArray > |
| struct | IndexPair< IndexT > |
| struct | BucketAndVoxelOffsetOp< PointArray, IndexT, VoxelOffsetT > |
| struct | ComputeOffsetOp< PointArray, IndexT, VoxelOffsetT > |
| struct | BucketMapOp< IndexT > |
| struct | MergeOffsetsOp< IndexT > |
| struct | BucketOrderOp< IndexT > |
| struct | PageOrderOp< IndexT > |
| struct | PageBreakOp< IndexT > |
| struct | VoxelOrderOp< IndexT, Log2Dim > |
| struct | IndexOrderOp< IndexT > |
| struct | LeafNodeOriginOp< PointArray, IndexT > |
Namespaces | |
| openvdb | |
| openvdb::v3_0_0 | |
| openvdb::v3_0_0::tools | |
| openvdb::v3_0_0::tools::point_partitioner_internal | |
Typedefs | |
| typedef PointPartitioner< uint32_t, 3 > | UInt32PointPartitioner |
Enumerations | |
| enum | { LEAF_NODE_LIMIT = 1000000000 } |
Functions | |
| template<typename IntType > | |
| bool | isVolumeCalculationOverflowSafe (const CoordBBox &bbox) |
| template<typename PointArray > | |
| CoordBBox | computeLeafBounds (const PointArray &points, const math::Transform &m, unsigned log2dim) |
| template<Index Log2Dim, typename IndexT , typename VoxelOffsetT , typename PointArray > | |
| void | partition (const PointArray &points, const math::Transform &xform, const CoordBBox &bbox, boost::scoped_array< IndexT > &pointIndices, boost::scoped_array< IndexT > &pageOffsets, IndexT &pageCount, boost::scoped_array< VoxelOffsetT > &voxelOffsets, bool recordVoxelOffsets) |
| template<Index Log2Dim, typename IndexT , typename VoxelOffsetT , typename PointArray > | |
| void | sortPartition (const PointArray &points, const math::Transform &xform, const CoordBBox &bbox, boost::scoped_array< IndexT > &pointIndices, boost::scoped_array< IndexT > &pageOffsets, IndexT &pageCount, boost::scoped_array< VoxelOffsetT > &voxelOffsets, bool recordVoxelOffsets) |
Multi-threaded space-partitioning scheme for points.
1.8.9.1