Eigen::Homogeneous< MatrixType, Direction_ > Class Template Reference

Expression of one (or a set of) homogeneous vector(s) More...

#include <Homogeneous.h>

+ Inheritance diagram for Eigen::Homogeneous< MatrixType, Direction_ >:

Public Types

enum  { Direction = Direction_ }
 
typedef MatrixType NestedExpression
 
typedef MatrixBase< HomogeneousBase
 
- Public Types inherited from Eigen::MatrixBase< Homogeneous< MatrixType, Direction_ > >
enum  
 
enum  
 
typedef MatrixBase StorageBaseType
 
typedef internal::traits< Homogeneous< MatrixType, Direction_ > >::StorageKind StorageKind
 
typedef internal::traits< Homogeneous< MatrixType, Direction_ > >::StorageIndex StorageIndex
 
typedef internal::traits< Homogeneous< MatrixType, Direction_ > >::Scalar Scalar
 
typedef internal::packet_traits< Scalar >::type PacketScalar
 
typedef NumTraits< Scalar >::Real RealScalar
 
typedef DenseBase< Homogeneous< MatrixType, Direction_ > > Base
 
typedef Base::CoeffReturnType CoeffReturnType
 
typedef Base::ConstTransposeReturnType ConstTransposeReturnType
 
typedef Base::RowXpr RowXpr
 
typedef Base::ColXpr ColXpr
 
typedef Matrix< Scalar, internal::max_size_prefer_dynamic(RowsAtCompileTime, ColsAtCompileTime), internal::max_size_prefer_dynamic(RowsAtCompileTime, ColsAtCompileTime)> SquareMatrixType
 
typedef Base::PlainObject PlainObject
 
typedef CwiseNullaryOp< internal::scalar_constant_op< Scalar >, PlainObjectConstantReturnType
 
typedef std::conditional_t< NumTraits< Scalar >::IsComplex, CwiseUnaryOp< internal::scalar_conjugate_op< Scalar >, ConstTransposeReturnType >, ConstTransposeReturnTypeAdjointReturnType
 
typedef Matrix< std::complex< RealScalar >, internal::traits< Homogeneous< MatrixType, Direction_ > >::ColsAtCompileTime, 1, ColMajor > EigenvaluesReturnType
 
typedef CwiseNullaryOp< internal::scalar_identity_op< Scalar >, PlainObjectIdentityReturnType
 
typedef Block< const CwiseNullaryOp< internal::scalar_identity_op< Scalar >, SquareMatrixType >, internal::traits< Homogeneous< MatrixType, Direction_ > >::RowsAtCompileTime, internal::traits< Homogeneous< MatrixType, Direction_ > >::ColsAtCompileTimeBasisReturnType
 
typedef Diagonal< Homogeneous< MatrixType, Direction_ > > DiagonalReturnType
 
typedef Diagonal< const Homogeneous< MatrixType, Direction_ > > ConstDiagonalReturnType
 
typedef Homogeneous< Homogeneous< MatrixType, Direction_ >, HomogeneousReturnTypeDirectionHomogeneousReturnType
 
typedef Block< const Homogeneous< MatrixType, Direction_ >, internal::traits< Homogeneous< MatrixType, Direction_ > >::ColsAtCompileTime==1 ? SizeMinusOne :1, internal::traits< Homogeneous< MatrixType, Direction_ > >::ColsAtCompileTime==1 ? 1 :SizeMinusOneConstStartMinusOne
 
typedef internal::stem_function< Scalar >::type StemFunction
 
- Public Types inherited from Eigen::DenseBase< Homogeneous< MatrixType, Direction_ > >
enum  
 
enum  
 
typedef Eigen::InnerIterator< Homogeneous< MatrixType, Direction_ > > InnerIterator
 
typedef internal::traits< Homogeneous< MatrixType, Direction_ > >::StorageKind StorageKind
 
typedef internal::traits< Homogeneous< MatrixType, Direction_ > >::StorageIndex StorageIndex
 The type used to store indices. More...
 
typedef internal::traits< Homogeneous< MatrixType, Direction_ > >::Scalar Scalar
 
typedef Scalar value_type
 
typedef NumTraits< Scalar >::Real RealScalar
 
typedef DenseCoeffsBase< Homogeneous< MatrixType, Direction_ >, internal::accessors_level< Homogeneous< MatrixType, Direction_ > >::valueBase
 
typedef Base::CoeffReturnType CoeffReturnType
 
typedef internal::find_best_packet< Scalar, SizeAtCompileTime >::type PacketScalar
 
typedef Matrix< typename internal::traits< Homogeneous< MatrixType, Direction_ > >::Scalar, internal::traits< Homogeneous< MatrixType, Direction_ > >::RowsAtCompileTime, internal::traits< Homogeneous< MatrixType, Direction_ > >::ColsAtCompileTime, AutoAlign|(internal::traits< Homogeneous< MatrixType, Direction_ > >::Flags &RowMajorBit ? RowMajor :ColMajor), internal::traits< Homogeneous< MatrixType, Direction_ > >::MaxRowsAtCompileTime, internal::traits< Homogeneous< MatrixType, Direction_ > >::MaxColsAtCompileTimePlainMatrix
 
typedef Array< typename internal::traits< Homogeneous< MatrixType, Direction_ > >::Scalar, internal::traits< Homogeneous< MatrixType, Direction_ > >::RowsAtCompileTime, internal::traits< Homogeneous< MatrixType, Direction_ > >::ColsAtCompileTime, AutoAlign|(internal::traits< Homogeneous< MatrixType, Direction_ > >::Flags &RowMajorBit ? RowMajor :ColMajor), internal::traits< Homogeneous< MatrixType, Direction_ > >::MaxRowsAtCompileTime, internal::traits< Homogeneous< MatrixType, Direction_ > >::MaxColsAtCompileTimePlainArray
 
typedef std::conditional_t< internal::is_same< typename internal::traits< Homogeneous< MatrixType, Direction_ > >::XprKind, MatrixXpr >::value, PlainMatrix, PlainArrayPlainObject
 The plain matrix or array type corresponding to this expression. More...
 
