Please, help us to better know about our user community by answering the following short survey: https://forms.gle/wpyrxWi18ox9Z5ae9
Eigen  3.4.0
Loading...
Searching...
No Matches
Eigen::Homogeneous< MatrixType, _Direction > Class Template Reference

Detailed Description

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

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

This is defined in the Geometry module.

#include <Eigen/Geometry>
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()
Inheritance diagram for Eigen::Homogeneous< MatrixType, _Direction >:

Additional Inherited Members

Public Types inherited from Eigen::DenseBase< Homogeneous< MatrixType, _Direction > >
typedef random_access_iterator_type const_iterator
typedef random_access_iterator_type iterator
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 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 internal::conditional< internal::is_same< typenameinternal::traits< Homogeneous< MatrixType, _Direction > >::XprKind, MatrixXpr >::value, PlainMatrix, PlainArray >::type PlainObject
 The plain matrix or array type corresponding to this expression.
typedef internal::traits< Homogeneous< MatrixType, _Direction > >::Scalar Scalar
typedef internal::traits< Homogeneous< MatrixType, _Direction > >::StorageIndex StorageIndex
 The type used to store indices.
typedef Scalar value_type
Public Member Functions inherited from Eigen::MatrixBase< Homogeneous< MatrixType, _Direction > >
const MatrixFunctionReturnValue< Homogeneous< MatrixType, _Direction > > acosh () const
 This function requires the unsupported MatrixFunctions module. To compute the coefficient-wise inverse hyperbolic cosine use ArrayBase::acosh .
const AdjointReturnType adjoint () const
void adjointInPlace ()
void applyHouseholderOnTheLeft (const EssentialPart &essential, const Scalar &tau, Scalar *workspace)
void applyHouseholderOnTheRight (const EssentialPart &essential, const Scalar &tau, Scalar *workspace)
void applyOnTheLeft (const EigenBase< OtherDerived > &other)
void applyOnTheRight (const EigenBase< OtherDerived > &other)
ArrayWrapper< Homogeneous< MatrixType, _Direction > > array ()
const DiagonalWrapper< const Homogeneous< MatrixType, _Direction > > asDiagonal () const
const MatrixFunctionReturnValue< Homogeneous< MatrixType, _Direction > > asinh () const
 This function requires the unsupported MatrixFunctions module. To compute the coefficient-wise inverse hyperbolic sine use ArrayBase::asinh .
const MatrixFunctionReturnValue< Homogeneous< MatrixType, _Direction > > atanh () const
 This function requires the unsupported MatrixFunctions module. To compute the coefficient-wise inverse hyperbolic cosine use ArrayBase::atanh .
BDCSVD< PlainObjectbdcSvd (unsigned int computationOptions=0) const
const CwiseBinaryOp< CustomBinaryOp, const Homogeneous< MatrixType, _Direction >, const OtherDerived > binaryExpr (const Eigen::MatrixBase< OtherDerived > &other, const CustomBinaryOp &func=CustomBinaryOp()) const
RealScalar blueNorm () const
const ColPivHouseholderQR< PlainObjectcolPivHouseholderQr () const
const CompleteOrthogonalDecomposition< PlainObjectcompleteOrthogonalDecomposition () 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
const MatrixFunctionReturnValue< Homogeneous< MatrixType, _Direction > > cos () const
 This function requires the unsupported MatrixFunctions module. To compute the coefficient-wise cosine use ArrayBase::cos .
const MatrixFunctionReturnValue< Homogeneous< MatrixType, _Direction > > cosh () const
 This function requires the unsupported MatrixFunctions module. To compute the coefficient-wise hyperbolic cosine use ArrayBase::cosh .
