#include <mi_pose.hh>
Inheritance diagram for mi_pose:
Public Types | |
typedef boost::numeric::ublas::matrix< double > | Matrix |
Type-definition for convenience. | |
typedef boost::numeric::ublas::vector< double > | Vector |
Type-definition for convenience. | |
Public Member Functions | |
mi_pose (const mimas::mm_xml_reference< XalanElement > &configuration) | |
Construct by loading from XML-DOM. | |
mi_pose (int dim=3) | |
Constructor for identity transform. | |
mi_pose (const double w, const double t1, const double t2) | |
Constructor for a two-dimensional transformation. | |
mi_pose (double yaw, double pitch, double roll, double t1, double t2, double t3) | |
Constructor for a three-dimensional transformation. | |
mi_pose (const Matrix &_rotation, const Vector &_translation) | |
Construct from given matrix and vector. | |
mi_pose (const mi_pose &_pose) | |
Copy constructor. | |
mi_pose | inv (void) const |
Compute inverse of transform. | |
Vector | map (const Vector &x) const |
Perform transformation. | |
mi_pose | operator * (const mi_pose &a) const |
Concatenate two transformations. | |
const Matrix & | getRotation (void) const |
Get const-reference to rotational matrix. | |
const Vector & | getTranslation (void) const |
Get const-reference to translational vector. | |
Matrix & | getRotation (void) |
Get reference to rotational matrix. | |
Vector & | getTranslation (void) |
Get reference to translational vector. | |
Static Public Member Functions | |
static mi_pose | scale_2d (double sx, double sy) |
Scaling 2-d transform. | |
static mi_pose | scale_3d (double sx, double sy, double sz) |
Scaling 2-d transform. | |
static mi_pose | translate_2d (double tx, double ty) |
Translating 2-d transform. | |
static mi_pose | translate_3d (double tx, double ty, double tz) |
Translating 3-d transform. | |
static mi_pose | rotate_2d (double w) |
Rotating 2-d transform. | |
Protected Member Functions | |
Matrix | rotationBlock (int i1, int i2, int dim, double w) |
Generate matrix with a single rotation block. | |
Protected Attributes | |
Matrix | rotation |
Matrix of transformation. | |
Vector | translation |
Vector of transformation. |
The pose of a micro-object is defined by the affine transformation between it's coordinate-system and the superior coordinate-system (the camera's coordinate-system):
where specifies the position of the point
in the coordinate-system of the micro-object.
This class is part of the public interface.
|
Construct by loading from XML-DOM. Initialise 6-DOF pose from XML-data.
|
|
Constructor for identity transform.
Create an identity transformation with
|
|
Constructor for a two-dimensional transformation. Counter-clockwise rotation followed by a translation. [ cos(y) -sin(y) ] A := [ sin(y) cos(y) ] ![]()
|
|
Constructor for a three-dimensional transformation. Note that the rotation around the z-axis (yaw-angle) is clockwise by convention. [ cos(y) sin(y) 0 ] Y := [ -sin(y) cos(y) 0 ] [ 0 0 1 ] [ cos(p) 0 -sin(p) ] P := [ 0 1 0 ] [ sin(p) 0 cos(p) ] [ 1 0 0 ] R := [ 0 cos(r) sin(r) ] [ 0 -sin(r) cos(r) ] A := Y * P * R
|
|
Construct from given matrix and vector.
|
|
Copy constructor.
|
|
Get reference to rotational matrix.
|
|
Get const-reference to rotational matrix.
|
|
Get reference to translational vector.
|
|
Get const-reference to translational vector.
|
|
Compute inverse of transform.
Computes the transform
holds.
|
|
Perform transformation. Computes
|
|
Concatenate two transformations.
|
|
Rotating 2-d transform.
|
|
Generate matrix with a single rotation block.
|
|
Scaling 2-d transform.
|
|
Scaling 2-d transform.
|
|
Translating 2-d transform.
|
|
Translating 3-d transform.
|