typedef CwiseNullaryOp< internal::scalar_constant_op< Scalar >, PlainObjectConstantReturnType
 
typedef CwiseNullaryOp< internal::scalar_zero_op< Scalar >, PlainObjectZeroReturnType
 
typedef CwiseNullaryOp< internal::linspaced_op< Scalar >, PlainObjectRandomAccessLinSpacedReturnType
 
typedef CwiseNullaryOp< internal::equalspaced_op< Scalar >, PlainObjectRandomAccessEqualSpacedReturnType
 
typedef Matrix< typename NumTraits< typename internal::traits< Homogeneous< MatrixType, Direction_ > >::Scalar >::Real, internal::traits< Homogeneous< MatrixType, Direction_ > >::ColsAtCompileTime, 1 > EigenvaluesReturnType
 
typedef Transpose< Homogeneous< MatrixType, Direction_ > > TransposeReturnType
 
typedef Transpose< const Homogeneous< MatrixType, Direction_ > > ConstTransposeReturnType
 
typedef internal::add_const_on_value_type_t< typename internal::eval< Homogeneous< MatrixType, Direction_ > >::type > EvalReturnType
 
typedef VectorwiseOp< Homogeneous< MatrixType, Direction_ >, Horizontal > RowwiseReturnType
 
typedef const VectorwiseOp< const Homogeneous< MatrixType, Direction_ >, Horizontal > ConstRowwiseReturnType
 
typedef VectorwiseOp< Homogeneous< MatrixType, Direction_ >, Vertical > ColwiseReturnType
 
typedef const VectorwiseOp< const Homogeneous< MatrixType, Direction_ >, Vertical > ConstColwiseReturnType
 
typedef CwiseNullaryOp< internal::scalar_random_op< Scalar >, PlainObjectRandomReturnType
 
typedef Reverse< Homogeneous< MatrixType, Direction_ >, BothDirections > ReverseReturnType
 
typedef const Reverse< const Homogeneous< MatrixType, Direction_ >, BothDirections > ConstReverseReturnType
 
typedef std::conditional_t<(Flags &DirectAccessBit)==DirectAccessBit, internal::pointer_based_stl_iterator< Homogeneous< MatrixType, Direction_ > >, internal::generic_randaccess_stl_iterator< Homogeneous< MatrixType, Direction_ > > > iterator_type
 
typedef std::conditional_t<(Flags &DirectAccessBit)==DirectAccessBit, internal::pointer_based_stl_iterator< const Homogeneous< MatrixType, Direction_ > >, internal::generic_randaccess_stl_iterator< const Homogeneous< MatrixType, Direction_ > > > const_iterator_type
 
typedef std::conditional_t< IsVectorAtCompileTime, iterator_type, void > iterator
 
typedef std::conditional_t< IsVectorAtCompileTime, const_iterator_type, void > const_iterator
 

Public Member Functions

EIGEN_DEVICE_FUNC Homogeneous (const MatrixType &matrix)
 
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index rows () const EIGEN_NOEXCEPT
 
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index cols () const EIGEN_NOEXCEPT
 
EIGEN_DEVICE_FUNC const NestedExpressionnestedExpression () const
 
template<typename Rhs >
EIGEN_DEVICE_FUNC const Product< Homogeneous, Rhs > operator* (const MatrixBase< Rhs > &rhs) const
 
template<typename Func >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE internal::result_of< Func(Scalar, Scalar)>::type redux (const Func &func) const
 
- Public Member Functions inherited from Eigen::MatrixBase< Homogeneous< MatrixType, Direction_ > >
EIGEN_DEVICE_FUNC Index diagonalSize () const
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Homogeneous< MatrixType, Direction_ > & operator= (const MatrixBase &other)
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Homogeneous< MatrixType, Direction_ > & operator= (const DenseBase< OtherDerived > &other)
 
EIGEN_DEVICE_FUNC Homogeneous< MatrixType, Direction_ > & operator= (const EigenBase< OtherDerived > &other)
 
EIGEN_DEVICE_FUNC Homogeneous< MatrixType, Direction_ > & operator= (const ReturnByValue< OtherDerived > &other)
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Homogeneous< MatrixType, Direction_ > & operator= (const EigenBase< OtherDerived > &other)
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Homogeneous< MatrixType, Direction_ > & operator= (const ReturnByValue< OtherDerived > &other)
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Homogeneous< MatrixType, Direction_ > & operator+= (const MatrixBase< OtherDerived > &other)
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Homogeneous< MatrixType, Direction_ > & operator-= (const MatrixBase< OtherDerived > &other)
 
EIGEN_DEVICE_FUNC const Product< Homogeneous< MatrixType, Direction_ >, OtherDerived > operator* (const MatrixBase< OtherDerived > &other) const
 
EIGEN_DEVICE_FUNC const Product< Homogeneous< MatrixType, Direction_ >, DiagonalDerived, LazyProduct > operator* (const DiagonalBase< DiagonalDerived > &diagonal) const
 
EIGEN_DEVICE_FUNC const Product< Homogeneous< MatrixType, Direction_ >, SkewDerived, LazyProduct > operator* (const SkewSymmetricBase< SkewDerived > &skew) const
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE const Product< Homogeneous< MatrixType, Direction_ >, OtherDerived > operator* (const MatrixBase< OtherDerived > &other) const
 
EIGEN_DEVICE_FUNC const Product< Homogeneous< MatrixType, Direction_ >, OtherDerived, LazyProduct > lazyProduct (const MatrixBase< OtherDerived > &other) const
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE const Product< Homogeneous< MatrixType, Direction_ >, OtherDerived, LazyProduct > lazyProduct (const MatrixBase< OtherDerived > &other) const
 
Homogeneous< MatrixType, Direction_ > & operator*= (const EigenBase< OtherDerived > &other)
 
void applyOnTheLeft (const EigenBase< OtherDerived > &other)
 
EIGEN_DEVICE_FUNC void applyOnTheLeft (Index p, Index q, const JacobiRotation< OtherScalar > &j)
 
void applyOnTheRight (const EigenBase< OtherDerived > &other)
 