PlainObject cross (const MatrixBase< OtherDerived > &other) const
PlainObject cross3 (const MatrixBase< OtherDerived > &other) const
const CwiseAbsReturnType cwiseAbs () const
const CwiseAbs2ReturnType cwiseAbs2 () const
const CwiseArgReturnType cwiseArg () const
const CwiseBinaryOp< numext::equal_to< Scalar >, const Homogeneous< MatrixType, _Direction >, const OtherDerived > cwiseEqual (const Eigen::MatrixBase< OtherDerived > &other) const
const CwiseInverseReturnType cwiseInverse () const
const CwiseBinaryOp< internal::scalar_max_op< Scalar, Scalar >, const Homogeneous< MatrixType, _Direction >, const OtherDerived > cwiseMax (const Eigen::MatrixBase< OtherDerived > &other) const
const CwiseBinaryOp< internal::scalar_min_op< Scalar, Scalar >, const Homogeneous< MatrixType, _Direction >, const OtherDerived > cwiseMin (const Eigen::MatrixBase< OtherDerived > &other) const
const CwiseBinaryOp< numext::not_equal_to< Scalar >, const Homogeneous< MatrixType, _Direction >, const OtherDerived > cwiseNotEqual (const Eigen::MatrixBase< OtherDerived > &other) const
const CwiseBinaryOp< internal::scalar_product_op< Homogeneous< MatrixType, _Direction > ::Scalar, OtherDerived ::Scalar >, const Homogeneous< MatrixType, _Direction >, const OtherDerived > cwiseProduct (const Eigen::MatrixBase< OtherDerived > &other) const
const CwiseBinaryOp< internal::scalar_quotient_op< Scalar >, const Homogeneous< MatrixType, _Direction >, const OtherDerived > cwiseQuotient (const Eigen::MatrixBase< OtherDerived > &other) const
const CwiseSignReturnType cwiseSign () const
const CwiseSqrtReturnType cwiseSqrt () const
Scalar determinant () const
MatrixBase< Homogeneous< MatrixType, _Direction > >::template DiagonalIndexReturnType< Index_ >::Type diagonal ()
MatrixBase< Homogeneous< MatrixType, _Direction > >::template ConstDiagonalIndexReturnType< Index_ >::Type diagonal () const
Index diagonalSize () const
ScalarBinaryOpTraits< typenameinternal::traits< Homogeneous< MatrixType, _Direction > >::Scalar, typenameinternal::traits< OtherDerived >::Scalar >::ReturnType dot (const MatrixBase< OtherDerived > &other) const
EigenvaluesReturnType eigenvalues () const
 Computes the eigenvalues of a matrix.
Matrix< Scalar, 3, 1 > eulerAngles (Index a0, Index a1, Index a2) const
const MatrixExponentialReturnValue< Homogeneous< MatrixType, _Direction > > exp () const
 This function requires the unsupported MatrixFunctions module. To compute the coefficient-wise exponential use ArrayBase::exp .
const Homogeneous< MatrixType, _Direction > & forceAlignedAccess () const
internal::conditional< Enable, ForceAlignedAccess< Homogeneous< MatrixType, _Direction > >, Homogeneous< MatrixType, _Direction > & >::type forceAlignedAccessIf ()
internal::add_const_on_value_type< typenameinternal::conditional< Enable, ForceAlignedAccess< Homogeneous< MatrixType, _Direction > >, Homogeneous< MatrixType, _Direction > & >::type >::type forceAlignedAccessIf () const
const FullPivHouseholderQR< PlainObjectfullPivHouseholderQr () const
const FullPivLU< PlainObjectfullPivLu () const
const HNormalizedReturnType hnormalized () const
 homogeneous normalization
