8#ifndef IGL_PROCRUSTES_H
9#define IGL_PROCRUSTES_H
13#include <Eigen/Geometry>
52 const Eigen::MatrixBase<DerivedX>& X,
53 const Eigen::MatrixBase<DerivedY>& Y,
54 const bool includeScaling,
55 const bool includeReflections,
57 Eigen::PlainObjectBase<DerivedR>& R,
58 Eigen::PlainObjectBase<DerivedT>& t);
78 const Eigen::MatrixBase<DerivedX>& X,
79 const Eigen::MatrixBase<DerivedY>& Y,
80 const bool includeScaling,
81 const bool includeReflections,
82 Eigen::Transform<Scalar,DIM,TType>& T);
91 const Eigen::MatrixBase<DerivedX>& X,
92 const Eigen::MatrixBase<DerivedY>& Y,
93 const bool includeScaling,
94 const bool includeReflections,
95 Eigen::PlainObjectBase<DerivedR>& S,
96 Eigen::PlainObjectBase<DerivedT>& t);
105 const Eigen::MatrixBase<DerivedX>& X,
106 const Eigen::MatrixBase<DerivedY>& Y,
107 Eigen::PlainObjectBase<DerivedR>& R,
108 Eigen::PlainObjectBase<DerivedT>& t);
117 const Eigen::MatrixBase<DerivedX>& X,
118 const Eigen::MatrixBase<DerivedY>& Y,
119 Eigen::Rotation2D<Scalar>& R,
120 Eigen::PlainObjectBase<DerivedT>& t);
123#ifndef IGL_STATIC_LIBRARY
124 #include "procrustes.cpp"
#define IGL_INLINE
Definition igl_inline.h:15
void procrustes(const Eigen::MatrixBase< DerivedX > &X, const Eigen::MatrixBase< DerivedY > &Y, const bool includeScaling, const bool includeReflections, Scalar &scale, Eigen::PlainObjectBase< DerivedR > &R, Eigen::PlainObjectBase< DerivedT > &t)
Solve Procrustes problem in d dimensions.