EIGEN_DEVICE_FUNC void applyOnTheRight (Index p, Index q, const JacobiRotation< OtherScalar > &j)
 
EIGEN_DEVICE_FUNC ScalarBinaryOpTraits< typename internal::traits< Homogeneous< MatrixType, Direction_ > >::Scalar, typename internal::traits< OtherDerived >::Scalar >::ReturnType dot (const MatrixBase< OtherDerived > &other) const
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE ScalarBinaryOpTraits< typename internal::traits< Homogeneous< MatrixType, Direction_ > >::Scalar, typename internal::traits< OtherDerived >::Scalar >::ReturnType dot (const MatrixBase< OtherDerived > &other) const
 
EIGEN_DEVICE_FUNC RealScalar squaredNorm () const
 
EIGEN_DEVICE_FUNC RealScalar norm () const
 
RealScalar stableNorm () const
 
RealScalar blueNorm () const
 
RealScalar hypotNorm () const
 
EIGEN_DEVICE_FUNC const PlainObject normalized () const
 
EIGEN_DEVICE_FUNC const PlainObject stableNormalized () const
 
EIGEN_DEVICE_FUNC void normalize ()
 
EIGEN_DEVICE_FUNC void stableNormalize ()
 
EIGEN_DEVICE_FUNC const AdjointReturnType adjoint () const
 
EIGEN_DEVICE_FUNC void adjointInPlace ()
 
EIGEN_DEVICE_FUNC DiagonalReturnType diagonal ()
 
EIGEN_DEVICE_FUNC const ConstDiagonalReturnType diagonal () const
 
EIGEN_DEVICE_FUNC Diagonal< Homogeneous< MatrixType, Direction_ >, Indexdiagonal ()
 
EIGEN_DEVICE_FUNC const Diagonal< const Homogeneous< MatrixType, Direction_ >, Indexdiagonal () const
 
EIGEN_DEVICE_FUNC Diagonal< Homogeneous< MatrixType, Direction_ >, DynamicIndex > diagonal (Index index)
 
EIGEN_DEVICE_FUNC const Diagonal< const Homogeneous< MatrixType, Direction_ >, DynamicIndex > diagonal (Index index) const
 
EIGEN_DEVICE_FUNC TriangularViewReturnType< Mode >::Type triangularView ()
 
EIGEN_DEVICE_FUNC ConstTriangularViewReturnType< Mode >::Type triangularView () const
 
EIGEN_DEVICE_FUNC MatrixBase< Homogeneous< MatrixType, Direction_ > >::template TriangularViewReturnType< Mode >::Type triangularView ()
 
EIGEN_DEVICE_FUNC MatrixBase< Homogeneous< MatrixType, Direction_ > >::template ConstTriangularViewReturnType< Mode >::Type triangularView () const
 
EIGEN_DEVICE_FUNC SelfAdjointViewReturnType< UpLo >::Type selfadjointView ()
 
EIGEN_DEVICE_FUNC ConstSelfAdjointViewReturnType< UpLo >::Type selfadjointView () const
 
EIGEN_DEVICE_FUNC MatrixBase< Homogeneous< MatrixType, Direction_ > >::template ConstSelfAdjointViewReturnType< UpLo >::Type selfadjointView () const
 
EIGEN_DEVICE_FUNC MatrixBase< Homogeneous< MatrixType, Direction_ > >::template SelfAdjointViewReturnType< UpLo >::Type selfadjointView ()
 
const SparseView< Homogeneous< MatrixType, Direction_ > > sparseView (const Scalar &m_reference=Scalar(0), const typename NumTraits< Scalar >::Real &m_epsilon=NumTraits< Scalar >::dummy_precision()) const
 
EIGEN_DEVICE_FUNC const DiagonalWrapper< const Homogeneous< MatrixType, Direction_ > > asDiagonal () const
 
const PermutationWrapper< const Homogeneous< MatrixType, Direction_ > > asPermutation () const
 
EIGEN_DEVICE_FUNC const SkewSymmetricWrapper< const Homogeneous< MatrixType, Direction_ > > asSkewSymmetric () const
 
EIGEN_DEVICE_FUNC Homogeneous< MatrixType, Direction_ > & setIdentity ()
 
EIGEN_DEVICE_FUNC Homogeneous< MatrixType, Direction_ > & setIdentity (Index rows, Index cols)
 Resizes to the given size, and writes the identity expression (not necessarily square) into *this. More...
 
EIGEN_DEVICE_FUNC Homogeneous< MatrixType, Direction_ > & setUnit (Index i)
 Set the coefficients of *this to the i-th unit (basis) vector. More...
 
EIGEN_DEVICE_FUNC Homogeneous< MatrixType, Direction_ > & setUnit (Index newSize, Index i)
 Resizes to the given newSize, and writes the i-th unit (basis) vector into *this. More...
 
bool isIdentity (const RealScalar &prec=NumTraits< Scalar >::dummy_precision()) const
 
bool isDiagonal (const RealScalar &prec=NumTraits< Scalar >::dummy_precision()) const
 
bool isUpperTriangular (const RealScalar &prec=NumTraits< Scalar >::dummy_precision()) const
 
bool isLowerTriangular (const RealScalar &prec=NumTraits< Scalar >::dummy_precision()) const
 
bool isSkewSymmetric (const RealScalar &prec=NumTraits< Scalar >::dummy_precision()) const
 
bool isOrthogonal (const MatrixBase< OtherDerived > &other, const RealScalar &prec=NumTraits< Scalar >::dummy_precision()) const
 
bool isUnitary (const RealScalar &prec=NumTraits< Scalar >::dummy_precision()) const
 
EIGEN_DEVICE_FUNC bool operator== (const MatrixBase< OtherDerived > &other) const
 
EIGEN_DEVICE_FUNC bool operator!= (const MatrixBase< OtherDerived > &other) const
 
NoAlias< Homogeneous< MatrixType, Direction_ >, Eigen::MatrixBase > EIGEN_DEVICE_FUNC noalias ()
 
const Homogeneous< MatrixType, Direction_ > & forceAlignedAccess () const
 