HomogeneousReturnType homogeneous () const
const HouseholderQR< PlainObjecthouseholderQr () const
RealScalar hypotNorm () const
const Inverse< Homogeneous< MatrixType, _Direction > > inverse () const
bool isDiagonal (const RealScalar &prec=NumTraits< Scalar >::dummy_precision()) const
bool isIdentity (const RealScalar &prec=NumTraits< Scalar >::dummy_precision()) const
bool isLowerTriangular (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
bool isUpperTriangular (const RealScalar &prec=NumTraits< Scalar >::dummy_precision()) const
JacobiSVD< PlainObjectjacobiSvd (unsigned int computationOptions=0) const
const Product< Homogeneous< MatrixType, _Direction >, OtherDerived, LazyProduct > lazyProduct (const MatrixBase< OtherDerived > &other) const
const LDLT< PlainObjectldlt () const
const LLT< PlainObjectllt () const
const MatrixLogarithmReturnValue< Homogeneous< MatrixType, _Direction > > log () const
 This function requires the unsupported MatrixFunctions module. To compute the coefficient-wise logarithm use ArrayBase::log .
RealScalar lpNorm () const
const PartialPivLU< PlainObjectlu () const
void makeHouseholder (EssentialPart &essential, Scalar &tau, RealScalar &beta) const
void makeHouseholderInPlace (Scalar &tau, RealScalar &beta)
const MatrixFunctionReturnValue< Homogeneous< MatrixType, _Direction > > matrixFunction (StemFunction f) const
 Helper function for the unsupported MatrixFunctions module.
NoAlias< Homogeneous< MatrixType, _Direction >, Eigen::MatrixBasenoalias ()
RealScalar norm () const
void normalize ()
const PlainObject normalized () const
bool operator!= (const MatrixBase< OtherDerived > &other) const
const CwiseBinaryOp< internal::scalar_boolean_and_op, const Homogeneous< MatrixType, _Direction >, const OtherDerived > operator&& (const Eigen::MatrixBase< OtherDerived > &other) const
const CwiseBinaryOp< internal::scalar_product_op< Scalar, T >, Homogeneous< MatrixType, _Direction >, Constant< T > > operator* (const T &scalar) const
Homogeneous< MatrixType, _Direction > & operator*= (const EigenBase< OtherDerived > &other)
const CwiseBinaryOp< sum< Scalar >, const Homogeneous< MatrixType, _Direction >, const OtherDerived > operator+ (const Eigen::MatrixBase< OtherDerived > &other) const
Homogeneous< MatrixType, _Direction > & operator+= (const MatrixBase< OtherDerived > &other)
const CwiseBinaryOp< difference< Scalar >, const Homogeneous< MatrixType, _Direction >, const OtherDerived > operator- (const Eigen::MatrixBase< OtherDerived > &other) const
Homogeneous< MatrixType, _Direction > & operator-= (const MatrixBase< OtherDerived > &other)
const CwiseBinaryOp< internal::scalar_quotient_op< Scalar, T >, Homogeneous< MatrixType, _Direction >, Constant< T > > operator/ (const T &scalar) const
Homogeneous< MatrixType, _Direction > & operator= (const MatrixBase &other)
bool operator== (const MatrixBase< OtherDerived > &other) const
RealScalar operatorNorm () const
 Computes the L2 operator norm.
const CwiseBinaryOp< internal::scalar_boolean_or_op, const Homogeneous< MatrixType, _Direction >, const OtherDerived > operator|| (const Eigen::MatrixBase< OtherDerived > &other) const
const PartialPivLU< PlainObjectpartialPivLu () const
const MatrixPowerReturnValue< Homogeneous< MatrixType, _Direction > > pow (const RealScalar &p) const
 This function requires the unsupported MatrixFunctions module. To compute the coefficient-wise power to p use ArrayBase::pow .
MatrixBase< Homogeneous< MatrixType, _Direction > >::template SelfAdjointViewReturnType< UpLo >::Type selfadjointView ()
MatrixBase< Homogeneous< MatrixType, _Direction > >::template ConstSelfAdjointViewReturnType< UpLo >::Type selfadjointView () const
Homogeneous< MatrixType, _Direction > & setIdentity ()
Homogeneous< MatrixType, _Direction > & setUnit (Index i)
 Set the coefficients of *this to the i-th unit (basis) vector.
const MatrixFunctionReturnValue< Homogeneous< MatrixType, _Direction > > sin () const
 This function requires the unsupported MatrixFunctions module. To compute the coefficient-wise sine use ArrayBase::sin .
const MatrixFunctionReturnValue< Homogeneous< MatrixType, _Direction > > sinh () const
 This function requires the unsupported MatrixFunctions module. To compute the coefficient-wise hyperbolic sine use ArrayBase::sinh .
const SparseView< Homogeneous< MatrixType, _Direction > > sparseView (const Scalar &m_reference=Scalar(0), const typename NumTraits< Scalar >::Real &m_epsilon=NumTraits< Scalar >::dummy_precision()) const
const MatrixSquareRootReturnValue< Homogeneous< MatrixType, _Direction > > sqrt () const
 This function requires the unsupported MatrixFunctions module. To compute the coefficient-wise square root use ArrayBase::sqrt .
RealScalar squaredNorm () const
RealScalar stableNorm () const
void stableNormalize ()
const PlainObject stableNormalized () const
Scalar trace () const
MatrixBase< Homogeneous< MatrixType, _Direction > >::template TriangularViewReturnType< Mode >::Type triangularView ()
MatrixBase< Homogeneous< MatrixType, _Direction > >::template ConstTriangularViewReturnType< Mode >::Type triangularView () const
PlainObject unitOrthogonal (void) const
Public Member Functions inherited from Eigen::DenseBase< Homogeneous< MatrixType, _Direction > >
bool all () const
bool allFinite () const
bool any () const
iterator begin ()
FixedBlockXpr<...,... >::Type block (Index startRow, Index startCol, NRowsType blockRows, NColsType blockCols)
FixedBlockXpr<...,... >::Type bottomLeftCorner (NRowsType cRows, NColsType cCols)
FixedBlockXpr<...,... >::Type bottomRightCorner (NRowsType cRows, NColsType cCols)
NRowsBlockXpr<... >::Type bottomRows (NRowsType n)
CastXpr< NewType >::Type cast () const
const_iterator cbegin () const
const_iterator cend () const
ColXpr col (Index i)
ConstColwiseReturnType colwise () const
ConjugateReturnType conjugate () const
internal::conditional< Cond, ConjugateReturnType, constDerived & >::type conjugateIf () const
Index count () const
iterator end ()
EvalReturnType eval () const
void fill (const Scalar &value)
EIGEN_DEPRECATED const Homogeneous< MatrixType, _Direction > & flagged () const
const WithFormat< Homogeneous< MatrixType, _Direction > > format (const IOFormat &fmt) const
bool hasNaN () const
FixedSegmentReturnType<... >::Type head (NType n)
const ImagReturnType imag () const
EIGEN_CONSTEXPR Index innerSize () const
InnerVectorReturnType innerVector (Index outer)
InnerVectorsReturnType innerVectors (Index outerStart, Index outerSize)
bool isApprox (const DenseBase< OtherDerived > &other, const RealScalar &prec=NumTraits< Scalar >::dummy_precision()) const
bool isApproxToConstant (const Scalar &value, const RealScalar &prec=NumTraits< Scalar >::dummy_precision()) const
bool isConstant (const Scalar &value, const RealScalar &prec=NumTraits< Scalar >::dummy_precision()) const
bool isMuchSmallerThan (const typename NumTraits< Scalar >::Real &other, const RealScalar &prec) const
bool isOnes (const RealScalar &prec=NumTraits< Scalar >::dummy_precision()) const
bool isZero (const RealScalar &prec=NumTraits< Scalar >::dummy_precision()) const
NColsBlockXpr<... >::Type leftCols (NColsType n)
internal::traits< Homogeneous< MatrixType, _Direction > >::Scalar maxCoeff () const
Scalar mean () const
NColsBlockXpr<... >::Type middleCols (Index startCol, NColsType numCols)
NRowsBlockXpr<... >::Type middleRows (Index startRow, NRowsType n)
internal::traits< Homogeneous< MatrixType, _Direction > >::Scalar minCoeff () const
const NestByValue< Homogeneous< MatrixType, _Direction > > nestByValue () const
EIGEN_CONSTEXPR Index nonZeros () const
IndexedView_or_Block operator() (const RowIndices &rowIndices, const ColIndices &colIndices)
const NegativeReturnType operator- () const
Homogeneous< MatrixType, _Direction > & operator= (const DenseBase< OtherDerived > &other)
EIGEN_CONSTEXPR Index outerSize () const
Scalar prod () const
RealReturnType real () const
internal::traits< Homogeneous< MatrixType, _Direction > >::Scalar redux (const Func &func) const
const Replicate< Homogeneous< MatrixType, _Direction >, RowFactor, ColFactor > replicate () const
Reshaped< Homogeneous< MatrixType, _Direction >,... > reshaped (NRowsType nRows, NColsType nCols)
void resize (Index newSize)
ReverseReturnType reverse ()
void reverseInPlace ()
NColsBlockXpr<... >::Type rightCols (NColsType n)
RowXpr row (Index i)
ConstRowwiseReturnType rowwise () const
FixedSegmentReturnType<... >::Type segment (Index start, NType n)
const Select< Homogeneous< MatrixType, _Direction >, ThenDerived, ElseDerived > select (const DenseBase< ThenDerived > &thenMatrix, const DenseBase< ElseDerived > &elseMatrix) const
Homogeneous< MatrixType, _Direction > & setConstant (const Scalar &value)
Homogeneous< MatrixType, _Direction > & setLinSpaced (Index size, const Scalar &low, const Scalar &high)
 Sets a linearly spaced vector.
Homogeneous< MatrixType, _Direction > & setOnes ()
Homogeneous< MatrixType, _Direction > & setRandom ()
Homogeneous< MatrixType, _Direction > & setZero ()
internal::conditional< Direction==Vertical, ColXpr, RowXpr >::type subVector (Index i)
EIGEN_CONSTEXPR Index subVectors () const
Scalar sum () const
void swap (const DenseBase< OtherDerived > &other)
FixedSegmentReturnType<... >::Type tail (NType n)
FixedBlockXpr<...,... >::Type topLeftCorner (NRowsType cRows, NColsType cCols)
FixedBlockXpr<...,... >::Type topRightCorner (NRowsType cRows, NColsType cCols)
NRowsBlockXpr<... >::Type topRows (NRowsType n)
TransposeReturnType transpose ()
void transposeInPlace ()
const CwiseUnaryOp< CustomUnaryOp, const Homogeneous< MatrixType, _Direction > > unaryExpr (const CustomUnaryOp &func=CustomUnaryOp()) const
 Apply a unary operator coefficient-wise.
const CwiseUnaryView< CustomViewOp, const Homogeneous< MatrixType, _Direction > > unaryViewExpr (const CustomViewOp &func=CustomViewOp()) const
CoeffReturnType value () const
void visit (Visitor &func) const
Static Public Member Functions inherited from Eigen::MatrixBase< Homogeneous< MatrixType, _Direction > >
static const IdentityReturnType Identity ()
static const BasisReturnType Unit (Index size, Index i)
static const BasisReturnType UnitW ()
static const BasisReturnType UnitX ()
static const BasisReturnType UnitY ()
static const BasisReturnType UnitZ ()
Static Public Member Functions inherited from Eigen::DenseBase< Homogeneous< MatrixType, _Direction > >
static const ConstantReturnType Constant (Index rows, Index cols, const Scalar &value)
static EIGEN_DEPRECATED const RandomAccessLinSpacedReturnType LinSpaced (Sequential_t, Index size, const Scalar &low, const Scalar &high)
static const CwiseNullaryOp< CustomNullaryOp, PlainObjectNullaryExpr (Index rows, Index cols, const CustomNullaryOp &func)
static const ConstantReturnType Ones (Index rows, Index cols)
static const RandomReturnType Random (Index rows, Index cols)
static const ConstantReturnType Zero (Index rows, Index cols)
Protected Member Functions inherited from Eigen::DenseBase< Homogeneous< MatrixType, _Direction > >
 DenseBase ()

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