Transform*Transform should return Transform

unit test compiles again
This commit is contained in:
Benoit Jacob 2008-12-19 15:55:35 +00:00
parent 5f6fbaa0e7
commit a3fad2e3c3
2 changed files with 4 additions and 4 deletions

View File

@ -185,9 +185,9 @@ public:
{ return ei_transform_product_impl<OtherDerived,Dim,HDim>::run(*this,other.derived()); }
/** Contatenates two transformations */
inline const typename ProductReturnType<MatrixType,MatrixType>::Type
inline const Transform
operator * (const Transform& other) const
{ return m_matrix * other.matrix(); }
{ return Transform(m_matrix * other.matrix()); }
/** \sa MatrixBase::setIdentity() */
void setIdentity() { m_matrix.setIdentity(); }

View File

@ -186,7 +186,7 @@ template<typename Scalar> void geometry(void)
Transform3 t4;
t4 = aa3;
VERIFY_IS_APPROX(t3.matrix(), t4.matrix());
t4.rotate(AngleAxisx(-a,v3));
t4.rotate(AngleAxisx(-a3,v3));
VERIFY_IS_APPROX(t4.matrix(), Matrix4::Identity());
v3 = Vector3::Random();
@ -222,7 +222,7 @@ template<typename Scalar> void geometry(void)
t21.setIdentity();
t21.linear() = Rotation2D<Scalar>(-a).toRotationMatrix();
VERIFY( (t20.fromPositionOrientationScale(v20,a,v21)
* (t21.prescale(v21.cwise().inverse()).translate(-v20))).isIdentity(test_precision<Scalar>()) );
* (t21.prescale(v21.cwise().inverse()).translate(-v20))).matrix().isIdentity(test_precision<Scalar>()) );
// Transform - new API
// 3D