hpp::constraints::RelativeTransformation Class Reference

Constraint on the relative transformation of two robot joints. More...

#include <hpp/constraints/relative-transformation.hh>

Inheritance diagram for hpp::constraints::RelativeTransformation:
Collaboration diagram for hpp::constraints::RelativeTransformation:

List of all members.

Public Member Functions

virtual ~RelativeTransformation () throw ()
void reference (const Transform3f &reference)
 Set desired relative transformation.
const Transform3freference () const
 Get desired relative orientation.

Static Public Member Functions

static
EIGEN_MAKE_ALIGNED_OPERATOR_NEW
RelativeTransformationPtr_t 
create (const std::string &name, const DevicePtr_t &robot, const JointPtr_t &joint1, const JointPtr_t &joint2, const Transform3f &reference, std::vector< bool > mask=boost::assign::list_of(true)(true)(true)(true)(true)(true))
 Return a shared pointer to a new instance.
static RelativeTransformationPtr_t create (const DevicePtr_t &robot, const JointPtr_t &joint1, const JointPtr_t &joint2, const Transform3f &reference, std::vector< bool > mask=boost::assign::list_of(true)(true)(true)(true)(true)(true))
 Return a shared pointer to a new instance.

Protected Member Functions

 RelativeTransformation (const std::string &name, const DevicePtr_t &, const JointPtr_t &joint1, const JointPtr_t &joint2, const Transform3f &reference, std::vector< bool > mask)
 Constructor.
virtual void impl_compute (vectorOut_t result, ConfigurationIn_t argument) const throw ()
 Compute value of error.
virtual void impl_jacobian (matrixOut_t jacobian, ConfigurationIn_t arg) const throw ()

Detailed Description

Constraint on the relative transformation of two robot joints.

The 3 first coordinates of the error is computed by a RelativePosition instance where the origin of Joint 2 should coincide with the translation part of the reference transformation passed to this.

The 3 last coordinates of the error are computed by a RelativeOrientation instance.


Constructor & Destructor Documentation

virtual hpp::constraints::RelativeTransformation::~RelativeTransformation ( ) throw () [inline, virtual]
hpp::constraints::RelativeTransformation::RelativeTransformation ( const std::string &  name,
const DevicePtr_t ,
const JointPtr_t joint1,
const JointPtr_t joint2,
const Transform3f reference,
std::vector< bool >  mask 
) [protected]

Constructor.

Parameters:
namethe name of the constraints,
robotthe robot the constraints is applied to,
joint1the first joint the transformation of which is constrained,
joint2the second joint the transformation of which is constrained,
referencedesired relative transformation $T_1(\mathbf{q})^{-1} T_2(\mathbf{q})$ between the joints.
maskvector of 6 boolean defining which coordinates of the error vector to take into account.

Member Function Documentation

static EIGEN_MAKE_ALIGNED_OPERATOR_NEW RelativeTransformationPtr_t hpp::constraints::RelativeTransformation::create ( const std::string &  name,
const DevicePtr_t robot,
const JointPtr_t joint1,
const JointPtr_t joint2,
const Transform3f reference,
std::vector< bool >  mask = boost::assign::list_of(true)(true)(true)(true)(true)(true) 
) [static]

Return a shared pointer to a new instance.

Parameters:
namethe name of the constraints,
robotthe robot the constraints is applied to,
joint1the first joint the transformation of which is constrained,
joint2the second joint the transformation of which is constrained,
referencedesired relative transformation $T_1(\mathbf{q})^{-1} T_2(\mathbf{q})$ between the joints.
maskwhich component of the error vector to take into account.
static RelativeTransformationPtr_t hpp::constraints::RelativeTransformation::create ( const DevicePtr_t robot,
const JointPtr_t joint1,
const JointPtr_t joint2,
const Transform3f reference,
std::vector< bool >  mask = boost::assign::list_of(true)(true)(true)(true)(true)(true) 
) [static]

Return a shared pointer to a new instance.

Parameters:
robotthe robot the constraints is applied to,
joint1the first joint the transformation of which is constrained,
joint2the second joint the transformation of which is constrained,
referencedesired relative transformation $T_1(\mathbf{q})^{-1} T_2(\mathbf{q})$ between the joints.
maskwhich component of the error vector to take into account.
virtual void hpp::constraints::RelativeTransformation::impl_compute ( vectorOut_t  result,
ConfigurationIn_t  argument 
) const throw () [protected, virtual]

Compute value of error.

Parameters:
argumentconfiguration of the robot,
Return values:
resulterror vector
virtual void hpp::constraints::RelativeTransformation::impl_jacobian ( matrixOut_t  jacobian,
ConfigurationIn_t  arg 
) const throw () [protected, virtual]
void hpp::constraints::RelativeTransformation::reference ( const Transform3f reference) [inline]

Set desired relative transformation.

const Transform3f& hpp::constraints::RelativeTransformation::reference ( ) const [inline]

Get desired relative orientation.