Lines Matching refs:Other
38 template< typename Other,
43 int OtherRows=Other::RowsAtCompileTime,
44 int OtherCols=Other::ColsAtCompileTime>
54 template< typename Other,
59 int OtherRows=Other::RowsAtCompileTime,
60 int OtherCols=Other::ColsAtCompileTime>
103 * with any other transformations (Transform,Translation,RotationBase,Matrix)
150 * The concatenation of a Transform object with any kind of other transformation
237 inline Transform(const Transform& other)
240 m_matrix = other.m_matrix;
260 inline Transform& operator=(const Transform& other)
261 { m_matrix = other.m_matrix; return *this; }
267 inline explicit Transform(const EigenBase<OtherDerived>& other)
273 internal::transform_construct_from_matrix<OtherDerived,Mode,Options,Dim,HDim>::run(this, other.derived());
278 inline Transform& operator=(const EigenBase<OtherDerived>& other)
283 internal::transform_construct_from_matrix<OtherDerived,Mode,Options,Dim,HDim>::run(this, other.derived());
288 inline Transform(const Transform<Scalar,Dim,Mode,OtherOptions>& other)
292 m_matrix = other.matrix();
296 inline Transform(const Transform<Scalar,Dim,OtherMode,OtherOptions>& other)
318 m_matrix.template block<Dim,Dim+1>(0,0) = other.matrix().template block<Dim,Dim+1>(0,0);
324 internal::transform_construct_from_matrix<OtherMatrixType,Mode,Options,Dim,HDim>::run(this, other.matrix());
331 linear() = other.linear();
332 translation() = other.translation();
337 Transform(const ReturnByValue<OtherDerived>& other)
340 other.evalTo(*this);
344 Transform& operator=(const ReturnByValue<OtherDerived>& other)
346 other.evalTo(*this);
351 inline Transform(const QMatrix& other);
352 inline Transform& operator=(const QMatrix& other);
354 inline Transform(const QTransform& other);
355 inline Transform& operator=(const QTransform& other);
386 /** \returns an expression of the product between the transform \c *this and a matrix expression \a other
388 * The right hand side \a other might be either:
400 operator * (const EigenBase<OtherDerived> &other) const
401 { return internal::transform_right_product_impl<Transform, OtherDerived>::run(*this,other.derived()); }
405 other might be either:
449 inline Transform& operator*=(const EigenBase<OtherDerived>& other) { return *this = *this * other; }
452 inline const Transform operator * (const Transform& other) const
454 return internal::transform_transform_product_impl<Transform,Transform>::run(*this,other);
476 operator * (const Transform<Scalar,Dim,OtherMode,OtherOptions>& other) const
479 return ProductType::run(*this,other);
485 operator * (const Transform<Scalar,Dim,OtherMode,OtherOptions>& other) const
487 return internal::transform_transform_product_impl<Transform,Transform<Scalar,Dim,OtherMode,OtherOptions> >::run(*this,other);
504 inline Transform& scale(const MatrixBase<OtherDerived> &other);
507 inline Transform& prescale(const MatrixBase<OtherDerived> &other);
513 inline Transform& translate(const MatrixBase<OtherDerived> &other);
516 inline Transform& pretranslate(const MatrixBase<OtherDerived> &other);
577 inline explicit Transform(const Transform<OtherScalarType,Dim,Mode,Options>& other)
580 m_matrix = other.matrix().template cast<Scalar>();
583 /** \returns \c true if \c *this is approximately equal to \a other, within the precision
587 bool isApprox(const Transform& other, typename NumTraits<Scalar>::Real prec = NumTraits<Scalar>::dummy_precision()) const
588 { return m_matrix.isApprox(other.m_matrix, prec); }
688 Transform<Scalar,Dim,Mode,Options>::Transform(const QMatrix& other)
691 *this = other;
699 Transform<Scalar,Dim,Mode,Options>& Transform<Scalar,Dim,Mode,Options>::operator=(const QMatrix& other)
702 m_matrix << other.m11(), other.m21(), other.dx(),
703 other.m12(), other.m22(), other.dy(),
729 Transform<Scalar,Dim,Mode,Options>::Transform(const QTransform& other)
732 *this = other;
740 Transform<Scalar,Dim,Mode,Options>& Transform<Scalar,Dim,Mode,Options>::operator=(const QTransform& other)
745 m_matrix << other.m11(), other.m21(), other.dx(),
746 other.m12(), other.m22(), other.dy();
748 m_matrix << other.m11(), other.m21(), other.dx(),
749 other.m12(), other.m22(), other.dy(),
750 other.m13(), other.m23(), other.m33();
778 * by the vector \a other to \c *this and returns a reference to \c *this.
784 Transform<Scalar,Dim,Mode,Options>::scale(const MatrixBase<OtherDerived> &other)
788 linearExt().noalias() = (linearExt() * other.asDiagonal());
805 * by the vector \a other to \c *this and returns a reference to \c *this.
811 Transform<Scalar,Dim,Mode,Options>::prescale(const MatrixBase<OtherDerived> &other)
815 m_matrix.template block<Dim,HDim>(0,0).noalias() = (other.asDiagonal() * m_matrix.template block<Dim,HDim>(0,0));
831 /** Applies on the right the translation matrix represented by the vector \a other
838 Transform<Scalar,Dim,Mode,Options>::translate(const MatrixBase<OtherDerived> &other)
841 translationExt() += linearExt() * other;
845 /** Applies on the left the translation matrix represented by the vector \a other
852 Transform<Scalar,Dim,Mode,Options>::pretranslate(const MatrixBase<OtherDerived> &other)
856 affine() += other * m_matrix.row(Dim);
858 translation() += other;
906 * by the vector \a other to \c *this and returns a reference to \c *this.
922 * by the vector \a other to \c *this and returns a reference to \c *this.
1180 template<typename Other, int Mode, int Options, int Dim, int HDim>
1181 struct transform_construct_from_matrix<Other, Mode,Options,Dim,HDim, Dim,Dim>
1183 static inline void run(Transform<typename Other::Scalar,Dim,Mode,Options> *transform, const Other& other)
1185 transform->linear() = other;
1191 template<typename Other, int Mode, int Options, int Dim, int HDim>
1192 struct transform_construct_from_matrix<Other, Mode,Options,Dim,HDim, Dim,HDim>
1194 static inline void run(Transform<typename Other::Scalar,Dim,Mode,Options> *transform, const Other& other)
1196 transform->affine() = other;
1201 template<typename Other, int Mode, int Options, int Dim, int HDim>
1202 struct transform_construct_from_matrix<Other, Mode,Options,Dim,HDim, HDim,HDim>
1204 static inline void run(Transform<typename Other::Scalar,Dim,Mode,Options> *transform, const Other& other)
1205 { transform->matrix() = other; }
1208 template<typename Other, int Options, int Dim, int HDim>
1209 struct transform_construct_from_matrix<Other, AffineCompact,Options,Dim,HDim, HDim,HDim>
1211 static inline void run(Transform<typename Other::Scalar,Dim,AffineCompact,Options> *transform, const Other& other)
1212 { transform->matrix() = other.template block<Dim,HDim>(0,0); }
1237 static EIGEN_STRONG_INLINE ResultType run(const TransformType& T, const MatrixType& other)
1239 return T.matrix() * other;
1255 static EIGEN_STRONG_INLINE ResultType run(const TransformType& T, const MatrixType& other)
1261 ResultType res(other.rows(),other.cols());
1262 TopLeftLhs(res, 0, 0, Dim, other.cols()).noalias() = T.affine() * other;
1263 res.row(OtherRows-1) = other.row(OtherRows-1);
1281 static EIGEN_STRONG_INLINE ResultType run(const TransformType& T, const MatrixType& other)
1286 ResultType res(Replicate<typename TransformType::ConstTranslationPart, 1, OtherCols>(T.translation(),1,other.cols()));
1287 TopLeftLhs(res, 0, 0, Dim, other.cols()).noalias() += T.linear() * other;
1298 template<typename Other,int Mode, int Options, int Dim, int HDim>
1299 struct transform_left_product_impl<Other,Mode,Options,Dim,HDim, HDim,HDim>
1301 typedef Transform<typename Other::Scalar,Dim,Mode,Options> TransformType;
1303 typedef Transform<typename Other::Scalar,Dim,Projective,Options> ResultType;
1304 static ResultType run(const Other& other,const TransformType& tr)
1305 { return ResultType(other * tr.matrix()); }
1309 template<typename Other, int Options, int Dim, int HDim>
1310 struct transform_left_product_impl<Other,AffineCompact,Options,Dim,HDim, HDim,HDim>
1312 typedef Transform<typename Other::Scalar,Dim,AffineCompact,Options> TransformType;
1314 typedef Transform<typename Other::Scalar,Dim,Projective,Options> ResultType;
1315 static ResultType run(const Other& other,const TransformType& tr)
1318 res.matrix().noalias() = other.template block<HDim,Dim>(0,0) * tr.matrix();
1319 res.matrix().col(Dim) += other.col(Dim);
1325 template<typename Other,int Mode, int Options, int Dim, int HDim>
1326 struct transform_left_product_impl<Other,Mode,Options,Dim,HDim, Dim,HDim>
1328 typedef Transform<typename Other::Scalar,Dim,Mode,Options> TransformType;
1331 static ResultType run(const Other& other,const TransformType& tr)
1334 res.affine().noalias() = other * tr.matrix();
1341 template<typename Other, int Options, int Dim, int HDim>
1342 struct transform_left_product_impl<Other,AffineCompact,Options,Dim,HDim, Dim,HDim>
1344 typedef Transform<typename Other::Scalar,Dim,AffineCompact,Options> TransformType;
1347 static ResultType run(const Other& other,const TransformType& tr)
1350 res.matrix().noalias() = other.template block<Dim,Dim>(0,0) * tr.matrix();
1351 res.translation() += other.col(Dim);
1357 template<typename Other,int Mode, int Options, int Dim, int HDim>
1358 struct transform_left_product_impl<Other,Mode,Options,Dim,HDim, Dim,Dim>
1360 typedef Transform<typename Other::Scalar,Dim,Mode,Options> TransformType;
1363 static ResultType run(const Other& other, const TransformType& tr)
1369 = other * tr.matrix().template topRows<Dim>();