Homogeneous< MatrixType, Direction_ > & forceAlignedAccess ()
 
const Homogeneous< MatrixType, Direction_ > & forceAlignedAccessIf () const
 
Homogeneous< MatrixType, Direction_ > & forceAlignedAccessIf ()
 
add_const_on_value_type_t< std::conditional_t< Enable, ForceAlignedAccess< Homogeneous< MatrixType, Direction_ > >, Homogeneous< MatrixType, Direction_ > & > > forceAlignedAccessIf () const
 
std::conditional_t< Enable, ForceAlignedAccess< Homogeneous< MatrixType, Direction_ > >, Homogeneous< MatrixType, Direction_ > & > forceAlignedAccessIf ()
 
EIGEN_DEVICE_FUNC Scalar trace () const
 
EIGEN_DEVICE_FUNC RealScalar lpNorm () const
 
EIGEN_DEVICE_FUNC NumTraits< typename internal::traits< Homogeneous< MatrixType, Direction_ > >::Scalar >::Real lpNorm () const
 
EIGEN_DEVICE_FUNC MatrixBase< Homogeneous< MatrixType, Direction_ > > & matrix ()
 
EIGEN_DEVICE_FUNC const MatrixBase< Homogeneous< MatrixType, Direction_ > > & matrix () const
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE ArrayWrapper< Homogeneous< MatrixType, Direction_ > > array ()
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE const ArrayWrapper< const Homogeneous< MatrixType, Direction_ > > array () const
 
const FullPivLU< PlainObject, PermutationIndex > fullPivLu () const
 
const FullPivLU< typename MatrixBase< Homogeneous< MatrixType, Direction_ > >::PlainObject, PermutationIndex > fullPivLu () const
 
const PartialPivLU< PlainObject, PermutationIndex > partialPivLu () const
 
const PartialPivLU< typename MatrixBase< Homogeneous< MatrixType, Direction_ > >::PlainObject, PermutationIndex > partialPivLu () const
 
const PartialPivLU< PlainObject, PermutationIndex > lu () const
 
const PartialPivLU< typename MatrixBase< Homogeneous< MatrixType, Direction_ > >::PlainObject, PermutationIndex > lu () const
 
EIGEN_DEVICE_FUNC const Inverse< Homogeneous< MatrixType, Direction_ > > inverse () const
 
void computeInverseAndDetWithCheck (ResultType &inverse, typename ResultType::Scalar &determinant, bool &invertible, const RealScalar &absDeterminantThreshold=NumTraits< Scalar >::dummy_precision()) const
 
void computeInverseWithCheck (ResultType &inverse, bool &invertible, const RealScalar &absDeterminantThreshold=NumTraits< Scalar >::dummy_precision()) const
 
EIGEN_DEVICE_FUNC Scalar determinant () const
 
const LLT< PlainObjectllt () const
 
const LDLT< PlainObjectldlt () const
 
const HouseholderQR< PlainObjecthouseholderQr () const
 
const ColPivHouseholderQR< PlainObject, PermutationIndex > colPivHouseholderQr () const
 
const ColPivHouseholderQR< typename MatrixBase< Homogeneous< MatrixType, Direction_ > >::PlainObject, PermutationIndexType > colPivHouseholderQr () const
 
const FullPivHouseholderQR< PlainObject, PermutationIndex > fullPivHouseholderQr () const
 
const FullPivHouseholderQR< typename MatrixBase< Homogeneous< MatrixType, Direction_ > >::PlainObject, PermutationIndex > fullPivHouseholderQr () const
 
const CompleteOrthogonalDecomposition< PlainObject, PermutationIndex > completeOrthogonalDecomposition () const
 
const CompleteOrthogonalDecomposition< typename MatrixBase< Homogeneous< MatrixType, Direction_ > >::PlainObject, PermutationIndex > completeOrthogonalDecomposition () const
 
EigenvaluesReturnType eigenvalues () const
 Computes the eigenvalues of a matrix. More...
 
RealScalar operatorNorm () const
 Computes the L2 operator norm. More...
 
JacobiSVD< PlainObject, Options > jacobiSvd () const
 
EIGEN_DEPRECATED JacobiSVD< PlainObject, Options > jacobiSvd (unsigned int computationOptions) const
 
JacobiSVD< typename MatrixBase< Homogeneous< MatrixType, Direction_ > >::PlainObject, Options > jacobiSvd () const
 
JacobiSVD< typename MatrixBase< Homogeneous< MatrixType, Direction_ > >::PlainObject, Options > jacobiSvd (unsigned int computationOptions) const
 
BDCSVD< PlainObject, Options > bdcSvd () const
 
EIGEN_DEPRECATED BDCSVD< PlainObject, Options > bdcSvd (unsigned int computationOptions) const
 
BDCSVD< typename MatrixBase< Homogeneous< MatrixType, Direction_ > >::PlainObject, Options > bdcSvd () const
 
BDCSVD< typename MatrixBase< Homogeneous< MatrixType, Direction_ > >::PlainObject, Options > bdcSvd (unsigned int computationOptions) const
 
EIGEN_DEVICE_FUNC internal::cross_impl< Homogeneous< MatrixType, Direction_ >, OtherDerived >::return_type cross (const MatrixBase< OtherDerived > &other) const
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE internal::cross_impl< Homogeneous< MatrixType, Direction_ >, OtherDerived >::return_type cross (const MatrixBase< OtherDerived > &other) const
 
EIGEN_DEVICE_FUNC PlainObject cross3 (const MatrixBase< OtherDerived > &other) const
 
EIGEN_DEVICE_FUNC PlainObject unitOrthogonal (void) const
 
EIGEN_DEPRECATED EIGEN_DEVICE_FUNC Matrix< Scalar, 3, 1 > eulerAngles (Index a0, Index a1, Index a2) const
 
EIGEN_DEVICE_FUNC Matrix< Scalar, 3, 1 > canonicalEulerAngles (Index a0, Index a1, Index a2) const
 
EIGEN_DEVICE_FUNC HomogeneousReturnType homogeneous () const
 
