MatrixLieGroup in navigation
parent
5e3f798c12
commit
39a15620bd
|
@ -254,10 +254,10 @@ public:
|
|||
};
|
||||
|
||||
/// Hat maps from tangent vector to Lie algebra
|
||||
static LieAlgebra Hat(const TangentVector& xi);
|
||||
static Matrix5 Hat(const Vector9& xi);
|
||||
|
||||
/// Vee maps from Lie algebra to tangent vector
|
||||
static TangentVector Vee(const LieAlgebra& X);
|
||||
static Vector9 Vee(const Matrix5& X);
|
||||
|
||||
/// @}
|
||||
/// @name Dynamics
|
||||
|
@ -300,9 +300,9 @@ private:
|
|||
|
||||
// Specialize NavState traits to use a Retract/Local that agrees with IMUFactors
|
||||
template <>
|
||||
struct traits<NavState> : public internal::LieGroup<NavState> {};
|
||||
struct traits<NavState> : public internal::MatrixLieGroup<NavState> {};
|
||||
|
||||
template <>
|
||||
struct traits<const NavState> : public internal::LieGroup<NavState> {};
|
||||
struct traits<const NavState> : public internal::MatrixLieGroup<NavState> {};
|
||||
|
||||
} // namespace gtsam
|
||||
|
|
|
@ -52,6 +52,13 @@ static const NavState T2(Rot3::Rodrigues(0.3, 0.2, 0.1), P2, V2);
|
|||
static const NavState T3(Rot3::Rodrigues(-90, 0, 0), Point3(5, 6, 7),
|
||||
Point3(1, 2, 3));
|
||||
|
||||
//******************************************************************************
|
||||
TEST(NavState, Concept) {
|
||||
GTSAM_CONCEPT_ASSERT(IsGroup<NavState >);
|
||||
GTSAM_CONCEPT_ASSERT(IsManifold<NavState >);
|
||||
GTSAM_CONCEPT_ASSERT(IsMatrixLieGroup<NavState >);
|
||||
}
|
||||
|
||||
/* ************************************************************************* */
|
||||
TEST(NavState, Constructor) {
|
||||
std::function<NavState(const Rot3&, const Point3&, const Vector3&)> create =
|
||||
|
|
Loading…
Reference in New Issue