template class Eigen::Map<sophus::Cartesian<TScalar, kM> const, kOptions>¶
Overview¶
Specialization of Eigen::Map for Cartesian const
; derived from CartesianBase. More…
#include <cartesian.h> template <class TScalar, int kM, int kOptions> class Map<sophus::Cartesian<TScalar, kM> const, kOptions>: public sophus::CartesianBase { public: // typedefs using Base = sophus::CartesianBase<Map<sophus::Cartesian<TScalar, kM> const, kOptions>, kM> ; using Scalar = TScalar ; using Transformation = typename Base::Transformation ; using Point = typename Base::Point ; using HomogeneousPoint = typename Base::HomogeneousPoint ; using Tangent = typename Base::Tangent ; // construction Map(Scalar const* coeffs); // methods SOPHUS_FUNC Map<Eigen::Vector<Scalar, kM> const, kOptions> const& params() const; protected: // fields Map<Eigen::Vector<Scalar, kM> const, kOptions> params_; };
Inherited Members¶
public: // typedefs using Scalar = typename Eigen::internal::traits<TDerived>::Scalar ; using ParamsType = typename Eigen::internal::traits<TDerived>::ParamsType ; using Transformation = Eigen::Matrix<Scalar, kMatrixDim, kMatrixDim> ; using Point = Eigen::Vector<Scalar, kM> ; using HomogeneousPoint = Eigen::Vector<Scalar, kMatrixDim> ; using Line = Eigen::ParametrizedLine<Scalar, kM> ; using Hyperplane = Eigen::Hyperplane<Scalar, kM> ; using Tangent = Eigen::Vector<Scalar, kDoF> ; using Adjoint = Eigen::Matrix<Scalar, kDoF, kDoF> ; using ReturnScalar = typename Eigen::ScalarBinaryOpTraits<Scalar, typename TOtherDerived::Scalar>::ReturnType ; using CartesianSum = Cartesian<ReturnScalar<TOtherDerived>, kM> ; using PointProduct = Eigen::Vector<ReturnScalar<TPointDerived>, kM> ; using HomogeneousPointProduct = Eigen::Vector<ReturnScalar<THPointDerived>, kMatrixDim> ; // fields static constexpr int kDoF = kM; static constexpr int kNumParameters = kM; static constexpr int kMatrixDim = kM + 1; static constexpr int kPointDim = kM; // methods SOPHUS_FUNC Adjoint adj() const; template <class TNewScalarType> SOPHUS_FUNC Cartesian<TNewScalarType, kM> cast() const; SOPHUS_FUNC Eigen::Matrix<Scalar, kNumParameters, kDoF> dxThisMulExpXAt0() const; SOPHUS_FUNC Eigen::Matrix<Scalar, kNumParameters, kDoF> dxLogThisInvTimesXAtThis() const; SOPHUS_FUNC Cartesian<Scalar, kM> inverse() const; SOPHUS_FUNC Tangent log() const; SOPHUS_FUNC Transformation matrix() const; template <class TOtherDerived> SOPHUS_FUNC CartesianBase<TDerived, kM>& operator=(CartesianBase<TOtherDerived, kM> const& other); template <class TOtherDerived> SOPHUS_FUNC CartesianSum<TOtherDerived> operator*(CartesianBase<TOtherDerived, kM> const& other) const; template < typename TPointDerived, typename = typename std::enable_if<IsFixedSizeVector<TPointDerived, kM>::value>::type > SOPHUS_FUNC PointProduct<TPointDerived> operator*(Eigen::MatrixBase<TPointDerived> const& p) const; template < typename THPointDerived, typename = typename std::enable_if<IsFixedSizeVector<THPointDerived, kMatrixDim>::value>::type > SOPHUS_FUNC HomogeneousPointProduct<THPointDerived> operator*(Eigen::MatrixBase<THPointDerived> const& p) const; SOPHUS_FUNC Line operator*(Line const& l) const; SOPHUS_FUNC Hyperplane operator*(Hyperplane const& p) const; template < typename TOtherDerived, typename = typename std::enable_if<std::is_same<Scalar, ReturnScalar<TOtherDerived>>::value>::type > SOPHUS_FUNC CartesianBase<TDerived, kM>& operator*=(CartesianBase<TOtherDerived, kM> const& other); SOPHUS_FUNC ParamsType& params(); SOPHUS_FUNC ParamsType const& params() const;
Detailed Documentation¶
Specialization of Eigen::Map for Cartesian const
; derived from CartesianBase.
Allows us to wrap Cartesian objects around POD array.
Methods¶
SOPHUS_FUNC Map<Eigen::Vector<Scalar, kM> const, kOptions> const& params() const
Accessor of params vector.