Eigen::AlignedVector3< Scalar_ > Class Template Reference

A vectorization friendly 3D vector. More...

+ Inheritance diagram for Eigen::AlignedVector3< Scalar_ >:

Classes

struct  generic_assign_selector
 
struct  generic_assign_selector< XprType, 3 >
 
struct  generic_assign_selector< XprType, 4 >
 

Public Types

typedef MatrixBase< AlignedVector3< Scalar_ > > Base
 
- Public Types inherited from Eigen::MatrixBase< AlignedVector3< Scalar_ > >
typedef Diagonal< const Derived > ConstDiagonalReturnType
 
typedef Block< const Derived, internal::traits< Derived >::ColsAtCompileTime==1 ? SizeMinusOne :1, internal::traits< Derived >::ColsAtCompileTime==1 ? 1 :SizeMinusOneConstStartMinusOne
 
typedef Diagonal< Derived > DiagonalReturnType
 
typedef Homogeneous< Derived, HomogeneousReturnTypeDirectionHomogeneousReturnType
 
typedef Base::PlainObject PlainObject
 
typedef internal::stem_function< Scalar >::type StemFunction
 
- Public Types inherited from Eigen::DenseBase< class >
typedef DenseCoeffsBase< Derived, internal::accessors_level< Derived >::valueBase
 
typedef Base::CoeffReturnType CoeffReturnType
 
typedef VectorwiseOp< Derived, VerticalColwiseReturnType
 
typedef random_access_iterator_type const_iterator
 
typedef const VectorwiseOp< const Derived, VerticalConstColwiseReturnType
 
typedef const Reverse< const Derived, BothDirectionsConstReverseReturnType
 
typedef const VectorwiseOp< const Derived, HorizontalConstRowwiseReturnType
 
typedef Transpose< const Derived > ConstTransposeReturnType
 
typedef internal::add_const_on_value_type_t< typename internal::eval< Derived >::type > EvalReturnType
 
typedef random_access_iterator_type iterator
 
typedef internal::find_best_packet< Scalar, SizeAtCompileTime >::type PacketScalar
 
typedef Array< typename internal::traits< Derived >::Scalar, internal::traits< Derived >::RowsAtCompileTime, internal::traits< Derived >::ColsAtCompileTime, AutoAlign|(internal::traits< Derived >::Flags &RowMajorBit ? RowMajor :ColMajor), internal::traits< Derived >::MaxRowsAtCompileTime, internal::traits< Derived >::MaxColsAtCompileTimePlainArray
 
typedef Matrix< typename internal::traits< Derived >::Scalar, internal::traits< Derived >::RowsAtCompileTime, internal::traits< Derived >::ColsAtCompileTime, AutoAlign|(internal::traits< Derived >::Flags &RowMajorBit ? RowMajor :ColMajor), internal::traits< Derived >::MaxRowsAtCompileTime, internal::traits< Derived >::MaxColsAtCompileTimePlainMatrix
 
typedef std::conditional_t< internal::is_same< typename internal::traits< Derived >::XprKind, MatrixXpr >::value, PlainMatrix, PlainArrayPlainObject
 
typedef CwiseNullaryOp< internal::scalar_random_op< Scalar >, PlainObjectRandomReturnType
 
typedef NumTraits< Scalar >::Real RealScalar
 
typedef Reverse< Derived, BothDirectionsReverseReturnType
 
typedef VectorwiseOp< Derived, HorizontalRowwiseReturnType
 
typedef internal::traits< Derived >::Scalar Scalar
 
typedef internal::traits< Derived >::StorageIndex StorageIndex
 
typedef internal::traits< Derived >::StorageKind StorageKind
 
typedef Transpose< Derived > TransposeReturnType
 
typedef Scalar value_type
 
- Public Types inherited from Eigen::DenseCoeffsBase< Derived, DirectWriteAccessors >
typedef DenseCoeffsBase< Derived, WriteAccessorsBase
 
typedef NumTraits< Scalar >::Real RealScalar
 
typedef internal::traits< Derived >::Scalar Scalar
 
- Public Types inherited from Eigen::DenseCoeffsBase< Derived, WriteAccessors >
typedef DenseCoeffsBase< Derived, ReadOnlyAccessorsBase
 
typedef internal::packet_traits< Scalar >::type PacketScalar
 
typedef NumTraits< Scalar >::Real RealScalar
 
typedef internal::traits< Derived >::Scalar Scalar
 
typedef internal::traits< Derived >::StorageKind StorageKind
 
- Public Types inherited from Eigen::DenseCoeffsBase< Derived, ReadOnlyAccessors >
typedef EigenBase< Derived > Base
 
typedef std::conditional_t< bool(internal::traits< Derived >::Flags &LvalueBit), const Scalar &, std::conditional_t< internal::is_arithmetic< Scalar >::value, Scalar, const Scalar > > CoeffReturnType
 
typedef internal::add_const_on_value_type_if_arithmetic< typename internal::packet_traits< Scalar >::type >::type PacketReturnType
 
typedef internal::packet_traits< Scalar >::type PacketScalar
 
typedef internal::traits< Derived >::Scalar Scalar
 
typedef internal::traits< Derived >::StorageKind StorageKind
 
- Public Types inherited from Eigen::EigenBase< class >
typedef Eigen::Index Index
 
typedef internal::traits< Derived >::StorageKind StorageKind
 

Public Member Functions

 AlignedVector3 ()
 
 AlignedVector3 (const AlignedVector3 &other)
 