typedef EIGEN_EXPR_BINARYOP_SCALAR_RETURN_TYPE (ConstStartMinusOne, Scalar, quotient) HNormalizedReturnType
 
EIGEN_DEVICE_FUNC const HNormalizedReturnType hnormalized () const
 homogeneous normalization More...
 
EIGEN_DEVICE_FUNC void makeHouseholderInPlace (Scalar &tau, RealScalar &beta)
 
EIGEN_DEVICE_FUNC void makeHouseholder (EssentialPart &essential, Scalar &tau, RealScalar &beta) const
 
EIGEN_DEVICE_FUNC void applyHouseholderOnTheLeft (const EssentialPart &essential, const Scalar &tau, Scalar *workspace)
 
EIGEN_DEVICE_FUNC void applyHouseholderOnTheRight (const EssentialPart &essential, const Scalar &tau, Scalar *workspace)
 
EIGEN_STRONG_INLINE const SparseMatrixBase< OtherDerived >::template CwiseProductDenseReturnType< Homogeneous< MatrixType, Direction_ > >::Type cwiseProduct (const SparseMatrixBase< OtherDerived > &other) const
 
const MatrixFunctionReturnValue< Homogeneous< MatrixType, Direction_ > > matrixFunction (StemFunction f) const
 Helper function for the unsupported MatrixFunctions module. More...
 
- Public Member Functions inherited from Eigen::DenseBase< Homogeneous< MatrixType, Direction_ > >
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index outerSize () const
 
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index innerSize () const
 
EIGEN_DEVICE_FUNC void resize (Index newSize)
 
EIGEN_DEVICE_FUNC void resize (Index rows, Index cols)
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Homogeneous< MatrixType, Direction_ > & operator= (const DenseBase< OtherDerived > &other)
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Homogeneous< MatrixType, Direction_ > & operator= (const DenseBase &other)
 
EIGEN_DEVICE_FUNC Homogeneous< MatrixType, Direction_ > & operator= (const EigenBase< OtherDerived > &other)
 Copies the generic expression other into *this. More...
 
EIGEN_DEVICE_FUNC Homogeneous< MatrixType, Direction_ > & operator= (const ReturnByValue< OtherDerived > &func)
 
EIGEN_DEVICE_FUNC Homogeneous< MatrixType, Direction_ > & operator+= (const EigenBase< OtherDerived > &other)
 
EIGEN_DEVICE_FUNC Homogeneous< MatrixType, Direction_ > & operator-= (const EigenBase< OtherDerived > &other)
 
EIGEN_DEPRECATED EIGEN_DEVICE_FUNC Homogeneous< MatrixType, Direction_ > & lazyAssign (const DenseBase< OtherDerived > &other)
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Homogeneous< MatrixType, Direction_ > & lazyAssign (const DenseBase< OtherDerived > &other)
 
EIGEN_DEVICE_FUNC CommaInitializer< Homogeneous< MatrixType, Direction_ > > operator<< (const Scalar &s)
 
EIGEN_DEVICE_FUNC CommaInitializer< Homogeneous< MatrixType, Direction_ > > operator<< (const DenseBase< OtherDerived > &other)
 
EIGEN_DEPRECATED const Homogeneous< MatrixType, Direction_ > & flagged () const
 
EIGEN_DEVICE_FUNC TransposeReturnType transpose ()
 
EIGEN_DEVICE_FUNC const ConstTransposeReturnType transpose () const
 
EIGEN_DEVICE_FUNC void transposeInPlace ()
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE const CwiseNullaryOp< CustomNullaryOp, typename DenseBase< Homogeneous< MatrixType, Direction_ > >::PlainObjectNullaryExpr (Index rows, Index cols, const CustomNullaryOp &func)
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE const CwiseNullaryOp< CustomNullaryOp, typename DenseBase< Homogeneous< MatrixType, Direction_ > >::PlainObjectNullaryExpr (Index size, const CustomNullaryOp &func)
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE const CwiseNullaryOp< CustomNullaryOp, typename DenseBase< Homogeneous< MatrixType, Direction_ > >::PlainObjectNullaryExpr (const CustomNullaryOp &func)
 
EIGEN_DEVICE_FUNC void fill (const Scalar &value)
 
EIGEN_DEVICE_FUNC Homogeneous< MatrixType, Direction_ > & setConstant (const Scalar &value)
 
EIGEN_DEVICE_FUNC Homogeneous< MatrixType, Direction_ > & setLinSpaced (Index size, const Scalar &low, const Scalar &high)
 Sets a linearly spaced vector. More...
 
EIGEN_DEVICE_FUNC Homogeneous< MatrixType, Direction_ > & setLinSpaced (const Scalar &low, const Scalar &high)
 Sets a linearly spaced vector. More...
 
EIGEN_DEVICE_FUNC Homogeneous< MatrixType, Direction_ > & setEqualSpaced (Index size, const Scalar &low, const Scalar &step)
 
EIGEN_DEVICE_FUNC Homogeneous< MatrixType, Direction_ > & setEqualSpaced (const Scalar &low, const Scalar &step)
 
EIGEN_DEVICE_FUNC Homogeneous< MatrixType, Direction_ > & setZero ()
 
EIGEN_DEVICE_FUNC Homogeneous< MatrixType, Direction_ > & setOnes ()
 
EIGEN_DEVICE_FUNC Homogeneous< MatrixType, Direction_ > & setRandom ()
 
EIGEN_DEVICE_FUNC bool isApprox (const DenseBase< OtherDerived > &other, const RealScalar &prec=NumTraits< Scalar >::dummy_precision()) const
 
EIGEN_DEVICE_FUNC bool isMuchSmallerThan (const RealScalar &other, const RealScalar &prec=NumTraits< Scalar >::dummy_precision()) const
 
EIGEN_DEVICE_FUNC bool isMuchSmallerThan (const DenseBase< OtherDerived > &other, const RealScalar &prec=NumTraits< Scalar >::dummy_precision()) const
 
EIGEN_DEVICE_FUNC bool isMuchSmallerThan (const typename NumTraits< Scalar >::Real &other, const RealScalar &prec) const
 
