|
| T_Point_cloud_rigid_registration_3 (void) |
| Initialize with no transformation;. More...
|
|
template<class PointContainer > |
| T_Point_cloud_rigid_registration_3 (const PointContainer &x, const PointContainer &y) |
| Initialize the transformation with from y to x (x is the reference) More...
|
|
template<class PointContainer > |
| T_Point_cloud_rigid_registration_3 (const PointContainer &x, const PointContainer &y, std::vector< double > weights) |
| Initialize the weighted transformation from y to x (x is the reference);. More...
|
|
template<class InputIterator1 , class InputIterator2 > |
| T_Point_cloud_rigid_registration_3 (InputIterator1 begin_1, InputIterator1 end_1, InputIterator2 begin_2, InputIterator2 end_2) |
| Initialize the transformation from the second set of points to the first set of points (the first set of points is the reference) More...
|
|
template<class InputIterator1 , class InputIterator2 > |
| T_Point_cloud_rigid_registration_3 (InputIterator1 begin_1, InputIterator1 end_1, InputIterator2 begin_2, InputIterator2 end_2, std::vector< double > weights) |
| Initialize the weighted transformation from the second set of points to the first set of points (the first set of points is the reference) More...
|
|
const Point_3 & | get_reference_centroid (void) const |
| Return the reference centroid if any. More...
|
|
template<class PointContainer , class OutputIterator > |
OutputIterator | transform (const PointContainer &points, OutputIterator out) const |
| Make the rigid registration of the input points w.r.t the internal transformation, and output the transformed points. More...
|
|
template<class PointContainer , class OutputIterator > |
OutputIterator | transform (const PointContainer &points, const Point_3 &ref_centroid, OutputIterator out) const |
| Make the rigid registration of the input points w.r.t the internal transformation and the given centroid, and output the transformed points. More...
|
|
template<class InputIterator , class OutputIterator > |
OutputIterator | transform (unsigned size, InputIterator begin, InputIterator end, OutputIterator out) const |
| Same as before, but input and output are coordinates. More...
|
|
template<class InputIterator , class OutputIterator > |
OutputIterator | transform (InputIterator begin, InputIterator end, OutputIterator out) const |
| Same as before, but points are represented by input iterators. More...
|
|
void | set_weights (std::vector< double > weights) |
| Initialize the weights (for weighted version) More...
|
|
void | print_transform_matrix () const |
| Print the matrix. More...
|
|
const Matrix & | get_rotation () const |
| Access to the rotation matrix. More...
|
|
const Vector_3 & | get_translation () const |
| Acces to the translation vector. More...
|
|
template<class PointContainer1 , class PointContainer2 , class OutputIterator > |
OutputIterator | operator() (const PointContainer1 &x, const PointContainer2 &y, OutputIterator out) |
| Make the rigid registration from y to x, and return it in the output iterator. More...
|
|
template<class InputIterator1 , class InputIterator2 , class OutputIterator > |
OutputIterator | operator() (unsigned size_1, InputIterator1 begin_1, InputIterator1 end_1, unsigned size_2, InputIterator2 begin_2, InputIterator2 end_2, OutputIterator out) |
| Same as before, but input is coordinates. More...
|
|
template<class InputIterator1 , class InputIterator2 , class OutputIterator > |
OutputIterator | operator() (InputIterator1 begin_1, InputIterator1 end_1, InputIterator2 begin_2, InputIterator2 end_2, OutputIterator out) |
| Same as before, but points are represented by input iterators. More...
|
|
template<class FT = double>
class SBL::GT::T_Point_cloud_rigid_registration_3< FT >
Model of Distances for defining distance between two point clouds.
Computes the least-Root Mean Squared Distance between two conformations. We use the Kabsch algorithm for finding the optimal rotation matrix that minimizes the $RMSD$*. Models for templates:Data_kernel: a linear kernel from CGAL defining points used for $l-RMSD$; Point_container: a stl container of points from Data_kernel (e.g a list); Local_kernel: a kernel from CGAL for the output $l-RMSD$
FT: Works with primitive types only