template<typename Derived >
 AlignedVector3 (const MatrixBase< Derived > &other)
 
 AlignedVector3 (const Scalar &x, const Scalar &y, const Scalar &z)
 
const Scalarcoeff (Index index) const
 
const Scalarcoeff (Index row, Index col) const
 
ScalarcoeffRef (Index index)
 
ScalarcoeffRef (Index row, Index col)
 
CoeffTypecoeffs ()
 
const CoeffTypecoeffs () const
 
Index cols () const
 
AlignedVector3 cross (const AlignedVector3 &other) const
 
Scalardata ()
 
const Scalardata () const
 
Scalar dot (const AlignedVector3 &other) const
 
Index innerStride () const
 
template<typename Derived >
bool isApprox (const MatrixBase< Derived > &other, const RealScalar &eps=NumTraits< Scalar >::dummy_precision()) const
 
Scalar norm () const
 
void normalize ()
 
AlignedVector3 normalized () const
 
AlignedVector3 operator* (const Scalar &s) const
 
AlignedVector3operator*= (const Scalar &s)
 
AlignedVector3 operator+ (const AlignedVector3 &other) const
 
AlignedVector3operator+= (const AlignedVector3 &other)
 
AlignedVector3 operator- () const
 
AlignedVector3 operator- (const AlignedVector3 &other) const
 
AlignedVector3 operator-= (const AlignedVector3 &other)
 
AlignedVector3 operator/ (const Scalar &s) const
 
AlignedVector3operator/= (const Scalar &s)
 
AlignedVector3operator= (const AlignedVector3 &other)
 
template<typename Derived >
AlignedVector3operator= (const MatrixBase< Derived > &other)
 
Index outerStride () const
 
Index rows () const
 
Scalar squaredNorm () const
 
Scalar sum () const
 
- Public Member Functions inherited from Eigen::MatrixBase< AlignedVector3< Scalar_ > >
const MatrixFunctionReturnValue< Derived > acosh () const
 
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 applyOnTheLeft (Index p, Index q, const JacobiRotation< OtherScalar > &j)
 
void applyOnTheRight (const EigenBase< OtherDerived > &other)
 
void applyOnTheRight (Index p, Index q, const JacobiRotation< OtherScalar > &j)
 
ArrayWrapper< Derived > array ()
 
const ArrayWrapper< const Derived > array () const
 
const DiagonalWrapper< const Derived > asDiagonal () const
 
const MatrixFunctionReturnValue< Derived > asinh () const
 
const PermutationWrapper< const Derived > asPermutation () const
 
const SkewSymmetricWrapper< const Derived > asSkewSymmetric () const
 
const MatrixFunctionReturnValue< Derived > atanh () const
 
BDCSVD< PlainObject, Options > bdcSvd () const
 
BDCSVD< typename MatrixBase< Derived >::PlainObject, Options > bdcSvd () const
 
EIGEN_DEPRECATED BDCSVD< PlainObject, Options > bdcSvd (unsigned int computationOptions) const
 
BDCSVD< typename MatrixBase< Derived >::PlainObject, Options > bdcSvd (unsigned int computationOptions) const
 
RealScalar blueNorm () const
 
Matrix< Scalar, 3, 1 > canonicalEulerAngles (Index a0, Index a1, Index a2) const
 
const ColPivHouseholderQR< PlainObject, PermutationIndex > colPivHouseholderQr () const
 
const ColPivHouseholderQR< typename MatrixBase< Derived >::PlainObject, PermutationIndexType > colPivHouseholderQr () const
 
const CompleteOrthogonalDecomposition< PlainObject, PermutationIndex > completeOrthogonalDecomposition () const
 
const CompleteOrthogonalDecomposition< typename MatrixBase< Derived >::PlainObject, PermutationIndex > completeOrthogonalDecomposition () 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< Derived > cos () const
 
const MatrixFunctionReturnValue< Derived > cosh () const
 
std::conditional_t< SizeAtCompileTime==2, Scalar, PlainObjectcross (const MatrixBase< OtherDerived > &other) const
 
internal::cross_impl< Derived, OtherDerived >::return_type cross (const MatrixBase< OtherDerived > &other) const
 
PlainObject cross3 (const MatrixBase< OtherDerived > &other) const
 
const SparseMatrixBase< OtherDerived >::template CwiseProductDenseReturnType< Derived >::Type cwiseProduct (const SparseMatrixBase< OtherDerived > &other) const
 
Scalar determinant () const
 
DiagonalReturnType diagonal ()
 
Diagonal< Derived, Indexdiagonal ()
 
const ConstDiagonalReturnType diagonal () const
 
const Diagonal< const Derived, Indexdiagonal () const
 
Diagonal< Derived, DynamicIndexdiagonal (Index index)
 
const Diagonal< const Derived, DynamicIndexdiagonal (Index index) const
 
Index diagonalSize () const
 
ScalarBinaryOpTraits< typename internal::traits< Derived >::Scalar, typename internal::traits< OtherDerived >::Scalar >::ReturnType dot (const MatrixBase< OtherDerived > &other) const
 
typedef EIGEN_EXPR_BINARYOP_SCALAR_RETURN_TYPE (ConstStartMinusOne, Scalar, quotient) HNormalizedReturnType
 
EigenvaluesReturnType eigenvalues () const
 
EIGEN_DEPRECATED Matrix< Scalar, 3, 1 > eulerAngles (Index a0, Index a1, Index a2) const
 