EIGEN_DEVICE_FUNC bool isApproxToConstant (const Scalar &value, const RealScalar &prec=NumTraits< Scalar >::dummy_precision()) const
 
EIGEN_DEVICE_FUNC bool isConstant (const Scalar &value, const RealScalar &prec=NumTraits< Scalar >::dummy_precision()) const
 
EIGEN_DEVICE_FUNC bool isZero (const RealScalar &prec=NumTraits< Scalar >::dummy_precision()) const
 
EIGEN_DEVICE_FUNC bool isOnes (const RealScalar &prec=NumTraits< Scalar >::dummy_precision()) const
 
EIGEN_DEVICE_FUNC bool hasNaN () const
 
EIGEN_DEVICE_FUNC bool allFinite () const
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Homogeneous< MatrixType, Direction_ > & operator*= (const Scalar &other)
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Homogeneous< MatrixType, Direction_ > & operator/= (const Scalar &other)
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE EvalReturnType eval () const
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void swap (const DenseBase< OtherDerived > &other)
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void swap (PlainObjectBase< OtherDerived > &other)
 
EIGEN_DEVICE_FUNC const NestByValue< Homogeneous< MatrixType, Direction_ > > nestByValue () const
 
EIGEN_DEVICE_FUNC const ForceAlignedAccess< Homogeneous< MatrixType, Direction_ > > forceAlignedAccess () const
 
EIGEN_DEVICE_FUNC ForceAlignedAccess< Homogeneous< MatrixType, Direction_ > > forceAlignedAccess ()
 
EIGEN_DEVICE_FUNC const std::conditional_t< Enable, ForceAlignedAccess< Homogeneous< MatrixType, Direction_ > >, Homogeneous< MatrixType, Direction_ > & > forceAlignedAccessIf () const
 
EIGEN_DEVICE_FUNC std::conditional_t< Enable, ForceAlignedAccess< Homogeneous< MatrixType, Direction_ > >, Homogeneous< MatrixType, Direction_ > & > forceAlignedAccessIf ()
 
EIGEN_DEVICE_FUNC Scalar sum () const
 
EIGEN_DEVICE_FUNC Scalar mean () const
 
EIGEN_DEVICE_FUNC Scalar trace () const
 
EIGEN_DEVICE_FUNC Scalar prod () const
 
EIGEN_DEVICE_FUNC internal::traits< Homogeneous< MatrixType, Direction_ > >::Scalar minCoeff () const
 
EIGEN_DEVICE_FUNC internal::traits< Homogeneous< MatrixType, Direction_ > >::Scalar minCoeff () const
 
EIGEN_DEVICE_FUNC internal::traits< Homogeneous< MatrixType, Direction_ > >::Scalar minCoeff (IndexType *row, IndexType *col) const
 
EIGEN_DEVICE_FUNC internal::traits< Homogeneous< MatrixType, Direction_ > >::Scalar minCoeff (IndexType *index) const
 
EIGEN_DEVICE_FUNC internal::traits< Homogeneous< MatrixType, Direction_ > >::Scalar minCoeff (IndexType *row, IndexType *col) const
 
EIGEN_DEVICE_FUNC internal::traits< Homogeneous< MatrixType, Direction_ > >::Scalar minCoeff (IndexType *index) const
 
EIGEN_DEVICE_FUNC internal::traits< Homogeneous< MatrixType, Direction_ > >::Scalar maxCoeff () const
 
EIGEN_DEVICE_FUNC internal::traits< Homogeneous< MatrixType, Direction_ > >::Scalar maxCoeff () const
 
EIGEN_DEVICE_FUNC internal::traits< Homogeneous< MatrixType, Direction_ > >::Scalar maxCoeff (IndexType *row, IndexType *col) const
 
EIGEN_DEVICE_FUNC internal::traits< Homogeneous< MatrixType, Direction_ > >::Scalar maxCoeff (IndexType *index) const
 
EIGEN_DEVICE_FUNC internal::traits< Homogeneous< MatrixType, Direction_ > >::Scalar maxCoeff (IndexType *row, IndexType *col) const
 
EIGEN_DEVICE_FUNC internal::traits< Homogeneous< MatrixType, Direction_ > >::Scalar maxCoeff (IndexType *index) const
 
EIGEN_DEVICE_FUNC Scalar redux (const BinaryOp &func) const
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE internal::traits< Homogeneous< MatrixType, Direction_ > >::Scalar redux (const Func &func) const
 
EIGEN_DEVICE_FUNC void visit (Visitor &func) const
 
const WithFormat< Homogeneous< MatrixType, Direction_ > > format (const IOFormat &fmt) const
 
EIGEN_DEVICE_FUNC CoeffReturnType value () const
 
EIGEN_DEVICE_FUNC bool all () const
 
EIGEN_DEVICE_FUNC bool any () const
 
EIGEN_DEVICE_FUNC Index count () const
 
EIGEN_DEVICE_FUNC ConstRowwiseReturnType rowwise () const
 
EIGEN_DEVICE_FUNC RowwiseReturnType rowwise ()
 
EIGEN_DEVICE_FUNC ConstColwiseReturnType colwise () const
 
EIGEN_DEVICE_FUNC ColwiseReturnType colwise ()
 
EIGEN_DEVICE_FUNC CwiseTernaryOp< internal::scalar_boolean_select_op< typename DenseBase< ThenDerived >::Scalar, typename DenseBase< ElseDerived >::Scalar, Scalar >, ThenDerived, ElseDerived, Homogeneous< MatrixType, Direction_ > > select (const DenseBase< ThenDerived > &thenMatrix, const DenseBase< ElseDerived > &elseMatrix) const
 
EIGEN_DEVICE_FUNC CwiseTernaryOp< internal::scalar_boolean_select_op< typename DenseBase< ThenDerived >::Scalar, typename DenseBase< ThenDerived >::Scalar, Scalar >, ThenDerived, typename DenseBase< ThenDerived >::ConstantReturnType, Homogeneous< MatrixType, Direction_ > > select (const DenseBase< ThenDerived > &thenMatrix, const typename DenseBase< ThenDerived >::Scalar &elseScalar) const
 
