|
| virtual | ~GenericTransformation () |
| |
| void | reference (const Transform3s &reference) |
| |
| Transform3s | reference () const |
| | Get desired relative orientation. More...
|
| |
| void | joint1 (const JointConstPtr_t &joint) |
| | Set joint 1. More...
|
| |
| JointConstPtr_t | joint1 () const |
| | Get joint 1. More...
|
| |
| void | joint2 (const JointConstPtr_t &joint) |
| | Set joint 2. More...
|
| |
| JointConstPtr_t | joint2 () const |
| | Get joint 2. More...
|
| |
| void | frame1InJoint1 (const Transform3s &M) |
| | Set position of frame 1 in joint 1. More...
|
| |
| const Transform3s & | frame1InJoint1 () const |
| | Get position of frame 1 in joint 1. More...
|
| |
| void | frame2InJoint2 (const Transform3s &M) |
| | Set position of frame 2 in joint 2. More...
|
| |
| const Transform3s & | frame2InJoint2 () const |
| | Get position of frame 2 in joint 2. More...
|
| |
| std::pair< JointConstPtr_t, JointConstPtr_t > | dependsOnRelPoseBetween (DeviceConstPtr_t) const |
| |
| virtual std::ostream & | print (std::ostream &o) const |
| | Display object in a stream. More...
|
| |
| | GenericTransformation (const std::string &name, const DevicePtr_t &robot, std::vector< bool > mask) |
| |
| 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 ArrayXb & | activeParameters () const |
| |
| const ArrayXb & | activeDerivativeParameters () const |
| |
| size_type | inputSize () const |
| | Get dimension of input vector. More...
|
| |
| size_type | inputDerivativeSize () const |
| |
| LiegroupSpacePtr_t | outputSpace () const |
| | Get output space. 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...
|
| |
| 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 |
| |
|
| static Ptr_t | create (const std::string &name, const DevicePtr_t &robot, const JointConstPtr_t &joint2, const Transform3s &reference, std::vector< bool > mask=std::vector< bool >(DerSize, true)) |
| |
| static Ptr_t | create (const std::string &name, const DevicePtr_t &robot, const JointConstPtr_t &joint2, const Transform3s &frame2, const Transform3s &frame1, std::vector< bool > mask=std::vector< bool >(DerSize, true)) |
| |
| static Ptr_t | create (const std::string &name, const DevicePtr_t &robot, const JointConstPtr_t &joint1, const JointConstPtr_t &joint2, const Transform3s &reference, std::vector< bool > mask=std::vector< bool >(DerSize, true)) |
| |
| static Ptr_t | create (const std::string &name, const DevicePtr_t &robot, const JointConstPtr_t &joint1, const JointConstPtr_t &joint2, const Transform3s &frame1, const Transform3s &frame2, std::vector< bool > mask=std::vector< bool >(DerSize, true)) |
| |
| static DifferentiableFunctionPtr_t | extract (DifferentiableFunctionPtr_t original, interval_t interval) |
| |
|
| void | init (const WkPtr_t &self) |
| |
| 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 |
| |
| | 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 |
| |
| | DifferentiableFunction () |
| |
template<int _Options>
class hpp::constraints::GenericTransformation< _Options >
GenericTransformation class encapsulates 10 possible differentiable functions: Position, Orientation, OrientationSO3, Transformation, TransformationR3xSO3 and their relative versions RelativeTransformationR3xSO3, RelativePosition, RelativeOrientation, RelativeOrientationSO3, RelativeTransformation.
These functions compute the position of frame GenericTransformation::frame2InJoint2 in joint GenericTransformation::joint2 frame, in the frame GenericTransformation::frame1InJoint1 in GenericTransformation::joint1 frame. For absolute functions, GenericTransformation::joint1 is NULL and joint1 frame is the world frame.
The value of the RelativeTransformation function is a 6-dimensional vector. The 3 first coordinates are the position of the center of the second frame expressed in the first frame. The 3 last coordinates are the log of the orientation of frame 2 in frame 1. The values of RelativePosition and RelativeOrientation are respectively the 3 first and the 3 last components of the above 6 dimensional vector.
The Jacobian is given by
For RelativeTransformationR3xSO3, OrientationSO3, the 3 last components are replaced by a quaternion.