const MatrixExponentialReturnValue< Derived > exp () const
 
Derived & forceAlignedAccess ()
 
const Derived & forceAlignedAccess () const
 
std::conditional_t< Enable, ForceAlignedAccess< Derived >, Derived & > forceAlignedAccessIf ()
 
Derived & forceAlignedAccessIf ()
 
add_const_on_value_type_t< std::conditional_t< Enable, ForceAlignedAccess< Derived >, Derived & > > forceAlignedAccessIf () const
 
const Derived & forceAlignedAccessIf () const
 
const FullPivHouseholderQR< PlainObject, PermutationIndex > fullPivHouseholderQr () const
 
const FullPivHouseholderQR< typename MatrixBase< Derived >::PlainObject, PermutationIndex > fullPivHouseholderQr () const
 
const FullPivLU< PlainObject, PermutationIndex > fullPivLu () const
 
const FullPivLU< typename MatrixBase< Derived >::PlainObject, PermutationIndex > fullPivLu () const
 
const HNormalizedReturnType hnormalized () const
 
HomogeneousReturnType homogeneous () const
 
const HouseholderQR< PlainObjecthouseholderQr () const
 
RealScalar hypotNorm () const
 
const Inverse< Derived > 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 isSkewSymmetric (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< PlainObject, Options > jacobiSvd () const
 
JacobiSVD< typename MatrixBase< Derived >::PlainObject, Options > jacobiSvd () const
 
EIGEN_DEPRECATED JacobiSVD< PlainObject, Options > jacobiSvd (unsigned int computationOptions) const
 
JacobiSVD< typename MatrixBase< Derived >::PlainObject, Options > jacobiSvd (unsigned int computationOptions) const
 
const Product< Derived, OtherDerived, LazyProductlazyProduct (const MatrixBase< OtherDerived > &other) const
 
const LDLT< PlainObjectldlt () const
 
const LLT< PlainObjectllt () const
 
const MatrixLogarithmReturnValue< Derived > log () const
 
RealScalar lpNorm () const
 
const PartialPivLU< typename MatrixBase< Derived >::PlainObject, PermutationIndex > lu () const
 
const PartialPivLU< PlainObject, PermutationIndex > lu () const
 
void makeHouseholder (EssentialPart &essential, Scalar &tau, RealScalar &beta) const
 
void makeHouseholderInPlace (Scalar &tau, RealScalar &beta)
 
MatrixBase< Derived > & matrix ()
 
const MatrixBase< Derived > & matrix () const
 
const MatrixFunctionReturnValue< Derived > matrixFunction (StemFunction f) const
 
NoAlias< Derived, Eigen::MatrixBasenoalias ()
 
RealScalar norm () const
 
void normalize ()
 
const PlainObject normalized () const
 
bool operator!= (const MatrixBase< OtherDerived > &other) const
 
const Product< Derived, DiagonalDerived, LazyProductoperator* (const DiagonalBase< DiagonalDerived > &diagonal) const
 
const Product< Derived, OtherDerived > operator* (const MatrixBase< OtherDerived > &other) const
 
const Product< Derived, SkewDerived, LazyProductoperator* (const SkewSymmetricBase< SkewDerived > &skew) const
 
Derived & operator*= (const EigenBase< OtherDerived > &other)
 
Derived & operator+= (const MatrixBase< OtherDerived > &other)
 
Derived & operator-= (const MatrixBase< OtherDerived > &other)
 
Derived & operator= (const DenseBase< OtherDerived > &other)
 
Derived & operator= (const EigenBase< OtherDerived > &other)
 
Derived & operator= (const MatrixBase &other)
 
Derived & operator= (const ReturnByValue< OtherDerived > &other)
 
bool operator== (const MatrixBase< OtherDerived > &other) const
 
RealScalar operatorNorm () const
 
const PartialPivLU< typename MatrixBase< Derived >::PlainObject, PermutationIndex > partialPivLu () const
 
const PartialPivLU< PlainObject, PermutationIndex > partialPivLu () const
 
const MatrixPowerReturnValue< Derived > pow (const RealScalar &p) const
 
const MatrixComplexPowerReturnValue< Derived > pow (const std::complex< RealScalar > &p) const
 
SelfAdjointViewReturnType< UpLo >::Type selfadjointView ()
 
MatrixBase< Derived >::template SelfAdjointViewReturnType< UpLo >::Type selfadjointView ()
 
MatrixBase< Derived >::template ConstSelfAdjointViewReturnType< UpLo >::Type selfadjointView () const
 
ConstSelfAdjointViewReturnType< UpLo >::Type selfadjointView () const
 
Derived & setIdentity ()
 
Derived & setIdentity (Index rows, Index cols)
 
Derived & setUnit (Index i)
 
Derived & setUnit (Index newSize, Index i)
 
const MatrixFunctionReturnValue< Derived > sin () const
 
const MatrixFunctionReturnValue< Derived > sinh () const
 
const SparseView< Derived > sparseView (const Scalar &m_reference=Scalar(0), const typename NumTraits< Scalar >::Real &m_epsilon=NumTraits< Scalar >::dummy_precision()) const
 
const MatrixSquareRootReturnValue< Derived > sqrt () const
 
RealScalar squaredNorm () const
 
RealScalar stableNorm () const
 
void stableNormalize ()
 
const PlainObject stableNormalized () const
 
Scalar trace () const
 
TriangularViewReturnType< Mode >::Type triangularView ()
 
MatrixBase< Derived >::template TriangularViewReturnType< Mode >::Type triangularView ()
 
MatrixBase< Derived >::template ConstTriangularViewReturnType< Mode >::Type triangularView () const
 
ConstTriangularViewReturnType< Mode >::Type triangularView () const
 
PlainObject unitOrthogonal (void) const
 
- Public Member Functions inherited from Eigen::DenseBase< class >
bool all () const
 
bool allFinite () const
 
bool any () const
 
iterator begin ()
 
const_iterator begin () const
 
const_iterator cbegin () const
 
const_iterator cend () const
 
ColwiseReturnType colwise ()
 
ConstColwiseReturnType colwise () const
 
Index count () const
 
iterator end ()
 
const_iterator end () const
 
EvalReturnType eval () const
 
void evalTo (Dest &) const
 
void fill (const Scalar &value)
 
EIGEN_DEPRECATED const Derived & flagged () const
 
ForceAlignedAccess< Derived > forceAlignedAccess ()
 
const ForceAlignedAccess< Derived > forceAlignedAccess () const
 
std::conditional_t< Enable, ForceAlignedAccess< Derived >, Derived & > forceAlignedAccessIf ()
 
const std::conditional_t< Enable, ForceAlignedAccess< Derived >, Derived & > forceAlignedAccessIf () const
 
const WithFormat< Derived > format (const IOFormat &fmt) const
 
bool hasNaN () const
 
EIGEN_CONSTEXPR Index innerSize () const
 
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 DenseBase< OtherDerived > &other, const RealScalar &prec=NumTraits< Scalar >::dummy_precision()) const
 