EIGEN_DEVICE_FUNC CwiseTernaryOp< internal::scalar_boolean_select_op< typename DenseBase< ElseDerived >::Scalar, typename DenseBase< ElseDerived >::Scalar, Scalar >, typename DenseBase< ElseDerived >::ConstantReturnType, ElseDerived, Homogeneous< MatrixType, Direction_ > > select (const typename DenseBase< ElseDerived >::Scalar &thenScalar, const DenseBase< ElseDerived > &elseMatrix) const
 
EIGEN_DEVICE_FUNC CwiseTernaryOp< internal::scalar_boolean_select_op< typename DenseBase< ThenDerived >::Scalar, typename DenseBase< ElseDerived >::Scalar, typename DenseBase< Homogeneous< MatrixType, Direction_ > >::Scalar >, ThenDerived, ElseDerived, Homogeneous< MatrixType, Direction_ > > select (const DenseBase< ThenDerived > &thenMatrix, const DenseBase< ElseDerived > &elseMatrix) const
 
EIGEN_DEVICE_FUNC CwiseTernaryOp< internal::scalar_boolean_select_op< typename DenseBase< ThenDerived >::Scalar, typename DenseBase< ThenDerived >::Scalar, typename DenseBase< Homogeneous< MatrixType, Direction_ > >::Scalar >, ThenDerived, typename DenseBase< ThenDerived >::ConstantReturnType, Homogeneous< MatrixType, Direction_ > > select (const DenseBase< ThenDerived > &thenMatrix, const typename DenseBase< ThenDerived >::Scalar &elseScalar) const
 
EIGEN_DEVICE_FUNC CwiseTernaryOp< internal::scalar_boolean_select_op< typename DenseBase< ElseDerived >::Scalar, typename DenseBase< ElseDerived >::Scalar, typename DenseBase< Homogeneous< MatrixType, Direction_ > >::Scalar >, typename DenseBase< ElseDerived >::ConstantReturnType, ElseDerived, Homogeneous< MatrixType, Direction_ > > select (const typename DenseBase< ElseDerived >::Scalar &thenScalar, const DenseBase< ElseDerived > &elseMatrix) const
 
RealScalar lpNorm () const
 
EIGEN_DEVICE_FUNC const Replicate< Homogeneous< MatrixType, Direction_ >, RowFactor, ColFactor > replicate () const
 
EIGEN_DEVICE_FUNC const Replicate< Homogeneous< MatrixType, Direction_ >, Dynamic, Dynamic > replicate (Index rowFactor, Index colFactor) const
 
EIGEN_DEVICE_FUNC ReverseReturnType reverse ()
 
EIGEN_DEVICE_FUNC ConstReverseReturnType reverse () const
 
EIGEN_DEVICE_FUNC void reverseInPlace ()
 
iterator begin ()
 
const_iterator begin () const
 
const_iterator cbegin () const
 
iterator end ()
 
const_iterator end () const
 
const_iterator cend () const
 
EIGEN_DEVICE_FUNC void evalTo (Dest &) const
 

Protected Attributes

MatrixType::Nested m_matrix
 

Friends

template<typename Lhs >
EIGEN_DEVICE_FUNC const Product< Lhs, Homogeneousoperator* (const MatrixBase< Lhs > &lhs, const Homogeneous &rhs)
 
template<typename Scalar , int Dim, int Mode, int Options>
EIGEN_DEVICE_FUNC const Product< Transform< Scalar, Dim, Mode, Options >, Homogeneousoperator* (const Transform< Scalar, Dim, Mode, Options > &lhs, const Homogeneous &rhs)
 

Additional Inherited Members

- Static Public Member Functions inherited from Eigen::MatrixBase< Homogeneous< MatrixType, Direction_ > >
static EIGEN_DEVICE_FUNC const IdentityReturnType Identity ()
 
static EIGEN_DEVICE_FUNC const IdentityReturnType Identity (Index rows, Index cols)
 
static EIGEN_DEVICE_FUNC const BasisReturnType Unit (Index size, Index i)
 
static EIGEN_DEVICE_FUNC const BasisReturnType Unit (Index i)
 
static EIGEN_DEVICE_FUNC const BasisReturnType UnitX ()
 
static EIGEN_DEVICE_FUNC const BasisReturnType UnitY ()
 
static EIGEN_DEVICE_FUNC const BasisReturnType UnitZ ()
 
static EIGEN_DEVICE_FUNC const BasisReturnType UnitW ()
 
- Static Public Member Functions inherited from Eigen::DenseBase< Homogeneous< MatrixType, Direction_ > >
static EIGEN_DEVICE_FUNC const ConstantReturnType Constant (Index rows, Index cols, const Scalar &value)
 
static EIGEN_DEVICE_FUNC const ConstantReturnType Constant (Index size, const Scalar &value)
 
static EIGEN_DEVICE_FUNC const ConstantReturnType Constant (const Scalar &value)
 
EIGEN_DEPRECATED static EIGEN_DEVICE_FUNC const RandomAccessLinSpacedReturnType LinSpaced (Sequential_t, Index size, const Scalar &low, const Scalar &high)
 
EIGEN_DEPRECATED static EIGEN_DEVICE_FUNC const RandomAccessLinSpacedReturnType LinSpaced (Sequential_t, const Scalar &low, const Scalar &high)
 
static EIGEN_DEVICE_FUNC const RandomAccessLinSpacedReturnType LinSpaced (Index size, const Scalar &low, const Scalar &high)
 Sets a linearly spaced vector. More...
 
static EIGEN_DEVICE_FUNC const RandomAccessLinSpacedReturnType LinSpaced (const Scalar &low, const Scalar &high)
 
static EIGEN_DEVICE_FUNC const RandomAccessEqualSpacedReturnType EqualSpaced (Index size, const Scalar &low, const Scalar &step)
 
static EIGEN_DEVICE_FUNC const RandomAccessEqualSpacedReturnType EqualSpaced (const Scalar &low, const Scalar &step)
 
