libpointmatcher
1.0.2
|
A transformation checker can stop the iteration depending on some conditions. More...
#include <PointMatcher.h>
Public Member Functions | |
TransformationChecker () | |
Construct without parameter. | |
TransformationChecker (const std::string &className, const ParametersDoc paramsDoc, const Parameters ¶ms) | |
Construct with parameters. | |
virtual | ~TransformationChecker () |
Destructor. | |
virtual void | init (const TransformationParameters ¶meters, bool &iterate)=0 |
Init, set iterate to false if iteration should stop. | |
virtual void | check (const TransformationParameters ¶meters, bool &iterate)=0 |
Set iterate to false if iteration should stop. | |
const Vector & | getLimits () const |
Return the value of limits involved in conditions to stop ICP loop. | |
const Vector & | getConditionVariables () const |
Return the values of variables involved in conditions to stop ICP loop. | |
const StringVector & | getLimitNames () const |
Return the names of limits involved in conditions to stop ICP loop. | |
const StringVector & | getConditionVariableNames () const |
Return the names of variables involved in conditions to stop ICP loop. | |
Protected Types | |
typedef std::vector< std::string > | StringVector |
a vector of strings | |
Static Protected Member Functions | |
static Vector | matrixToAngles (const TransformationParameters ¶meters) |
Extract the Euler angles from a rigid-transformation matrix. | |
Protected Attributes | |
Vector | limits |
values of limits involved in conditions to stop ICP loop | |
Vector | conditionVariables |
values of variables involved in conditions to stop ICP loop | |
StringVector | limitNames |
names of limits involved in conditions to stop ICP loop | |
StringVector | conditionVariableNames |
names of variables involved in conditions to stop ICP loop |
A transformation checker can stop the iteration depending on some conditions.
For example, a condition can be the number of times the loop was executed, or it can be related to the matching error. Because the modules can be chained, we defined that the relation between modules must agree through an OR-condition, while all AND-conditions are defined within a single module.