Public Member Functions | Protected Member Functions | Protected Attributes
kinematics::KinematicsBase Class Reference

Provides an interface for kinematics solvers. More...

#include <kinematics_base.h>

List of all members.

Public Member Functions

virtual const std::string & getBaseName () const
virtual const std::string & getGroupName () const
 Return the frame in which the kinematics is operating.
virtual const std::vector
< std::string > & 
getJointNames () const =0
 Return all the joint names in the order they are used internally.
virtual const std::vector
< std::string > & 
getLinkNames () const =0
 Return all the link names in the order they are represented internally.
virtual bool getPositionFK (const std::vector< std::string > &link_names, const std::vector< double > &joint_angles, std::vector< geometry_msgs::Pose > &poses)=0
 Given a set of joint angles and a set of links, compute their pose.
virtual bool getPositionIK (const geometry_msgs::Pose &ik_pose, const std::vector< double > &ik_seed_state, std::vector< double > &solution, int &error_code)=0
 Given a desired pose of the end-effector, compute the joint angles to reach it.
double getSearchDiscretization () const
virtual const std::string & getTipName () const
 Return the links for which kinematics can be computed.
virtual bool initialize (const std::string &group_name, const std::string &base_name, const std::string &tip_name, const double &search_discretization)=0
virtual bool searchPositionIK (const geometry_msgs::Pose &ik_pose, const std::vector< double > &ik_seed_state, const double &timeout, std::vector< double > &solution, int &error_code)=0
 Given a desired pose of the end-effector, search for the joint angles required to reach it. This particular method is intended for "searching" for a solutions by stepping through the redundancy (or other numerical routines).
virtual bool searchPositionIK (const geometry_msgs::Pose &ik_pose, const std::vector< double > &ik_seed_state, const double &timeout, const unsigned int &redundancy, const double &consistency_limit, std::vector< double > &solution, int &error_code)=0
 Given a desired pose of the end-effector, search for the joint angles required to reach it. This particular method is intended for "searching" for a solutions by stepping through the redundancy (or other numerical routines).
virtual bool searchPositionIK (const geometry_msgs::Pose &ik_pose, const std::vector< double > &ik_seed_state, const double &timeout, std::vector< double > &solution, const boost::function< void(const geometry_msgs::Pose &ik_pose, const std::vector< double > &ik_solution, int &error_code)> &desired_pose_callback, const boost::function< void(const geometry_msgs::Pose &ik_pose, const std::vector< double > &ik_solution, int &error_code)> &solution_callback, int &error_code)=0
 Given a desired pose of the end-effector, search for the joint angles required to reach it. This particular method is intended for "searching" for a solutions by stepping through the redundancy (or other numerical routines).
virtual bool searchPositionIK (const geometry_msgs::Pose &ik_pose, const std::vector< double > &ik_seed_state, const double &timeout, const unsigned int &redundancy, const double &consistency_limit, std::vector< double > &solution, const boost::function< void(const geometry_msgs::Pose &ik_pose, const std::vector< double > &ik_solution, int &error_code)> &desired_pose_callback, const boost::function< void(const geometry_msgs::Pose &ik_pose, const std::vector< double > &ik_solution, int &error_code)> &solution_callback, int &error_code)=0
 Given a desired pose of the end-effector, search for the joint angles required to reach it. This particular method is intended for "searching" for a solutions by stepping through the redundancy (or other numerical routines). The consistency_limit specifies that only certain redundancy positions around those specified in the seed state are admissible and need to be searched.
void setSearchDiscretization (double sd)
virtual void setValues (const std::string &group_name, const std::string &base_name, const std::string &tip_name, const double &search_discretization)
 Initialization function for the kinematics.
virtual ~KinematicsBase ()
 Virtual destructor for the interface.

Protected Member Functions

 KinematicsBase ()

Protected Attributes

std::string base_name_
std::string group_name_
double search_discretization_
std::string tip_name_

Detailed Description

Provides an interface for kinematics solvers.

Definition at line 61 of file kinematics_base.h.


Constructor & Destructor Documentation

virtual kinematics::KinematicsBase::~KinematicsBase ( ) [inline, virtual]

Virtual destructor for the interface.

Definition at line 204 of file kinematics_base.h.

Definition at line 219 of file kinematics_base.h.


Member Function Documentation

virtual const std::string& kinematics::KinematicsBase::getBaseName ( ) const [inline, virtual]

Definition at line 180 of file kinematics_base.h.

virtual const std::string& kinematics::KinematicsBase::getGroupName ( ) const [inline, virtual]

Return the frame in which the kinematics is operating.

Returns:
the string name of the frame in which the kinematics is operating

Definition at line 176 of file kinematics_base.h.

virtual const std::vector<std::string>& kinematics::KinematicsBase::getJointNames ( ) const [pure virtual]

Return all the joint names in the order they are used internally.

virtual const std::vector<std::string>& kinematics::KinematicsBase::getLinkNames ( ) const [pure virtual]

Return all the link names in the order they are represented internally.

virtual bool kinematics::KinematicsBase::getPositionFK ( const std::vector< std::string > &  link_names,
const std::vector< double > &  joint_angles,
std::vector< geometry_msgs::Pose > &  poses 
) [pure virtual]

Given a set of joint angles and a set of links, compute their pose.