static EIGEN_DEVICE_FUNC const CwiseNullaryOp< CustomNullaryOp, PlainObjectNullaryExpr (Index rows, Index cols, const CustomNullaryOp &func)
 
static EIGEN_DEVICE_FUNC const CwiseNullaryOp< CustomNullaryOp, PlainObjectNullaryExpr (Index size, const CustomNullaryOp &func)
 
static EIGEN_DEVICE_FUNC const CwiseNullaryOp< CustomNullaryOp, PlainObjectNullaryExpr (const CustomNullaryOp &func)
 
static EIGEN_DEVICE_FUNC const ZeroReturnType Zero (Index rows, Index cols)
 
static EIGEN_DEVICE_FUNC const ZeroReturnType Zero (Index size)
 
static EIGEN_DEVICE_FUNC const ZeroReturnType Zero ()
 
static EIGEN_DEVICE_FUNC const ConstantReturnType Ones (Index rows, Index cols)
 
static EIGEN_DEVICE_FUNC const ConstantReturnType Ones (Index size)
 
static EIGEN_DEVICE_FUNC const ConstantReturnType Ones ()
 
static const RandomReturnType Random (Index rows, Index cols)
 
static const RandomReturnType Random (Index size)
 
static const RandomReturnType Random ()
 
- Public Attributes inherited from Eigen::DenseBase< Homogeneous< MatrixType, Direction_ > >
EIGEN_DEPRECATED typedef CwiseNullaryOp< internal::linspaced_op< Scalar >, PlainObjectSequentialLinSpacedReturnType
 
- Protected Member Functions inherited from Eigen::MatrixBase< Homogeneous< MatrixType, Direction_ > >
Homogeneous< MatrixType, Direction_ > & operator+= (const ArrayBase< OtherDerived > &)
 
Homogeneous< MatrixType, Direction_ > & operator-= (const ArrayBase< OtherDerived > &)
 
- Protected Member Functions inherited from Eigen::DenseBase< Homogeneous< MatrixType, Direction_ > >
constexpr EIGEN_DEVICE_FUNC DenseBase ()=default
 

Detailed Description

template<typename MatrixType, int Direction_>
class Eigen::Homogeneous< MatrixType, Direction_ >

Expression of one (or a set of) homogeneous vector(s)

\geometry_module

Parameters
MatrixTypethe type of the object in which we are making homogeneous

This class represents an expression of one (or a set of) homogeneous vector(s). It is the return type of MatrixBase::homogeneous() and most of the time this is the only way it is used.

See also
MatrixBase::homogeneous()

Member Typedef Documentation

◆ Base

template<typename MatrixType , int Direction_>
typedef MatrixBase<Homogeneous> Eigen::Homogeneous< MatrixType, Direction_ >::Base

◆ NestedExpression

template<typename MatrixType , int Direction_>
typedef MatrixType Eigen::Homogeneous< MatrixType, Direction_ >::NestedExpression

Member Enumeration Documentation

◆ anonymous enum

template<typename MatrixType , int Direction_>
anonymous enum
Enumerator
Direction 
65 { Direction = Direction_ };
Direction
An enum that indicates the direction in Cartesian coordinates.
Definition: GeneralDefine.h:56

Constructor & Destructor Documentation

◆ Homogeneous()

template<typename MatrixType , int Direction_>
EIGEN_DEVICE_FUNC Eigen::Homogeneous< MatrixType, Direction_ >::Homogeneous ( const MatrixType matrix)
inlineexplicit
70 : m_matrix(matrix) {}
MatrixType::Nested m_matrix
Definition: Homogeneous.h:108
EIGEN_DEVICE_FUNC MatrixBase< Homogeneous< MatrixType, Direction_ > > & matrix()
Definition: MatrixBase.h:315

Member Function Documentation

◆ cols()

◆ nestedExpression()

◆ operator*()

template<typename MatrixType , int Direction_>
template<typename Rhs >
EIGEN_DEVICE_FUNC const Product<Homogeneous, Rhs> Eigen::Homogeneous< MatrixType, Direction_ >::operator* ( const MatrixBase< Rhs > &  rhs) const
inline
82  {
84  return Product<Homogeneous, Rhs>(*this, rhs.derived());
85  }
#define eigen_assert(x)
Definition: Macros.h:910

References eigen_assert, and Eigen::Horizontal.

◆ redux()

template<typename MatrixType , int Direction_>
template<typename Func >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE internal::result_of<Func(Scalar, Scalar)>::type Eigen::Homogeneous< MatrixType, Direction_ >::redux ( const Func &  func) const
inline
103  {
104  return func(m_matrix.redux(func), Scalar(1));
105  }
SCALAR Scalar
Definition: bench_gemm.cpp:45
func(actual_m, actual_n, a, *lda, actual_b, 1, actual_c, 1, alpha)
Definition: benchGeometry.cpp:21

References func(), and Eigen::Homogeneous< MatrixType, Direction_ >::m_matrix.

◆ rows()

Friends And Related Function Documentation

◆ operator* [1/2]

template<typename MatrixType , int Direction_>
template<typename Lhs >
EIGEN_DEVICE_FUNC const Product<Lhs, Homogeneous> operator* ( const MatrixBase< Lhs > &  lhs,
const Homogeneous< MatrixType, Direction_ > &  rhs 
)
friend
89  {
91  return Product<Lhs, Homogeneous>(lhs.derived(), rhs);
92  }

◆ operator* [2/2]

template<typename MatrixType , int Direction_>
template<typename Scalar , int Dim, int Mode, int Options>
EIGEN_DEVICE_FUNC const Product<Transform<Scalar, Dim, Mode, Options>, Homogeneous> operator* ( const Transform< Scalar, Dim, Mode, Options > &  lhs,
const Homogeneous< MatrixType, Direction_ > &  rhs 
)
friend
96  {
98  return Product<Transform<Scalar, Dim, Mode, Options>, Homogeneous>(lhs, rhs);
99  }
EIGEN_DEVICE_FUNC Homogeneous(const MatrixType &matrix)
Definition: Homogeneous.h:70

Member Data Documentation

◆ m_matrix


The documentation for this class was generated from the following files: