opentl::core::cvdata::Pose3dPlanarRotoTranslation Class Reference

Implemented class for storing 3D solid object motion on a plane (3 dof) T is 4x4 matrix. More...

Inherits opentl::core::cvdata::Pose.

List of all members.

Public Member Functions

virtual
Pose3dPlanarRotoTranslation
clone () const
virtual double getAngleZ ()
virtual double getX ()
virtual double getY ()
virtual int initFromPoints (const math::Matrix &bodyPoints, const math::Matrix &screenPoints, const math::SquareMatrix &intrinsicMat, const math::Vector *linkIdx=NULL)
 Compute LSE pose (world T matrix) from N object-screen point correspondences.
virtual int initFromPointsAndLines (const math::Matrix &bodyPoints, const math::Matrix &screenPoints, const math::Matrix &bodyLines, const math::Matrix &screenLines, const math::SquareMatrix &intrinsicMat, const math::Vector *linkIdxForPoint=NULL, const math::Vector *linkIdxForLine=NULL)
 Compute LSE pose (world T matrix) from N1 object-screen point correspondences and N2 line correspondences.
virtual void initLieAlgGen ()
 Initialize Lie algebra generators for this pose type.
virtual Poseoperator= (const Pose &value)
 Assignment operator.
virtual
Pose3dPlanarRotoTranslation
operator= (const Pose3dPlanarRotoTranslation &value)
 Pose3dPlanarRotoTranslation (const Pose3dPlanarRotoTranslation &value)
 Constructor. Initialize object with existing value object.
 Pose3dPlanarRotoTranslation (opentl::core::cvdata::Pose::T_UPDATEMODE updateMode, std::vector< math::Vector2 > *poseLimits=NULL)
 Default constructor.
virtual void setAngleZ (double val)
void setDataFromVal (double alpha, double tx, double ty)
 Set pose data one by one. See class definition for parameter meaning.
virtual void setX (double val)
virtual void setY (double val)
virtual void updateDataFromLocalT ()
 Set pose by homog. transformation matrix.
virtual void updateWorldTFromData ()
 Function to get the pose as homog. transformation matrix T.
virtual ~Pose3dPlanarRotoTranslation ()
 Destructor.


Detailed Description

Implemented class for storing 3D solid object motion on a plane (3 dof) T is 4x4 matrix.

x_new_hom = T(p)*x_hom ;

| tx| T = |R_z(alpha) ty| | 0| |0 0 0 1|

Vector3[0] = alpha (in rad) Vector3[1] = tx Vector3[2] = ty


Constructor & Destructor Documentation

opentl::core::cvdata::Pose3dPlanarRotoTranslation::Pose3dPlanarRotoTranslation ( opentl::core::cvdata::Pose::T_UPDATEMODE  updateMode,
std::vector< math::Vector2 > *  poseLimits = NULL 
)

Default constructor.

opentl::core::cvdata::Pose3dPlanarRotoTranslation::Pose3dPlanarRotoTranslation ( const Pose3dPlanarRotoTranslation value  ) 

Constructor. Initialize object with existing value object.

virtual opentl::core::cvdata::Pose3dPlanarRotoTranslation::~Pose3dPlanarRotoTranslation (  )  [inline, virtual]

Destructor.


Member Function Documentation

virtual Pose3dPlanarRotoTranslation* opentl::core::cvdata::Pose3dPlanarRotoTranslation::clone (  )  const [virtual]

virtual double opentl::core::cvdata::Pose3dPlanarRotoTranslation::getAngleZ (  )  [inline, virtual]

Reimplemented from opentl::core::cvdata::Pose.

virtual double opentl::core::cvdata::Pose3dPlanarRotoTranslation::getX (  )  [inline, virtual]

Reimplemented from opentl::core::cvdata::Pose.

virtual double opentl::core::cvdata::Pose3dPlanarRotoTranslation::getY (  )  [inline, virtual]

Reimplemented from opentl::core::cvdata::Pose.

virtual int opentl::core::cvdata::Pose3dPlanarRotoTranslation::initFromPoints ( const math::Matrix bodyPoints,
const math::Matrix screenPoints,
const math::SquareMatrix intrinsicMat,
const math::Vector linkIdx = NULL 
) [inline, virtual]

Compute LSE pose (world T matrix) from N object-screen point correspondences.

Parameters:
bodyPoints Input points in object space (3xN) or (2xN)
screenPoints Input corresponding points in image space (2xN)
intrinsicMat Input camera calibration matrix (3x3)
linkIdx Input Link ID of each point (for articulated Poses only)
Returns:
Error condition (0 = OK)

Implements opentl::core::cvdata::Pose.

virtual int opentl::core::cvdata::Pose3dPlanarRotoTranslation::initFromPointsAndLines ( const math::Matrix bodyPoints,
const math::Matrix screenPoints,
const math::Matrix bodyLines,
const math::Matrix screenLines,
const math::SquareMatrix intrinsicMat,
const math::Vector linkIdxForPoint = NULL,
const math::Vector linkIdxForLine = NULL 
) [inline, virtual]

Compute LSE pose (world T matrix) from N1 object-screen point correspondences and N2 line correspondences.

Parameters:
bodyPoints Input points in object space (3xN1) or (2xN1)
screenPoints Input corresponding points in image space (2xN1)
bodyLines Input line segments in object space (3x2*N2)
screenLines Input corresponding lines in image space (3xN2 for 2D represantation)
intrinsicMat Input camera calibration matrix (3x3)
linkIdxForPoint Input Link ID of each point (for articulated Poses only)
linkIdxForLine Input Link ID of each line (for articulated Poses only)
Returns:
Error condition (0 = OK)

Implements opentl::core::cvdata::Pose.

virtual void opentl::core::cvdata::Pose3dPlanarRotoTranslation::initLieAlgGen (  )  [virtual]

Initialize Lie algebra generators for this pose type.

Implements opentl::core::cvdata::Pose.

virtual Pose& opentl::core::cvdata::Pose3dPlanarRotoTranslation::operator= ( const Pose value  )  [inline, virtual]

Assignment operator.

Reimplemented from opentl::core::cvdata::Pose.

virtual Pose3dPlanarRotoTranslation& opentl::core::cvdata::Pose3dPlanarRotoTranslation::operator= ( const Pose3dPlanarRotoTranslation value  )  [inline, virtual]

virtual void opentl::core::cvdata::Pose3dPlanarRotoTranslation::setAngleZ ( double  val  )  [inline, virtual]

Reimplemented from opentl::core::cvdata::Pose.

void opentl::core::cvdata::Pose3dPlanarRotoTranslation::setDataFromVal ( double  alpha,
double  tx,
double  ty 
)

Set pose data one by one. See class definition for parameter meaning.

virtual void opentl::core::cvdata::Pose3dPlanarRotoTranslation::setX ( double  val  )  [inline, virtual]

Reimplemented from opentl::core::cvdata::Pose.

virtual void opentl::core::cvdata::Pose3dPlanarRotoTranslation::setY ( double  val  )  [inline, virtual]

Reimplemented from opentl::core::cvdata::Pose.

virtual void opentl::core::cvdata::Pose3dPlanarRotoTranslation::updateDataFromLocalT (  )  [virtual]

Set pose by homog. transformation matrix.

Parameters:
matT 

Implements opentl::core::cvdata::Pose.

virtual void opentl::core::cvdata::Pose3dPlanarRotoTranslation::updateWorldTFromData (  )  [virtual]

Function to get the pose as homog. transformation matrix T.

Returns:
transformation matrix T

Implements opentl::core::cvdata::Pose.


Generated on Thu Jun 10 21:08:09 2010 for OpenTL by  doxygen 1.5.8