hpp-constraints 7.0.0
Definition of basic geometric constraints for motion planning
Loading...
Searching...
No Matches
hpp::constraints::DistanceBetweenBodies Class Reference

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

Inheritance diagram for hpp::constraints::DistanceBetweenBodies:
Collaboration diagram for hpp::constraints::DistanceBetweenBodies:

Public Member Functions

virtual ~DistanceBetweenBodies ()
Public Member Functions inherited from hpp::constraints::DifferentiableFunction
virtual ~DifferentiableFunction ()
LiegroupElement operator() (vectorIn_t argument) const
void value (LiegroupElementRef result, vectorIn_t argument) const
void jacobian (matrixOut_t jacobian, vectorIn_t argument) const
const ArrayXbactiveParameters () const
const ArrayXbactiveDerivativeParameters () const
size_type inputSize () const
 Get dimension of input vector.
size_type inputDerivativeSize () const
LiegroupSpacePtr_t outputSpace () const
 Get output space.
size_type outputSize () const
 Get dimension of output vector.
size_type outputDerivativeSize () const
 Get dimension of output derivative vector.
const std::string & name () const
 Get function name.
virtual std::ostream & print (std::ostream &o) const
 Display object in a stream.
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
void finiteDifferenceCentral (matrixOut_t jacobian, vectorIn_t arg, DevicePtr_t robot=DevicePtr_t(), value_type eps=std::sqrt(Eigen::NumTraits< value_type >::epsilon())) const
bool operator== (DifferentiableFunction const &other) const
bool operator!= (DifferentiableFunction const &b) const
virtual std::pair< JointConstPtr_t, JointConstPtr_tdependsOnRelPoseBetween (DeviceConstPtr_t) const

Static Public Member Functions

static EIGEN_MAKE_ALIGNED_OPERATOR_NEW DistanceBetweenBodiesPtr_t create (const std::string &name, const DevicePtr_t &robot, const JointPtr_t &joint1, const JointPtr_t &joint2)
static DistanceBetweenBodiesPtr_t create (const std::string &name, const DevicePtr_t &robot, const JointPtr_t &joint, const std::vector< CollisionObjectPtr_t > &objects)
Static Public Member Functions inherited from hpp::constraints::DifferentiableFunction
static DifferentiableFunctionPtr_t extract (DifferentiableFunctionPtr_t original, interval_t interval)

Protected Member Functions

 DistanceBetweenBodies (const std::string &name, const DevicePtr_t &robot, const JointPtr_t &joint1, const JointPtr_t &joint2)
 DistanceBetweenBodies (const std::string &name, const DevicePtr_t &robot, const JointPtr_t &joint, const std::vector< CollisionObjectPtr_t > &objects)
virtual void impl_compute (LiegroupElementRef result, ConfigurationIn_t argument) const
virtual void impl_jacobian (matrixOut_t jacobian, ConfigurationIn_t arg) const
bool isEqual (const DifferentiableFunction &other) const
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.
 DifferentiableFunction (size_type sizeInput, size_type sizeInputDerivative, const LiegroupSpacePtr_t &outputSpace, std::string name=std::string())
 Concrete class constructor should call this constructor.
virtual void impl_compute (LiegroupElementRef result, vectorIn_t argument) const =0
 User implementation of function evaluation.
virtual void impl_jacobian (matrixOut_t jacobian, vectorIn_t arg) const =0
 DifferentiableFunction ()

Additional Inherited Members

Protected Attributes inherited from hpp::constraints::DifferentiableFunction
size_type inputSize_
 Dimension of input vector.
size_type inputDerivativeSize_
 Dimension of input derivative.
LiegroupSpacePtr_t outputSpace_
 Dimension of output vector.
ArrayXb activeParameters_
ArrayXb activeDerivativeParameters_

Detailed Description

Distance between two sets of objects

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

  • either between objects of a joints and objects of another joint,
  • or objects of a joint with a list of fixed objects.

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

Constructor & Destructor Documentation

◆ ~DistanceBetweenBodies()

virtual hpp::constraints::DistanceBetweenBodies::~DistanceBetweenBodies()
inlinevirtual

◆ DistanceBetweenBodies() [1/2]

hpp::constraints::DistanceBetweenBodies::DistanceBetweenBodies(const std::string &name,
const DevicePtr_t &robot,
const JointPtr_t &joint1,
const JointPtr_t &joint2 )
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.

◆ DistanceBetweenBodies() [2/2]

hpp::constraints::DistanceBetweenBodies::DistanceBetweenBodies(const std::string &name,
const DevicePtr_t &robot,
const JointPtr_t &joint,
const std::vector< CollisionObjectPtr_t > &objects )
protected

Protected constructor

Parameters
namename of the constraint,
robotrobot that own the bodies,
jointjoint that holds the body,
objectslist of fixed objects in the environment.

Member Function Documentation

◆ create() [1/2]

DistanceBetweenBodiesPtr_t hpp::constraints::DistanceBetweenBodies::create(const std::string &name,
const DevicePtr_t &robot,
const JointPtr_t &joint,
const std::vector< CollisionObjectPtr_t > &objects )
static

Create instance and return shared pointer

Parameters
namename of the constraint,
robotrobot that own the bodies,
jointjoint that holds the body,
objectslist of fixed objects in the environment.

◆ create() [2/2]

EIGEN_MAKE_ALIGNED_OPERATOR_NEW DistanceBetweenBodiesPtr_t hpp::constraints::DistanceBetweenBodies::create(const std::string &name,
const DevicePtr_t &robot,
const JointPtr_t &joint1,
const JointPtr_t &joint2 )
static

Create instance and return shared pointer

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

◆ impl_compute()

virtual void hpp::constraints::DistanceBetweenBodies::impl_compute(LiegroupElementRefresult,
ConfigurationIn_targument ) const
protectedvirtual

◆ impl_jacobian()

virtual void hpp::constraints::DistanceBetweenBodies::impl_jacobian(matrixOut_tjacobian,
ConfigurationIn_targ ) const
protectedvirtual

◆ isEqual()

bool hpp::constraints::DistanceBetweenBodies::isEqual(const DifferentiableFunction &other)const
inlineprotectedvirtual

The documentation for this class was generated from the following file: