Convenience wrapper around Math::KabschAlgorithm that operates directly on Math::VectorArray inputs.
More...
#include <VectorArrayAlignmentCalculator.hpp>
template<typename VA, typename V = typename VA::ElementType, typename T = typename V::ValueType>
class CDPL::Math::VectorArrayAlignmentCalculator< VA, V, T >
Convenience wrapper around Math::KabschAlgorithm that operates directly on Math::VectorArray inputs.
- Template Parameters
-
| VA | The Math::VectorArray specialization type. |
| V | The vector element type of VA. |
| T | The scalar value type of V. |
◆ VectorArrayType
template<typename VA , typename V = typename VA::ElementType, typename T = typename V::ValueType>
◆ VectorType
template<typename VA , typename V = typename VA::ElementType, typename T = typename V::ValueType>
The vector element type of VectorArrayType.
◆ ValueType
template<typename VA , typename V = typename VA::ElementType, typename T = typename V::ValueType>
◆ MatrixType
template<typename VA , typename V = typename VA::ElementType, typename T = typename V::ValueType>
The matrix type used for the computed transformation.
◆ calculate() [1/2]
template<typename VA , typename V = typename VA::ElementType, typename T = typename V::ValueType>
template<typename VE >
Aligns points onto ref_points (with per-point weights) using the Kabsch algorithm.
- Template Parameters
-
| VE | The weight-vector expression type. |
- Parameters
-
| points | The vector array containing the points to align. |
| ref_points | The vector array containing the reference points. |
| weights | The per-point weights. |
| do_center | If true, the point sets are centered before alignment. |
| max_svd_iter | The maximum number of iterations for the internal SVD step (0 means unlimited). |
- Returns
true if the SVD step converged, and false otherwise.
◆ calculate() [2/2]
template<typename VA , typename V = typename VA::ElementType, typename T = typename V::ValueType>
Aligns points onto ref_points (with uniform weights) using the Kabsch algorithm.
- Parameters
-
| points | The vector array containing the points to align. |
| ref_points | The vector array containing the reference points. |
| do_center | If true, the point sets are centered before alignment. |
| max_svd_iter | The maximum number of iterations for the internal SVD step (0 means unlimited). |
- Returns
true if the SVD step converged, and false otherwise.
◆ getTransform()
template<typename VA , typename V = typename VA::ElementType, typename T = typename V::ValueType>
Returns the rigid-body transformation produced by the most recent successful calculate() call.
- Returns
- A
const reference to the homogeneous transformation matrix.
The documentation for this class was generated from the following file: