mirror of
https://gitlab.com/libeigen/eigen.git
synced 2026-04-10 11:34:33 +08:00
fix a couple of compilations issues
This commit is contained in:
@@ -911,11 +911,7 @@ Transform<Scalar,Dim,Mode>::inverse(TransformTraits hint) const
|
||||
}
|
||||
// translation and remaining parts
|
||||
res.template corner<Dim,1>(TopRight) = - res.template corner<Dim,Dim>(TopLeft) * translation();
|
||||
if (int(Mode)!=AffineCompact)
|
||||
{
|
||||
res.template corner<1,Dim>(BottomLeft).setZero();
|
||||
res.coeffRef(Dim,Dim) = Scalar(1);
|
||||
}
|
||||
makeAffine();
|
||||
return res;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -174,8 +174,10 @@ umeyama(const MatrixBase<Derived>& src, const MatrixBase<OtherDerived>& dst, boo
|
||||
const Scalar c = 1/src_var * svd.singularValues().dot(S);
|
||||
|
||||
// Eq. (41)
|
||||
// TODO: lazyness does not make much sense over here, right?
|
||||
Rt.col(m).segment(0,m) = dst_mean - c*Rt.block(0,0,m,m)*src_mean;
|
||||
// Note that we first assign dst_mean to the destination so that there no need
|
||||
// for a temporary.
|
||||
Rt.col(m).start(m) = dst_mean;
|
||||
Rt.col(m).start(m) -= (c*Rt.corner(TopLeft,m,m)*src_mean).lazy();
|
||||
|
||||
if (with_scaling) Rt.block(0,0,m,m) *= c;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user