From f098647e69c1fe3a3a20599405962e7e1f3c7c0f Mon Sep 17 00:00:00 2001 From: Martin Miller Date: Sat, 18 Mar 2017 22:31:28 -0500 Subject: Add Feature class --- src/feature.h | 59 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 src/feature.h (limited to 'src/feature.h') diff --git a/src/feature.h b/src/feature.h new file mode 100644 index 0000000..d6c43d0 --- /dev/null +++ b/src/feature.h @@ -0,0 +1,59 @@ +#ifndef feature_INC +#define feature_INC +#include +#include "types.h" + +using Eigen::Vector3d; +using Eigen::Matrix; +using Eigen::Quaterniond; + +/* + * ===================================================================================== + * Class: Feature + * Description: + * ===================================================================================== + */ +class Feature +{ + public: + /* ==================== LIFECYCLE ======================================= */ + Feature (); /* constructor */ + + /* ==================== ACCESSORS ======================================= */ + + /* ==================== MUTATORS ======================================= */ + + /* ==================== OPERATORS ======================================= */ + Matrix Fx(); + Matrix Fy( const Vector3d &vel, const Vector3d &ang); + Matrix Hx( const Vector3d &pos, const Quaterniond &q); + Matrix Hy( const Vector3d &pos, const Quaterniond &q); + /* + Matrix Hy + Matrix h(); + void motionModel ( const Vector3d &acc, const Vector3d &ang, + const Quaterniond &q, const double dt); + Matrix Q(double dt); + Matrix R(); + Matrix S(const Matrix &P); + void skewSymmetric(const Vector3d &x, Matrix &y); + void unicsv(); + */ + + protected: + /* ==================== METHODS ======================================= */ + + /* ==================== DATA MEMBERS ======================================= */ + + private: + /* ==================== METHODS ======================================= */ + + /* ==================== DATA MEMBERS ======================================= */ + Vector3d X; + Quaterniond q0; + Vector3d xb0w; + +}; /* ----- end of class Feature ----- */ + + +#endif /* ----- #ifndef feature_INC ----- */ -- cgit v1.1