14#include <gtsam_unstable/dllexport.h>
27 static const size_t dimension = 4;
44 Pose3Upright(
double x,
double y,
double z,
double theta);
55 void print(
const std::string& s =
"")
const;
64 double x()
const {
return T_.
x(); }
65 double y()
const {
return T_.
y(); }
66 double z()
const {
return z_; }
67 double theta()
const {
return T_.
theta(); }
69 Point2 translation2()
const;
70 Point3 translation()
const;
71 Rot2 rotation2()
const;
72 Rot3 rotation()
const;
81 inline static size_t Dim() {
return dimension; }
84 inline size_t dim()
const {
return dimension; }
101 Pose3Upright inverse(boost::optional<Matrix&> H1=boost::none)
const;
105 boost::optional<Matrix&> H1=boost::none,
106 boost::optional<Matrix&> H2=boost::none)
const;
116 boost::optional<Matrix&> H1=boost::none,
117 boost::optional<Matrix&> H2=boost::none)
const;
134 friend class boost::serialization::access;
135 template<
class Archive>
136 void serialize(Archive & ar,
const unsigned int ) {
137 ar & BOOST_SERIALIZATION_NVP(T_);
138 ar & BOOST_SERIALIZATION_NVP(z_);
Vector2 Point2
As of GTSAM 4, in order to make GTSAM more lean, it is now possible to just typedef Point2 to Vector2...
Definition Point2.h:27
Global functions in a separate testing namespace.
Definition chartTesting.h:28
std::string serialize(const T &input)
serializes to a string
Definition serialization.h:113
void print(const Matrix &A, const string &s, ostream &stream)
print without optional string, must specify cout yourself
Definition Matrix.cpp:156
Vector3 Point3
As of GTSAM 4, in order to make GTSAM more lean, it is now possible to just typedef Point3 to Vector3...
Definition Point3.h:36
A manifold defines a space in which there is a notion of a linear tangent space that can be centered ...
Definition concepts.h:30
Both ManifoldTraits and Testable.
Definition Manifold.h:120
Template to create a binary predicate.
Definition Testable.h:111
A 2D pose (Point2,Rot2).
Definition Pose2.h:36
double y() const
get y
Definition Pose2.h:246
double x() const
get x
Definition Pose2.h:243
double theta() const
get theta
Definition Pose2.h:249
A 3D pose (R,t) : (Rot3,Point3).
Definition Pose3.h:37
Rotation matrix NOTE: the angle theta is in radians unless explicitly stated.
Definition Rot2.h:36
A 3D Pose with fixed pitch and roll.
Definition Pose3Upright.h:25
Pose3Upright compose(const Pose3Upright &p2, boost::optional< Matrix & > H1=boost::none, boost::optional< Matrix & > H2=boost::none) const
compose this transformation onto another (first *this and then p2)
Definition Pose3Upright.cpp:93
size_t dim() const
Dimensionality of tangent space = 4 DOF.
Definition Pose3Upright.h:84
Pose3Upright(const Pose3Upright &x)
Copy constructor.
Definition Pose3Upright.h:42
Pose3Upright operator*(const Pose3Upright &T) const
compose syntactic sugar
Definition Pose3Upright.h:109
Pose3Upright()
Default constructor initializes at origin.
Definition Pose3Upright.h:39
static Pose3Upright Identity()
identity for group operation
Definition Pose3Upright.h:98
static size_t Dim()
Dimensionality of tangent space = 4 DOF - used to autodetect sizes.
Definition Pose3Upright.h:81