17 Pose3Upright::Pose3Upright(
const Rot2& bearing,
const Point3&
t)
18 : T_(bearing,
Point2(t.
x(), t.
y())), z_(t.
z())
24 :
T_(x, y, theta),
z_(z)
42 cout << s <<
"(" <<
T_.
x() <<
", " <<
T_.
y() <<
", " <<
z_ <<
", " <<
T_.
theta() <<
")" << endl;
85 H1_.topLeftCorner(2,2) = H1->topLeftCorner(2,2);
86 H1_.topRightCorner(2, 1) = H1->topRightCorner(2, 1);
94 boost::optional<Matrix&> H1, boost::optional<Matrix&> H2)
const {
100 H1_.topLeftCorner(2,2) = H1->topLeftCorner(2,2);
101 H1_.topRightCorner(2, 1) = H1->topRightCorner(2, 1);
110 boost::optional<Matrix&> H1, boost::optional<Matrix&> H2)
const {
116 H1_.topLeftCorner(2,2) = H1->topLeftCorner(2,2);
117 H1_.topRightCorner(2, 1) = H1->topRightCorner(2, 1);
126 assert(v.size() == 4);
141 assert(xi.size() == 4);
static Pose3Upright Expmap(const Vector &xi)
Exponential map at identity - create a rotation from canonical coordinates.
const Point2 & t() const
translation
Pose3Upright()
Default constructor initializes at origin.
Pose3Upright between(const Pose3Upright &p2, boost::optional< Matrix & > H1=boost::none, boost::optional< Matrix & > H2=boost::none) const
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)
static Vector Logmap(const Pose3Upright &p)
Log map at identity - return the canonical coordinates of this rotation.
bool equals(const Pose3Upright &pose, double tol=1e-9) const
static GTSAM_EXPORT Vector3 Logmap(const Pose2 &p, ChartJacobian H=boost::none)
Log map at identity - return the canonical coordinates of this rotation.
const Rot2 & r() const
rotation
Point2 translation2() const
Pose3Upright retract(const Vector &v) const
Class compose(const Class &g) const
static Rot3 Yaw(double t)
Positive yaw is to right (as in aircraft heading). See ypr.
double theta() const
get theta
void print(const std::string &s="") const
Vector localCoordinates(const Pose3Upright &p2) const
Local 3D coordinates of Pose3Upright manifold neighborhood around current pose.
Point3 translation() const
Class retract(const TangentVector &v) const
retract as required by manifold concept: applies v at *this
Class between(const Class &g) const
static GTSAM_EXPORT Pose2 Expmap(const Vector3 &xi, ChartJacobian H=boost::none)
Exponential map at identity - create a rotation from canonical coordinates .
GTSAM_EXPORT Pose2 inverse() const
inverse
set noclip points set clip one set noclip two set bar set border lt lw set xdata set ydata set zdata set x2data set y2data set boxwidth set dummy x
Pose3Upright inverse(boost::optional< Matrix & > H1=boost::none) const
inverse transformation with derivatives
GTSAM_EXPORT bool equals(const Pose2 &pose, double tol=1e-9) const
TangentVector localCoordinates(const Class &g) const
localCoordinates as required by manifold concept: finds tangent vector between *this and g ...
Variation of a Pose3 in which the rotation is constained to purely yaw This state is essentially a Po...