hpp::constraints::DistanceBetweenPointsInBodies Class Reference

Distance between two sets of objects. More...

#include <hpp/constraints/distance-between-points-in-bodies.hh>

Inheritance diagram for hpp::constraints::DistanceBetweenPointsInBodies:
[legend]
Collaboration diagram for hpp::constraints::DistanceBetweenPointsInBodies:
[legend]

Public Member Functions

virtual ~DistanceBetweenPointsInBodies () throw ()
 
- Public Member Functions inherited from hpp::constraints::DifferentiableFunction
virtual ~DifferentiableFunction ()
 
LiegroupElement operator() (vectorIn_t argument) const
 Evaluate the function at a given parameter. More...
 
void value (LiegroupElementRef result, vectorIn_t argument) const
 Evaluate the function at a given parameter. More...
 
void jacobian (matrixOut_t jacobian, vectorIn_t argument) const
 Computes the jacobian. More...
 
const ArrayXbactiveParameters () const
 Returns a vector of booleans that indicates whether the corresponding configuration parameter influences this constraints. More...
 
const ArrayXbactiveDerivativeParameters () const
 Returns a vector of booleans that indicates whether the corresponding velocity parameter influences this constraints. More...
 
size_type inputSize () const
 Get dimension of input vector. More...
 
size_type inputDerivativeSize () const
 Get dimension of input derivative vector. More...
 
LiegroupSpacePtr_t outputSpace () const
 Get output element. More...
 
size_type outputSize () const
 Get dimension of output vector. More...
 
size_type outputDerivativeSize () const
 Get dimension of output derivative vector. More...
 
const std::string & name () const
 Get function name. More...
 
virtual std::ostream & print (std::ostream &o) const
 Display object in a stream. More...
 
std::string context () const
 
void context (const std::string &c)
 
void finiteDifferenceForward (matrixOut_t jacobian, vectorIn_t arg, DevicePtr_t robot=DevicePtr_t(), value_type eps=std::sqrt(Eigen::NumTraits< value_type >::epsilon())) const
 Approximate the jacobian using forward finite difference. More...
 
void finiteDifferenceCentral (matrixOut_t jacobian, vectorIn_t arg, DevicePtr_t robot=DevicePtr_t(), value_type eps=std::sqrt(Eigen::NumTraits< value_type >::epsilon())) const
 Approximate the jacobian using forward finite difference. More...
 

Static Public Member Functions

static EIGEN_MAKE_ALIGNED_OPERATOR_NEW DistanceBetweenPointsInBodiesPtr_t create (const std::string &name, const DevicePtr_t &robot, const JointPtr_t &joint1, const JointPtr_t &joint2, const vector3_t &point1, const vector3_t &point2)
 Create instance and return shared pointer. More...
 
static DistanceBetweenPointsInBodiesPtr_t create (const std::string &name, const DevicePtr_t &robot, const JointPtr_t &joint1, const vector3_t &point1, const vector3_t &point2)
 Create instance and return shared pointer. More...
 

Protected Member Functions

 DistanceBetweenPointsInBodies (const std::string &name, const DevicePtr_t &robot, const JointPtr_t &joint1, const JointPtr_t &joint2, const vector3_t &point1, const vector3_t &point2)
 Protected constructor. More...
 
 DistanceBetweenPointsInBodies (const std::string &name, const DevicePtr_t &robot, const JointPtr_t &joint1, const vector3_t &point1, const vector3_t &point2)
 Protected constructor. More...
 
virtual void impl_compute (LiegroupElementRef result, ConfigurationIn_t argument) const throw ()
 
virtual void impl_jacobian (matrixOut_t jacobian, ConfigurationIn_t arg) const throw ()
 
- Protected Member Functions inherited from hpp::constraints::DifferentiableFunction
 DifferentiableFunction (size_type sizeInput, size_type sizeInputDerivative, size_type sizeOutput, std::string name=std::string())
 Concrete class constructor should call this constructor. More...
 
 DifferentiableFunction (size_type sizeInput, size_type sizeInputDerivative, const LiegroupSpacePtr_t &outputSpace, std::string name=std::string())
 Concrete class constructor should call this constructor. More...
 
virtual void impl_compute (LiegroupElementRef result, vectorIn_t argument) const =0
 User implementation of function evaluation. More...
 
virtual void impl_jacobian (matrixOut_t jacobian, vectorIn_t arg) const =0
 

Additional Inherited Members

- Protected Attributes inherited from hpp::constraints::DifferentiableFunction
size_type inputSize_
 Dimension of input vector. More...
 
size_type inputDerivativeSize_
 Dimension of input derivative. More...
 
LiegroupSpacePtr_t outputSpace_
 Dimension of output vector. More...
 
ArrayXb activeParameters_
 Initialized to true by this class. More...
 
ArrayXb activeDerivativeParameters_
 Initialized to true by this class. More...
 

Detailed Description

Distance between two sets of objects.

This function maps to a configuration of a robot, the distance

  • either between two points in two joints
  • or between a point in a joint and a point in the environment

The type of distance above is determined by the method "create" called.

Constructor & Destructor Documentation

virtual hpp::constraints::DistanceBetweenPointsInBodies::~DistanceBetweenPointsInBodies ( )
throw (
)
inlinevirtual
hpp::constraints::DistanceBetweenPointsInBodies::DistanceBetweenPointsInBodies ( const std::string &  name,
const DevicePtr_t robot,
const JointPtr_t joint1,
const JointPtr_t joint2,
const vector3_t point1,
const vector3_t point2 
)
protected

Protected constructor.

Parameters
namename of the constraint,
robotrobot that own the bodies,
joint1joint that holds the first body,
joint2joint that holds the second body.
hpp::constraints::DistanceBetweenPointsInBodies::DistanceBetweenPointsInBodies ( const std::string &  name,
const DevicePtr_t robot,
const JointPtr_t joint1,
const vector3_t point1,
const vector3_t point2 
)
protected

Protected constructor.

Parameters
namename of the constraint,
robotrobot that own the bodies,
joint1joint that holds the first body,

Member Function Documentation

static EIGEN_MAKE_ALIGNED_OPERATOR_NEW DistanceBetweenPointsInBodiesPtr_t hpp::constraints::DistanceBetweenPointsInBodies::create ( const std::string &  name,
const DevicePtr_t robot,
const JointPtr_t joint1,
const JointPtr_t joint2,
const vector3_t point1,
const vector3_t point2 
)
static

Create instance and return shared pointer.

Parameters
namename of the constraint,
robotrobot that own the bodies,
joint1joint that holds the first point,
joint2joint that holds the second point,
point1point in frame of joint 1,
point2point in frame of joint 2.
static DistanceBetweenPointsInBodiesPtr_t hpp::constraints::DistanceBetweenPointsInBodies::create ( const std::string &  name,
const DevicePtr_t robot,
const JointPtr_t joint1,
const vector3_t point1,
const vector3_t point2 
)
static

Create instance and return shared pointer.

Parameters
namename of the constraint,
robotrobot that own the bodies,
joint1joint that holds the first point,
point1point in frame of joint 1,
point2point in frame of joint 2.
virtual void hpp::constraints::DistanceBetweenPointsInBodies::impl_compute ( LiegroupElementRef  result,
ConfigurationIn_t  argument 
) const
throw (
)
protectedvirtual
virtual void hpp::constraints::DistanceBetweenPointsInBodies::impl_jacobian ( matrixOut_t  jacobian,
ConfigurationIn_t  arg 
) const
throw (
)
protectedvirtual