argh, gael you're more clever than i remembered. diagonal product is

optimized. so, i almost revert, just reordering to reduce # of
load/store.
This commit is contained in:
Benoit Jacob 2008-08-24 20:53:04 +00:00
parent d3529e9c40
commit bf31d81aac

View File

@ -388,7 +388,7 @@ Transform<Scalar,Dim>::fromPositionOrientationScale(const MatrixBase<PositionDer
const OrientationType& orientation, const MatrixBase<ScaleDerived> &scale)
{
linear() = ToRotationMatrix<Scalar,Dim,OrientationType>::convert(orientation);
for(int i = 0; i < Dim; i++) linear().col(i) *= scale.coeff(i);
linear() *= scale.asDiagonal();
translation() = position;
m_matrix(Dim,Dim) = 1.;
m_matrix.template block<1,Dim>(Dim,0).setZero();