1 #ifndef __OCTREE_REDUCTION__ 2 #define __OCTREE_REDUCTION__ 61 void createOctree(T* points,
const int& n,
bool* flagged,
const T& min,
const T& max,
const int& level);
64 size_t splitPoints(T* points,
const size_t& n,
const int axis,
const double& splitValue);
89 #include "lvr2/registration/OctreeReduction.tcc"
PointBufferPtr getReducedPoints()
OctreeReduction(PointBufferPtr &pointBuffer, const double &voxelSize, const size_t &minPointsPerVoxel)
std::shared_ptr< PointBuffer > PointBufferPtr
Eigen::Vector3f Vector3f
Eigen 3D vector, single precision.
Eigen::Matrix< T, 3, 1 > Vector3
Eigen 3D vector.
void swapAllChannelsOfType(lvr2::PointBufferPtr &points, const size_t &l, const size_t &r)
PointBufferPtr m_pointBuffer
size_t splitPoints(T *points, const size_t &n, const int axis, const double &splitValue)
size_t m_minPointsPerVoxel
void swapInChannel(lvr2::Channel< T > &ch, const size_t &l, const size_t &r)
void createOctree(T *points, const int &n, bool *flagged, const T &min, const T &max, const int &level)