diff options
author | Gael Guennebaud <g.gael@free.fr> | 2008-08-30 12:42:06 +0000 |
---|---|---|
committer | Gael Guennebaud <g.gael@free.fr> | 2008-08-30 12:42:06 +0000 |
commit | 236b7a545d139a32b6cd0984044ce91d737094a5 (patch) | |
tree | 4392f9104cdaace755cc8a7c56cf70a01f36a891 /Eigen/src/Geometry/Scaling.h | |
parent | 9e7a9cde14fc8d20e9aaf41619a23dfb420fc973 (diff) |
update Transform::inverse() to take an optional argument stating whether the transformation is:
NonAffine, Affine (default), contains NoShear, contains NoScaling
that allows significant speed improvements. If you like it, this concept could be applied to
Transform::extractRotation (or to a more advanced decomposition function) and to Hyperplane::transformed()
and maybe to some other places... e.g., I think a Transform::normalMatrix() function would not harm and
warn user that the transformation of normals is not that trivial (I saw this mistake much too often)
Diffstat (limited to 'Eigen/src/Geometry/Scaling.h')
-rw-r--r-- | Eigen/src/Geometry/Scaling.h | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/Eigen/src/Geometry/Scaling.h b/Eigen/src/Geometry/Scaling.h index fcf1c0437..73938ac8b 100644 --- a/Eigen/src/Geometry/Scaling.h +++ b/Eigen/src/Geometry/Scaling.h @@ -35,18 +35,23 @@ * \param _Dim the dimension of the space, can be a compile time value or Dynamic * * - * \sa class Translate, class Transform + * \sa class Translation, class Transform */ template<typename _Scalar, int _Dim> class Scaling { public: + /** dimension of the space */ enum { Dim = _Dim }; /** the scalar type of the coefficients */ typedef _Scalar Scalar; - typedef Matrix<Scalar,Dim,Dim> LinearMatrixType; + /** corresponding vector type */ typedef Matrix<Scalar,Dim,1> VectorType; + /** corresponding linear transformation matrix type */ + typedef Matrix<Scalar,Dim,Dim> LinearMatrixType; + /** corresponding translation type */ typedef Translation<Scalar,Dim> TranslationType; + /** corresponding affine transformation type */ typedef Transform<Scalar,Dim> TransformType; protected: |