Class Pose6D

Class Documentation

class Pose6D

This class represents a tree-dimensional pose of an object.

The tree-dimensional pose is represented by a three-dimensional translation vector representing the position of the object and a Quaternion representing the attitude of the object

Public Functions

Pose6D()
~Pose6D()
Pose6D(const Vector3 &trans, const Quaternion &rot)

Constructor.

Constructs a pose from given translation and rotation.

Pose6D(float x, float y, float z, double roll, double pitch, double yaw)

Constructor.

Constructs a pose from a translation represented by its x, y, z-values and a rotation represented by its Tait-Bryan angles roll, pitch, and yaw

Pose6D(const Pose6D &other)
Pose6D &operator=(const Pose6D &other)
bool operator==(const Pose6D &other) const
bool operator!=(const Pose6D &other) const
inline Vector3 &trans()

Translational component.

Returns:

the translational component of this pose

inline Quaternion &rot()

Rotational component.

Returns:

the rotational component of this pose

inline const Vector3 &trans() const

Translational component.

Returns:

the translational component of this pose

inline const Quaternion &rot() const

Rotational component.

Returns:

the rotational component of this pose

inline float &x()
inline float &y()
inline float &z()
inline const float &x() const
inline const float &y() const
inline const float &z() const
inline double roll() const
inline double pitch() const
inline double yaw() const
Vector3 transform(const Vector3 &v) const

Transformation of a vector.

Transforms the vector v by the transformation which is specified by this.

Returns:

the vector which is translated by the translation of this and afterwards rotated by the rotation of this.

Pose6D inv() const

Inversion.

Inverts the coordinate transformation represented by this pose

Returns:

a copy of this pose inverted

Pose6D &inv_IP()

Inversion.

Inverts the coordinate transformation represented by this pose

Returns:

a reference to this pose

Pose6D operator*(const Pose6D &p) const

Concatenation.

Concatenates the coordinate transformations represented by this and p.

Returns:

this * p (applies first this, then p)

const Pose6D &operator*=(const Pose6D &p)

In place concatenation.

Concatenates p to this Pose6D.

Returns:

this which results from first moving by this and afterwards by p

double distance(const Pose6D &other) const

Translational distance.

Returns:

the translational (euclidian) distance to p

double transLength() const

Translational length.

Returns:

the translational (euclidian) length of the translation vector of this Pose6D

std::ostream &write(std::ostream &s) const

Output operator.

Output to stream in a format which can be parsed using read().

std::istream &read(std::istream &s)

Input operator.

Parsing from stream which was written by write().

std::ostream &writeBinary(std::ostream &s) const

Binary output operator.

Output to stream in a binary format which can be parsed using readBinary().

std::istream &readBinary(std::istream &s)

Binary input operator.

Parsing from binary stream which was written by writeBinary().

Protected Attributes

Vector3 translation
Quaternion rotation