Program Listing for File ICPPointAlign.hpp
↰ Return to documentation for file (include/lvr2/registration/ICPPointAlign.hpp)
#ifndef ICPPOINTALIGN_HPP_
#define ICPPOINTALIGN_HPP_
#include "SLAMScanWrapper.hpp"
#include "lvr2/types/MatrixTypes.hpp"
#include "lvr2/algorithm/KDTree.hpp"
namespace lvr2
{
class ICPPointAlign
{
public:
ICPPointAlign(SLAMScanPtr model, SLAMScanPtr data);
Transformd match();
virtual ~ICPPointAlign() = default;
void setMaxMatchDistance(double distance);
void setMaxIterations(int iterations);
void setMaxLeafSize(int maxLeafSize);
void setEpsilon(double epsilon);
void setVerbose(bool verbose);
double getMaxMatchDistance() const;
int getMaxIterations() const;
int getMaxLeafSize() const;
double getEpsilon() const;
bool getVerbose() const;
protected:
double m_epsilon;
double m_maxDistanceMatch;
int m_maxIterations;
int m_maxLeafSize;
bool m_verbose;
SLAMScanPtr m_modelCloud;
SLAMScanPtr m_dataCloud;
KDTreePtr<Vector3f> m_searchTree;
};
} /* namespace lvr2 */
#endif /* ICPPOINTALIGN_HPP_ */