aboutsummaryrefslogtreecommitdiffhomepage
path: root/Eigen/src/Geometry/Transform.h
diff options
context:
space:
mode:
Diffstat (limited to 'Eigen/src/Geometry/Transform.h')
-rw-r--r--Eigen/src/Geometry/Transform.h28
1 files changed, 14 insertions, 14 deletions
diff --git a/Eigen/src/Geometry/Transform.h b/Eigen/src/Geometry/Transform.h
index f91891d7b..b945ea43f 100644
--- a/Eigen/src/Geometry/Transform.h
+++ b/Eigen/src/Geometry/Transform.h
@@ -612,7 +612,7 @@ Transform<Scalar,Dim,Mode>&
Transform<Scalar,Dim,Mode>::scale(const MatrixBase<OtherDerived> &other)
{
EIGEN_STATIC_ASSERT_VECTOR_SPECIFIC_SIZE(OtherDerived,int(Dim))
- linearExt() = (linearExt() * other.asDiagonal()).lazy();
+ linearExt().noalias() = (linearExt() * other.asDiagonal());
return *this;
}
@@ -637,7 +637,7 @@ Transform<Scalar,Dim,Mode>&
Transform<Scalar,Dim,Mode>::prescale(const MatrixBase<OtherDerived> &other)
{
EIGEN_STATIC_ASSERT_VECTOR_SPECIFIC_SIZE(OtherDerived,int(Dim))
- m_matrix.template block<Dim,HDim>(0,0) = (other.asDiagonal() * m_matrix.template block<Dim,HDim>(0,0)).lazy();
+ m_matrix.template block<Dim,HDim>(0,0).noalias() = (other.asDiagonal() * m_matrix.template block<Dim,HDim>(0,0));
return *this;
}
@@ -1118,7 +1118,7 @@ struct ei_transform_right_product_impl<Other,Mode, Dim,HDim, Dim,Dim>
{
TransformType res;
res.matrix().col(Dim) = tr.matrix().col(Dim);
- res.linearExt() = (tr.linearExt() * other).lazy();
+ res.linearExt().noalias() = (tr.linearExt() * other);
if(Mode==Affine)
res.matrix().row(Dim).template head<Dim>() = tr.matrix().row(Dim).template head<Dim>();
return res;
@@ -1136,7 +1136,7 @@ struct ei_transform_right_product_impl<Other,Mode, Dim,HDim, Dim,HDim>
{
TransformType res;
const int Rows = Mode==Projective ? HDim : Dim;
- res.matrix().template block<Rows,HDim>(0,0) = (tr.linearExt() * other).lazy();
+ res.matrix().template block<Rows,HDim>(0,0).noalias() = (tr.linearExt() * other);
res.translationExt() += tr.translationExt();
if(Mode!=Affine)
res.makeAffine();
@@ -1152,7 +1152,7 @@ struct ei_transform_right_product_impl<Other,Mode, Dim,HDim, HDim,HDim>
typedef typename TransformType::MatrixType MatrixType;
typedef Transform<typename Other::Scalar,Dim,Projective> ResultType;
static ResultType run(const TransformType& tr, const Other& other)
- { return ResultType((tr.matrix() * other).lazy()); }
+ { return ResultType(tr.matrix() * other); }
};
// AffineCompact * generic matrix => Projective
@@ -1164,7 +1164,7 @@ struct ei_transform_right_product_impl<Other,AffineCompact, Dim,HDim, HDim,HDim>
static ResultType run(const TransformType& tr, const Other& other)
{
ResultType res;
- res.affine() = (tr.matrix() * other).lazy();
+ res.affine().noalias() = tr.matrix() * other;
res.makeAffine();
return res;
}
@@ -1179,7 +1179,7 @@ struct ei_transform_left_product_impl<Other,Mode,Dim,HDim, HDim,HDim>
typedef typename TransformType::MatrixType MatrixType;
typedef Transform<typename Other::Scalar,Dim,Projective> ResultType;
static ResultType run(const Other& other,const TransformType& tr)
- { return ResultType((other * tr.matrix()).lazy()); }
+ { return ResultType(other * tr.matrix()); }
};
// generic HDim x HDim matrix * AffineCompact => Projective
@@ -1192,7 +1192,7 @@ struct ei_transform_left_product_impl<Other,AffineCompact,Dim,HDim, HDim,HDim>
static ResultType run(const Other& other,const TransformType& tr)
{
ResultType res;
- res.matrix() = (other.template block<HDim,Dim>(0,0) * tr.matrix()).lazy();
+ res.matrix().noalias() = other.template block<HDim,Dim>(0,0) * tr.matrix();
res.matrix().col(Dim) += other.col(Dim);
return res;
}
@@ -1208,7 +1208,7 @@ struct ei_transform_left_product_impl<Other,Mode,Dim,HDim, Dim,HDim>
static ResultType run(const Other& other,const TransformType& tr)
{
ResultType res;
- res.affine() = (other * tr.matrix()).lazy();
+ res.affine().noalias() = other * tr.matrix();
res.matrix().row(Dim) = tr.matrix().row(Dim);
return res;
}
@@ -1224,7 +1224,7 @@ struct ei_transform_left_product_impl<Other,AffineCompact,Dim,HDim, Dim,HDim>
static ResultType run(const Other& other,const TransformType& tr)
{
ResultType res;
- res.matrix() = (other.template block<Dim,Dim>(0,0) * tr.matrix()).lazy();
+ res.matrix().noalias() = other.template block<Dim,Dim>(0,0) * tr.matrix();
res.translation() += other.col(Dim);
return res;
}
@@ -1242,8 +1242,8 @@ struct ei_transform_left_product_impl<Other,Mode,Dim,HDim, Dim,Dim>
TransformType res;
if(Mode!=AffineCompact)
res.matrix().row(Dim) = tr.matrix().row(Dim);
- res.matrix().template corner<Dim,HDim>(TopLeft)
- = (other * tr.matrix().template corner<Dim,HDim>(TopLeft)).lazy();
+ res.matrix().template corner<Dim,HDim>(TopLeft).noalias()
+ = other * tr.matrix().template corner<Dim,HDim>(TopLeft);
return res;
}
};
@@ -1259,7 +1259,7 @@ struct ei_transform_transform_product_impl<Transform<Scalar,Dim,Mode>,Transform<
typedef TransformType ResultType;
static ResultType run(const TransformType& lhs, const TransformType& rhs)
{
- return ResultType((lhs.matrix() * rhs.matrix()).lazy());
+ return ResultType(lhs.matrix() * rhs.matrix());
}
};
@@ -1297,7 +1297,7 @@ struct ei_transform_transform_product_impl<Transform<Scalar,Dim,AffineCompact>,
typedef Transform<Scalar,Dim,AffineCompact> ResultType;
static ResultType run(const Lhs& lhs, const Rhs& rhs)
{
- return ResultType((lhs.matrix() * rhs.matrix()).lazy());
+ return ResultType(lhs.matrix() * rhs.matrix());
}
};