ma::maths::Pose

Define an Array with 12 columns to represent a 3D orientation and a 3D position along a sequence. Convenient class with dedicated methods to construct/access poses. More...

Header
#include <openma/maths/array.h>

Module

Public Types#

using
Orientations = Array< 9 >::Values

using
Positions = Array< 3 >::Values

Public Functions#


Pose(Index rows)

Pose(const XprBase< U > &u, const XprBase< V > &v, const XprBase< W > &w, const XprBase< O > &o)

Pose(const XprBase< U > &other)

const Eigen::Block< const Array< 12 >::Values >
orientations() const noexcept

const Eigen::Block< const Array< 12 >::Values >
positions() const noexcept

Related Non-Members#

Map< Pose >
to_pose(TimeSequence *ts)

Map< const Pose >
to_pose(const TimeSequence *ts)

Member Type Documentation#

ma::maths::Pose::Orientations
ma::maths::Pose::Positions

Member Function Documentation#

const Eigen::Block< const Array < 12 >:: Values > ma::maths::Pose::orientations ( ) const noexcept [inline]

Returns the nine first columns to access to the 3D orientation part.

ma::maths::Pose::Pose ( ) [inline]

Default constructor

ma::maths::Pose::Pose ( Index rows ) [inline]

Initialize a motion with a number of samples (lines) equals to rows

ma::maths::Pose::Pose ( const XprBase < U > & u , const XprBase < V > & v , const XprBase < W > & w , const XprBase < O > & o ) [inline]

Constructor from vectors (u,v,w,o). Internally, these vectors are joined into an array with 12 components. They represents a compact affine transformation. The storage order is the following u_x, u_y, u_z, v_x, v_x, v_y, v_z, w_x, w_y, w_z, o_x, o_y, o_z.

ma::maths::Pose::Pose ( const XprBase < U > & other )

Convenient constructor to store the result of an expression.

const Eigen::Block< const Array < 12 >:: Values > ma::maths::Pose::positions ( ) const noexcept [inline]

Returns the three last columns to access to the 3D orientation part.

Related Non-Members Documentation#

Map < Pose > ma::maths::Pose::to_pose ( TimeSequence * ts ) [inline]

Specialized extraction method where the result is a Map object (as well as the input - no possible offset) and the type must be set to TimeSequence::Pose.

Map < const Pose > ma::maths::Pose::to_pose ( const TimeSequence * ts ) [inline]

Specialized extraction method where the result is a Map object (as well as the input - no possible offset) and the type must be set to TimeSequence::Pose.