Class RandomSampleOctreeReduction

Inheritance Relationships

Base Type

Class Documentation

class RandomSampleOctreeReduction : public lvr2::OctreeReductionBase

Public Functions

RandomSampleOctreeReduction(PointBufferPtr pointBuffer, float voxelSize, size_t minPointsPerVoxel)

Constructs an random-sampling based octree that holds at least minPointsPerVoxel randomly selected points per voxel.

Parameters:
  • pointBuffer – The point buffer with the initial point cloud

  • voxelSize – Minimum size of a Leaf Node. Anything smaller will be condensed using the random sampling policy

  • minPointsPerVoxel – Minimum number of points per voxel The Octree recursion stops if the number of points in the voxel is smaller than this value.

RandomSampleOctreeReduction(Vector3f *points, size_t &n, float voxelSize, size_t minPointsPerVoxel)

Constructs an random-sampling octree from the given point array.

Parameters:
  • points – The points to be reduced. THIS DATA WILL BE MODIFIED IN PLACE.

  • n – The length of points. Will be updated to the number of points after reduction.

  • voxelSize – The minimum size of a Leaf Node. Anything smaller will be condensed using the sampling policy

  • minPointsPerVoxel – Minimum number of points per voxel The Octree recursion stops if the number of points in the voxel is smaller than this value.

virtual PointBufferPtr getReducedPoints() override

Get the Reduced Points object. ONLY WORKS IF PointBufferPtr CONSTRUCTOR WAS USED.

Returns:

PointBufferPtr The reduced points