bool isMuchSmallerThan (const RealScalar &other, 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
 
Derived & lazyAssign (const DenseBase< OtherDerived > &other)
 
EIGEN_DEPRECATED Derived & lazyAssign (const DenseBase< OtherDerived > &other)
 
RealScalar lpNorm () const
 
internal::traits< Derived >::Scalar maxCoeff () const
 
internal::traits< Derived >::Scalar maxCoeff () const
 
internal::traits< Derived >::Scalar maxCoeff (IndexType *index) const
 
internal::traits< Derived >::Scalar maxCoeff (IndexType *index) const
 
internal::traits< Derived >::Scalar maxCoeff (IndexType *row, IndexType *col) const
 
internal::traits< Derived >::Scalar maxCoeff (IndexType *row, IndexType *col) const
 
Scalar mean () const
 
internal::traits< Derived >::Scalar minCoeff () const
 
internal::traits< Derived >::Scalar minCoeff () const
 
internal::traits< Derived >::Scalar minCoeff (IndexType *index) const
 
internal::traits< Derived >::Scalar minCoeff (IndexType *index) const
 
internal::traits< Derived >::Scalar minCoeff (IndexType *row, IndexType *col) const
 
internal::traits< Derived >::Scalar minCoeff (IndexType *row, IndexType *col) const
 
const NestByValue< Derived > nestByValue () const
 
Derived & operator*= (const Scalar &other)
 
Derived & operator+= (const EigenBase< OtherDerived > &other)
 
Derived & operator-= (const EigenBase< OtherDerived > &other)
 
Derived & operator/= (const Scalar &other)
 
CommaInitializer< Derived > operator<< (const DenseBase< OtherDerived > &other)
 
CommaInitializer< Derived > operator<< (const Scalar &s)
 
std::ostream & operator<< (std::ostream &s, const DenseBase< Derived > &m)
 
Derived & operator= (const DenseBase &other)
 
Derived & operator= (const DenseBase< OtherDerived > &other)
 
Derived & operator= (const EigenBase< OtherDerived > &other)
 
Derived & operator= (const ReturnByValue< OtherDerived > &func)
 
EIGEN_CONSTEXPR Index outerSize () const
 
Scalar prod () const
 
Scalar redux (const BinaryOp &func) const
 
internal::traits< Derived >::Scalar redux (const Func &func) const
 
const Replicate< Derived, RowFactor, ColFactor > replicate () const
 
const Replicate< Derived, Dynamic, Dynamicreplicate (Index rowFactor, Index colFactor) const
 
void resize (Index newSize)
 
void resize (Index rows, Index cols)
 
ReverseReturnType reverse ()
 
ConstReverseReturnType reverse () const
 
void reverseInPlace ()
 
RowwiseReturnType rowwise ()
 
ConstRowwiseReturnType rowwise () const
 
CwiseTernaryOp< internal::scalar_boolean_select_op< typename DenseBase< ThenDerived >::Scalar, typename DenseBase< ElseDerived >::Scalar, Scalar >, ThenDerived, ElseDerived, Derived > select (const DenseBase< ThenDerived > &thenMatrix, const DenseBase< ElseDerived > &elseMatrix) const
 
CwiseTernaryOp< internal::scalar_boolean_select_op< typename DenseBase< ThenDerived >::Scalar, typename DenseBase< ElseDerived >::Scalar, typename DenseBase< Derived >::Scalar >, ThenDerived, ElseDerived, Derived > select (const DenseBase< ThenDerived > &thenMatrix, const DenseBase< ElseDerived > &elseMatrix) const
 
CwiseTernaryOp< internal::scalar_boolean_select_op< typename DenseBase< ThenDerived >::Scalar, typename DenseBase< ThenDerived >::Scalar, typename DenseBase< Derived >::Scalar >, ThenDerived, typename DenseBase< ThenDerived >::ConstantReturnType, Derived > select (const DenseBase< ThenDerived > &thenMatrix, const typename DenseBase< ThenDerived >::Scalar &elseScalar) const
 
CwiseTernaryOp< internal::scalar_boolean_select_op< typename DenseBase< ThenDerived >::Scalar, typename DenseBase< ThenDerived >::Scalar, Scalar >, ThenDerived, typename DenseBase< ThenDerived >::ConstantReturnType, Derived > select (const DenseBase< ThenDerived > &thenMatrix, const typename DenseBase< ThenDerived >::Scalar &elseScalar) const
 
CwiseTernaryOp< internal::scalar_boolean_select_op< typename DenseBase< ElseDerived >::Scalar, typename DenseBase< ElseDerived >::Scalar, Scalar >, typename DenseBase< ElseDerived >::ConstantReturnType, ElseDerived, Derived > select (const typename DenseBase< ElseDerived >::Scalar &thenScalar, const DenseBase< ElseDerived > &elseMatrix) const
 
CwiseTernaryOp< internal::scalar_boolean_select_op< typename DenseBase< ElseDerived >::Scalar, typename DenseBase< ElseDerived >::Scalar, typename DenseBase< Derived >::Scalar >, typename DenseBase< ElseDerived >::ConstantReturnType, ElseDerived, Derived > select (const typename DenseBase< ElseDerived >::Scalar &thenScalar, const DenseBase< ElseDerived > &elseMatrix) const
 
Derived & setConstant (const Scalar &value)
 
Derived & setEqualSpaced (const Scalar &low, const Scalar &step)
 
Derived & setEqualSpaced (Index size, const Scalar &low, const Scalar &step)
 
Derived & setLinSpaced (const Scalar &low, const Scalar &high)
 
Derived & setLinSpaced (Index size, const Scalar &low, const Scalar &high)
 
Derived & setOnes ()
 
Derived & setRandom ()
 
Derived & setZero ()
 
Scalar sum () const
 
void swap (const DenseBase< OtherDerived > &other)
 
void swap (PlainObjectBase< OtherDerived > &other)
 
Scalar trace () const
 
TransposeReturnType transpose ()
 
const ConstTransposeReturnType transpose () const
 
void transposeInPlace ()
 
CoeffReturnType value () const
 
void visit (Visitor &func) const
 
- Public Member Functions inherited from Eigen::DenseCoeffsBase< Derived, DirectWriteAccessors >
EIGEN_CONSTEXPR Index cols () const EIGEN_NOEXCEPT
 
EIGEN_CONSTEXPR Index colStride () const EIGEN_NOEXCEPT
 
Derived & derived ()
 
const Derived & derived () const
 
EIGEN_CONSTEXPR Index innerStride () const EIGEN_NOEXCEPT
 
EIGEN_CONSTEXPR Index outerStride () const EIGEN_NOEXCEPT
 
EIGEN_CONSTEXPR Index rows () const EIGEN_NOEXCEPT
 
EIGEN_CONSTEXPR Index rowStride () const EIGEN_NOEXCEPT
 
EIGEN_CONSTEXPR Index size () const EIGEN_NOEXCEPT
 
EIGEN_CONSTEXPR Index stride () const EIGEN_NOEXCEPT
 
- Public Member Functions inherited from Eigen::DenseCoeffsBase< Derived, WriteAccessors >
ScalarcoeffRef (Index index)
 
ScalarcoeffRef (Index row, Index col)
 
ScalarcoeffRefByOuterInner (Index outer, Index inner)
 
EIGEN_CONSTEXPR Index cols () const EIGEN_NOEXCEPT
 
Derived & derived ()
 
const Derived & derived () const
 
Scalaroperator() (Index index)
 
Scalaroperator() (Index row, Index col)
 
Scalaroperator[] (Index index)
 
EIGEN_CONSTEXPR Index rows () const EIGEN_NOEXCEPT
 
EIGEN_CONSTEXPR Index size () const EIGEN_NOEXCEPT
 
Scalarw ()
 
Scalarx ()
 
Scalary ()
 
Scalarz ()
 
- Public Member Functions inherited from Eigen::DenseCoeffsBase< Derived, ReadOnlyAccessors >
CoeffReturnType coeff (Index index) const
 
CoeffReturnType coeff (Index row, Index col) const
 
CoeffReturnType coeffByOuterInner (Index outer, Index inner) const
 
Index colIndexByOuterInner (Index outer, Index inner) const
 
EIGEN_CONSTEXPR Index cols () const EIGEN_NOEXCEPT
 
Derived & derived ()
 
const Derived & derived () const
 
CoeffReturnType operator() (Index index) const
 
CoeffReturnType operator() (Index row, Index col) const
 
CoeffReturnType operator[] (Index index) const
 
PacketReturnType packet (Index index) const
 
PacketReturnType packet (Index row, Index col) const
 
PacketReturnType packetByOuterInner (Index outer, Index inner) const
 
Index rowIndexByOuterInner (Index outer, Index inner) const
 
EIGEN_CONSTEXPR Index rows () const EIGEN_NOEXCEPT
 
EIGEN_CONSTEXPR Index size () const EIGEN_NOEXCEPT
 
CoeffReturnType w () const
 
CoeffReturnType x () const
 
CoeffReturnType y () const
 
CoeffReturnType z () const
 
- Public Member Functions inherited from Eigen::EigenBase< class >
void addTo (Dest &dst) const
 
void applyThisOnTheLeft (Dest &dst) const
 
void applyThisOnTheRight (Dest &dst) const
 
EIGEN_CONSTEXPR Index cols () const EIGEN_NOEXCEPT
 
Derived & const_cast_derived () const
 
const Derived & const_derived () const
 
Derived & derived ()
 
const Derived & derived () const
 
void evalTo (Dest &dst) const
 
EIGEN_CONSTEXPR Index rows () const EIGEN_NOEXCEPT
 
EIGEN_CONSTEXPR Index size () const EIGEN_NOEXCEPT
 
void subTo (Dest &dst) const
 

Private Types

typedef Matrix< Scalar_, 4, 1 > CoeffType
 

Private Attributes

CoeffType m_coeffs
 

Additional Inherited Members

- Static Public Member Functions inherited from Eigen::MatrixBase< AlignedVector3< Scalar_ > >
static const IdentityReturnType Identity ()
 
static const IdentityReturnType Identity (Index rows, Index cols)
 
static const BasisReturnType Unit (Index i)
 
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< class >
static const ConstantReturnType Constant (const Scalar &value)
 
static const ConstantReturnType Constant (Index rows, Index cols, const Scalar &value)
 
static const ConstantReturnType Constant (Index size, const Scalar &value)
 
static const RandomAccessEqualSpacedReturnType EqualSpaced (const Scalar &low, const Scalar &step)
 
static const RandomAccessEqualSpacedReturnType EqualSpaced (Index size, const Scalar &low, const Scalar &step)
 
static const RandomAccessLinSpacedReturnType LinSpaced (const Scalar &low, const Scalar &high)
 
static const RandomAccessLinSpacedReturnType LinSpaced (Index size, const Scalar &low, const Scalar &high)
 
static EIGEN_DEPRECATED const RandomAccessLinSpacedReturnType LinSpaced (Sequential_t, const Scalar &low, const Scalar &high)
 
static EIGEN_DEPRECATED const RandomAccessLinSpacedReturnType LinSpaced (Sequential_t, Index size, const Scalar &low, const Scalar &high)
 
static const CwiseNullaryOp< CustomNullaryOp, PlainObjectNullaryExpr (const CustomNullaryOp &func)
 
static const CwiseNullaryOp< CustomNullaryOp, PlainObjectNullaryExpr (Index rows, Index cols, const CustomNullaryOp &func)
 
static const CwiseNullaryOp< CustomNullaryOp, PlainObjectNullaryExpr (Index size, const CustomNullaryOp &func)
 
static const ConstantReturnType Ones ()
 
static const ConstantReturnType Ones (Index rows, Index cols)
 
static const ConstantReturnType Ones (Index size)
 
static const RandomReturnType Random ()
 
static const RandomReturnType Random (Index rows, Index cols)
 
static const RandomReturnType Random (Index size)
 
static const ConstantReturnType Zero ()
 
static const ConstantReturnType Zero (Index rows, Index cols)
 
static const ConstantReturnType Zero (Index size)
 
- Public Attributes inherited from Eigen::MatrixBase< AlignedVector3< Scalar_ > >
 HomogeneousReturnTypeDirection
 
 SizeMinusOne
 
- Public Attributes inherited from Eigen::DenseBase< class >
 ColsAtCompileTime
 
 Flags
 
 InnerSizeAtCompileTime
 
 InnerStrideAtCompileTime
 
 IsPlainObjectBase
 
 IsRowMajor
 
 IsVectorAtCompileTime
 
 MaxColsAtCompileTime
 
 MaxRowsAtCompileTime
 
 MaxSizeAtCompileTime
 
 NumDimensions
 
 OuterStrideAtCompileTime
 
 RowsAtCompileTime
 
 SizeAtCompileTime
 
- Protected Member Functions inherited from Eigen::MatrixBase< AlignedVector3< Scalar_ > >
Derived & operator+= (const ArrayBase< OtherDerived > &)
 
Derived & operator-= (const ArrayBase< OtherDerived > &)
 
- Protected Member Functions inherited from Eigen::DenseBase< class >
constexpr DenseBase ()
 
- Protected Member Functions inherited from Eigen::DenseCoeffsBase< Derived, ReadOnlyAccessors >
void coeffRef ()
 
void coeffRefByOuterInner ()
 
void colStride ()
 
void copyCoeff ()
 
void copyCoeffByOuterInner ()
 
void copyPacket ()
 
void copyPacketByOuterInner ()
 
void innerStride ()
 
void outerStride ()
 
void rowStride ()
 
void stride ()
 
void writePacket ()
 
void writePacketByOuterInner ()
 

Detailed Description

template<typename Scalar_>
class Eigen::AlignedVector3< Scalar_ >

A vectorization friendly 3D vector.

This class represents a 3D vector internally using a 4D vector such that vectorization can be seamlessly enabled. Of course, the same result can be achieved by directly using a 4D vector. This class makes this process simpler.

Definition at line 49 of file AlignedVector3.

Member Typedef Documentation

◆ Base

template<typename Scalar_ >
typedef MatrixBase<AlignedVector3<Scalar_> > Eigen::AlignedVector3< Scalar_ >::Base

Definition at line 56 of file AlignedVector3.

◆ CoeffType

template<typename Scalar_ >
typedef Matrix<Scalar_,4,1> Eigen::AlignedVector3< Scalar_ >::CoeffType
private

Definition at line 52 of file AlignedVector3.

Constructor & Destructor Documentation

◆ AlignedVector3() [1/4]

template<typename Scalar_ >
Eigen::AlignedVector3< Scalar_ >::AlignedVector3 ( )
inline

Definition at line 81 of file AlignedVector3.

82  {}

◆ AlignedVector3() [2/4]

template<typename Scalar_ >
Eigen::AlignedVector3< Scalar_ >::AlignedVector3 ( const Scalar x,
const Scalar y,
const Scalar z 
)
inline

◆ AlignedVector3() [3/4]

template<typename Scalar_ >
Eigen::AlignedVector3< Scalar_ >::AlignedVector3 ( const AlignedVector3< Scalar_ > &  other)
inline

Definition at line 88 of file AlignedVector3.

89  : Base(), m_coeffs(other.m_coeffs)
90  {}
MatrixBase< AlignedVector3< Scalar_ > > Base
Definition: AlignedVector3:56

◆ AlignedVector3() [4/4]

template<typename Scalar_ >
template<typename Derived >
Eigen::AlignedVector3< Scalar_ >::AlignedVector3 ( const MatrixBase< Derived > &  other)
inline

Definition at line 113 of file AlignedVector3.

114  {
115  generic_assign_selector<Derived>::run(*this,other.derived());
116  }

Member Function Documentation

◆ coeff() [1/2]

template<typename Scalar_ >
const Scalar& Eigen::AlignedVector3< Scalar_ >::coeff ( Index  index) const
inline

Definition at line 74 of file AlignedVector3.

75  { return m_coeffs.coeff(index); }
const Scalar & coeff(Index index) const

◆ coeff() [2/2]

template<typename Scalar_ >
const Scalar& Eigen::AlignedVector3< Scalar_ >::coeff ( Index  row,
Index  col 
) const
inline

Definition at line 68 of file AlignedVector3.

69  { return m_coeffs.coeff(row, col); }

◆ coeffRef() [1/2]

template<typename Scalar_ >
Scalar& Eigen::AlignedVector3< Scalar_ >::coeffRef ( Index  index)
inline

Definition at line 77 of file AlignedVector3.

78  { return m_coeffs.coeffRef(index);}
constexpr Scalar & coeffRef(Index index)

◆ coeffRef() [2/2]

template<typename Scalar_ >
Scalar& Eigen::AlignedVector3< Scalar_ >::coeffRef ( Index  row,
Index  col 
)
inline

Definition at line 71 of file AlignedVector3.

72  { return m_coeffs.coeffRef(row, col); }

◆ coeffs() [1/2]

template<typename Scalar_ >
CoeffType& Eigen::AlignedVector3< Scalar_ >::coeffs ( )
inline

Definition at line 204 of file AlignedVector3.

204 { return m_coeffs; }

◆ coeffs() [2/2]

template<typename Scalar_ >
const CoeffType& Eigen::AlignedVector3< Scalar_ >::coeffs ( ) const
inline

Definition at line 205 of file AlignedVector3.

205 { return m_coeffs; }

◆ cols()

template<typename Scalar_ >
Index Eigen::AlignedVector3< Scalar_ >::cols ( void  ) const
inline

Definition at line 61 of file AlignedVector3.

61 { return 1; }

◆ cross()

template<typename Scalar_ >
AlignedVector3 Eigen::AlignedVector3< Scalar_ >::cross ( const AlignedVector3< Scalar_ > &  other) const
inline

Definition at line 193 of file AlignedVector3.

194  {
195  return AlignedVector3(m_coeffs.cross3(other.m_coeffs));
196  }

◆ data() [1/2]

template<typename Scalar_ >
Scalar* Eigen::AlignedVector3< Scalar_ >::data ( )
inline

Definition at line 63 of file AlignedVector3.

63 { return m_coeffs.data(); }

◆ data() [2/2]

template<typename Scalar_ >
const Scalar* Eigen::AlignedVector3< Scalar_ >::data ( ) const
inline

Definition at line 64 of file AlignedVector3.

64 { return m_coeffs.data(); }

◆ dot()

template<typename Scalar_ >
Scalar Eigen::AlignedVector3< Scalar_ >::dot ( const AlignedVector3< Scalar_ > &  other) const
inline

Definition at line 158 of file AlignedVector3.

159  {
160  eigen_assert(m_coeffs.w()==Scalar(0));
161  eigen_assert(other.m_coeffs.w()==Scalar(0));
162  return m_coeffs.dot(other.m_coeffs);
163  }
#define eigen_assert(x)

◆ innerStride()

template<typename Scalar_ >
Index Eigen::AlignedVector3< Scalar_ >::innerStride ( ) const
inline

Definition at line 65 of file AlignedVector3.

65 { return 1; }

◆ isApprox()

template<typename Scalar_ >
template<typename Derived >
bool Eigen::AlignedVector3< Scalar_ >::isApprox ( const MatrixBase< Derived > &  other,
const RealScalar eps = NumTraits<Scalar>::dummy_precision() 
) const
inline

Definition at line 199 of file AlignedVector3.

200  {
201  return m_coeffs.template head<3>().isApprox(other,eps);
202  }

◆ norm()

template<typename Scalar_ >
Scalar Eigen::AlignedVector3< Scalar_ >::norm ( ) const
inline

Definition at line 187 of file AlignedVector3.

188  {
189  using std::sqrt;
190  return sqrt(squaredNorm());
191  }
Scalar squaredNorm() const
Definition: AlignedVector3:181
const MatrixSquareRootReturnValue< Derived > sqrt() const
Eigen::AutoDiffScalar< EIGEN_EXPR_BINARYOP_SCALAR_RETURN_TYPE(Eigen::internal::remove_all_t< DerType >, typename Eigen::internal::traits< Eigen::internal::remove_all_t< DerType >>::Scalar, product) > sqrt(const Eigen::AutoDiffScalar< DerType > &x)

◆ normalize()

template<typename Scalar_ >
void Eigen::AlignedVector3< Scalar_ >::normalize ( )
inline

Definition at line 165 of file AlignedVector3.

166  {
167  m_coeffs /= norm();
168  }
Scalar norm() const
Definition: AlignedVector3:187

◆ normalized()

template<typename Scalar_ >
AlignedVector3 Eigen::AlignedVector3< Scalar_ >::normalized ( ) const
inline

Definition at line 170 of file AlignedVector3.

171  {
172  return AlignedVector3(m_coeffs / norm());
173  }

◆ operator*()

template<typename Scalar_ >
AlignedVector3 Eigen::AlignedVector3< Scalar_ >::operator* ( const Scalar s) const
inline

Definition at line 143 of file AlignedVector3.

144  { return AlignedVector3(m_coeffs * s); }

◆ operator*=()

template<typename Scalar_ >
AlignedVector3& Eigen::AlignedVector3< Scalar_ >::operator*= ( const Scalar s)
inline

Definition at line 149 of file AlignedVector3.

150  { m_coeffs *= s; return *this; }

◆ operator+()

template<typename Scalar_ >
AlignedVector3 Eigen::AlignedVector3< Scalar_ >::operator+ ( const AlignedVector3< Scalar_ > &  other) const
inline

Definition at line 128 of file AlignedVector3.

129  { return AlignedVector3(m_coeffs + other.m_coeffs); }

◆ operator+=()

template<typename Scalar_ >
AlignedVector3& Eigen::AlignedVector3< Scalar_ >::operator+= ( const AlignedVector3< Scalar_ > &  other)
inline

Definition at line 131 of file AlignedVector3.

132  { m_coeffs += other.m_coeffs; return *this; }

◆ operator-() [1/2]

template<typename Scalar_ >
AlignedVector3 Eigen::AlignedVector3< Scalar_ >::operator- ( ) const
inline

Definition at line 137 of file AlignedVector3.

138  { return AlignedVector3(-m_coeffs); }

◆ operator-() [2/2]

template<typename Scalar_ >
AlignedVector3 Eigen::AlignedVector3< Scalar_ >::operator- ( const AlignedVector3< Scalar_ > &  other) const
inline

Definition at line 134 of file AlignedVector3.

135  { return AlignedVector3(m_coeffs - other.m_coeffs); }

◆ operator-=()

template<typename Scalar_ >
AlignedVector3 Eigen::AlignedVector3< Scalar_ >::operator-= ( const AlignedVector3< Scalar_ > &  other)
inline

Definition at line 140 of file AlignedVector3.

141  { m_coeffs -= other.m_coeffs; return *this; }

◆ operator/()

template<typename Scalar_ >
AlignedVector3 Eigen::AlignedVector3< Scalar_ >::operator/ ( const Scalar s) const
inline

Definition at line 152 of file AlignedVector3.

153  { return AlignedVector3(m_coeffs / s); }

◆ operator/=()

template<typename Scalar_ >
AlignedVector3& Eigen::AlignedVector3< Scalar_ >::operator/= ( const Scalar s)
inline

Definition at line 155 of file AlignedVector3.

156  { m_coeffs /= s; return *this; }

◆ operator=() [1/2]

template<typename Scalar_ >
AlignedVector3& Eigen::AlignedVector3< Scalar_ >::operator= ( const AlignedVector3< Scalar_ > &  other)
inline

Definition at line 118 of file AlignedVector3.

119  { m_coeffs = other.m_coeffs; return *this; }

◆ operator=() [2/2]

template<typename Scalar_ >
template<typename Derived >
AlignedVector3& Eigen::AlignedVector3< Scalar_ >::operator= ( const MatrixBase< Derived > &  other)
inline

Definition at line 122 of file AlignedVector3.

123  {
124  generic_assign_selector<Derived>::run(*this,other.derived());
125  return *this;
126  }

◆ outerStride()

template<typename Scalar_ >
Index Eigen::AlignedVector3< Scalar_ >::outerStride ( ) const
inline

Definition at line 66 of file AlignedVector3.

66 { return 3; }

◆ rows()

template<typename Scalar_ >
Index Eigen::AlignedVector3< Scalar_ >::rows ( void  ) const
inline

Definition at line 60 of file AlignedVector3.

60 { return 3; }

◆ squaredNorm()

template<typename Scalar_ >
Scalar Eigen::AlignedVector3< Scalar_ >::squaredNorm ( ) const
inline

Definition at line 181 of file AlignedVector3.

182  {
183  eigen_assert(m_coeffs.w()==Scalar(0));
184  return m_coeffs.squaredNorm();
185  }

◆ sum()

template<typename Scalar_ >
Scalar Eigen::AlignedVector3< Scalar_ >::sum ( ) const
inline

Definition at line 175 of file AlignedVector3.

176  {
177  eigen_assert(m_coeffs.w()==Scalar(0));
178  return m_coeffs.sum();
179  }

Member Data Documentation

◆ m_coeffs

template<typename Scalar_ >
CoeffType Eigen::AlignedVector3< Scalar_ >::m_coeffs
private

Definition at line 53 of file AlignedVector3.


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