Parameters:
request- the request contains the joint angles, set of links for which poses are to be computed and a timeout
response- the response contains stamped pose information for all the requested links
Returns:
True if a valid solution was found, false otherwise
virtual bool kinematics::KinematicsBase::getPositionIK ( const geometry_msgs::Pose ik_pose,
const std::vector< double > &  ik_seed_state,
std::vector< double > &  solution,
int &  error_code 
) [pure virtual]

Given a desired pose of the end-effector, compute the joint angles to reach it.

Parameters:
ik_link_name- the name of the link for which IK is being computed
ik_posethe desired pose of the link
ik_seed_statean initial guess solution for the inverse kinematics
Returns:
True if a valid solution was found, false otherwise

Definition at line 210 of file kinematics_base.h.

virtual const std::string& kinematics::KinematicsBase::getTipName ( ) const [inline, virtual]

Return the links for which kinematics can be computed.

Definition at line 187 of file kinematics_base.h.

virtual bool kinematics::KinematicsBase::initialize ( const std::string &  group_name,
const std::string &  base_name,
const std::string &  tip_name,
const double &  search_discretization 
) [pure virtual]
virtual bool kinematics::KinematicsBase::searchPositionIK ( const geometry_msgs::Pose ik_pose,
const std::vector< double > &  ik_seed_state,
const double &  timeout,
std::vector< double > &  solution,
int &  error_code 
) [pure virtual]

Given a desired pose of the end-effector, search for the joint angles required to reach it. This particular method is intended for "searching" for a solutions by stepping through the redundancy (or other numerical routines).

Parameters:
ik_posethe desired pose of the link
ik_seed_statean initial guess solution for the inverse kinematics
Returns:
True if a valid solution was found, false otherwise
virtual bool kinematics::KinematicsBase::searchPositionIK ( const geometry_msgs::Pose ik_pose,
const std::vector< double > &  ik_seed_state,
const double &  timeout,
const unsigned int &  redundancy,
const double &  consistency_limit,
std::vector< double > &  solution,
int &  error_code 
) [pure virtual]

Given a desired pose of the end-effector, search for the joint angles required to reach it. This particular method is intended for "searching" for a solutions by stepping through the redundancy (or other numerical routines).

Parameters:
ik_posethe desired pose of the link
ik_seed_statean initial guess solution for the inverse kinematics
thedistance that the redundancy can be from the current position
Returns:
True if a valid solution was found, false otherwise
virtual bool kinematics::KinematicsBase::searchPositionIK ( const geometry_msgs::Pose ik_pose,
const std::vector< double > &  ik_seed_state,
const double &  timeout,
std::vector< double > &  solution,
const boost::function< void(const geometry_msgs::Pose &ik_pose, const std::vector< double > &ik_solution, int &error_code)> &  desired_pose_callback,
const boost::function< void(const geometry_msgs::Pose &ik_pose, const std::vector< double > &ik_solution, int &error_code)> &  solution_callback,
int &  error_code 
) [pure virtual]

Given a desired pose of the end-effector, search for the joint angles required to reach it. This particular method is intended for "searching" for a solutions by stepping through the redundancy (or other numerical routines).

Parameters:
ik_posethe desired pose of the link
ik_seed_statean initial guess solution for the inverse kinematics
Returns:
True if a valid solution was found, false otherwise
virtual bool kinematics::KinematicsBase::searchPositionIK ( const geometry_msgs::Pose ik_pose,
const std::vector< double > &  ik_seed_state,
const double &  timeout,
const unsigned int &  redundancy,
const double &  consistency_limit,
std::vector< double > &  solution,
const boost::function< void(const geometry_msgs::Pose &ik_pose, const std::vector< double > &ik_solution, int &error_code)> &  desired_pose_callback,
const boost::function< void(const geometry_msgs::Pose &ik_pose, const std::vector< double > &ik_solution, int &error_code)> &  solution_callback,
int &  error_code 
) [pure virtual]

Given a desired pose of the end-effector, search for the joint angles required to reach it. This particular method is intended for "searching" for a solutions by stepping through the redundancy (or other numerical routines). The consistency_limit specifies that only certain redundancy positions around those specified in the seed state are admissible and need to be searched.

Parameters:
ik_posethe desired pose of the link
ik_seed_statean initial guess solution for the inverse kinematics
consistency_limitthe distance that the redundancy can be from the current position
Returns:
True if a valid solution was found, false otherwise

Definition at line 206 of file kinematics_base.h.

virtual void kinematics::KinematicsBase::setValues ( const std::string &  group_name,
const std::string &  base_name,
const std::string &  tip_name,
const double &  search_discretization 
) [inline, virtual]

Initialization function for the kinematics.

Returns:
True if initialization was successful, false otherwise

Definition at line 157 of file kinematics_base.h.


Member Data Documentation

std::string kinematics::KinematicsBase::base_name_ [protected]

Definition at line 216 of file kinematics_base.h.

std::string kinematics::KinematicsBase::group_name_ [protected]

Definition at line 215 of file kinematics_base.h.

Definition at line 218 of file kinematics_base.h.

std::string kinematics::KinematicsBase::tip_name_ [protected]

Definition at line 217 of file kinematics_base.h.


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


kinematics_base
Author(s): Sachin Chitta
autogenerated on Mon Dec 2 2013 12:37:47