PickNik's implementation of a kinematics solver using MoveIt native types. More...
Declaration
class pose_ik_plugin::PoseIKPlugin { ... }
#include <pose_ik_plugin.hpp>
Base class
| class | moveit_pro::base::kinematics::KinematicsBase |
|
Public Constructors Index
Public Member Functions Index
| bool | initialize (const rclcpp::Node::SharedPtr &node, const moveit_pro::base::RobotModel &robot_model, const std::string &group_name, const std::string &base_frame, const std::vector< std::string > &tip_frames, double search_discretization) override |
|
|
|
| bool | initialize (const moveit_pro::base::RobotModel &robot_model, const std::string &group_name, const std::string &tip_frame) |
|
Initialize the plugin without a ROS 2 node. More...
|
|
| bool | getPositionIK (const geometry_msgs::msg::Pose &ik_pose, const std::vector< double > &ik_seed_state, std::vector< double > &solution, moveit_msgs::msg::MoveItErrorCodes &error_code, const moveit_pro::base::kinematics::KinematicsQueryOptions &options=moveit_pro::base::kinematics::KinematicsQueryOptions()) const override |
|
|
|
| bool | searchPositionIK (const geometry_msgs::msg::Pose &ik_pose, const std::vector< double > &ik_seed_state, double timeout, std::vector< double > &solution, moveit_msgs::msg::MoveItErrorCodes &error_code, const moveit_pro::base::kinematics::KinematicsQueryOptions &options=moveit_pro::base::kinematics::KinematicsQueryOptions()) const override |
|
|
|
| bool | searchPositionIK (const geometry_msgs::msg::Pose &ik_pose, const std::vector< double > &ik_seed_state, double timeout, const std::vector< double > &consistency_limits, std::vector< double > &solution, moveit_msgs::msg::MoveItErrorCodes &error_code, const moveit_pro::base::kinematics::KinematicsQueryOptions &options=moveit_pro::base::kinematics::KinematicsQueryOptions()) const override |
|
|
|
| bool | searchPositionIK (const geometry_msgs::msg::Pose &ik_pose, const std::vector< double > &ik_seed_state, double timeout, std::vector< double > &solution, const IKCallbackFn &solution_callback, moveit_msgs::msg::MoveItErrorCodes &error_code, const moveit_pro::base::kinematics::KinematicsQueryOptions &options=moveit_pro::base::kinematics::KinematicsQueryOptions()) const override |
|
|
|
| bool | searchPositionIK (const geometry_msgs::msg::Pose &ik_pose, const std::vector< double > &ik_seed_state, double timeout, const std::vector< double > &consistency_limits, std::vector< double > &solution, const IKCallbackFn &solution_callback, moveit_msgs::msg::MoveItErrorCodes &error_code, const moveit_pro::base::kinematics::KinematicsQueryOptions &options=moveit_pro::base::kinematics::KinematicsQueryOptions()) const override |
|
|
|
| bool | getPositionFK (const std::vector< std::string > &link_names, const std::vector< double > &joint_angles, std::vector< geometry_msgs::msg::Pose > &poses) const override |
|
|
|
| const std::vector< std::string > & | getJointNames () const override |
|
|
|
| const std::vector< std::string > & | getLinkNames () const override |
|
|
|
| void | setParams (const pose_ik::Params ¶ms) |
|
Set IK parameters directly, bypassing the ROS 2 parameter listener. More...
|
|
Private Member Attributes Index
Description
PickNik's implementation of a kinematics solver using MoveIt native types.
This class implements MoveIt's KinematicsBase interface around pose_ik::solveIK().
Definition at line 27 of file pose_ik_plugin.hpp.
Public Constructors
PoseIKPlugin()
| pose_ik_plugin::PoseIKPlugin::PoseIKPlugin () |
|
default
|
Public Member Functions
getJointNames()
| const std::vector< std::string > & pose_ik_plugin::PoseIKPlugin::getJointNames () |
|
getLinkNames()
| const std::vector< std::string > & pose_ik_plugin::PoseIKPlugin::getLinkNames () |
|
getPositionFK()
| bool pose_ik_plugin::PoseIKPlugin::getPositionFK (const std::vector< std::string > & link_names, const std::vector< double > & joint_angles, std::vector< geometry_msgs::msg::Pose > & poses) |
|
getPositionIK()
| bool pose_ik_plugin::PoseIKPlugin::getPositionIK (const geometry_msgs::msg::Pose & ik_pose, const std::vector< double > & ik_seed_state, std::vector< double > & solution, moveit_msgs::msg::MoveItErrorCodes & error_code, const moveit_pro::base::kinematics::KinematicsQueryOptions & options=moveit_pro::base::kinematics::KinematicsQueryOptions()) |
|
initialize()
| bool pose_ik_plugin::PoseIKPlugin::initialize (const rclcpp::Node::SharedPtr & node, const moveit_pro::base::RobotModel & robot_model, const std::string & group_name, const std::string & base_frame, const std::vector< std::string > & tip_frames, double search_discretization) |
|
initialize()
| bool pose_ik_plugin::PoseIKPlugin::initialize (const moveit_pro::base::RobotModel & robot_model, const std::string & group_name, const std::string & tip_frame) |
|
Initialize the plugin without a ROS 2 node.
This version of initialize does not create a parameter listener, so parameters must be set directly using setParams(), or otherwise defaults will be used. This is useful when you don't need ROS 2 parameter loading and want to avoid creating a node.
The base frame is automatically set to the first link in the group.
- Parameters
-
| robot_model | The robot model |
| group_name | Name of the joint model group |
| tip_frame | Tip frame name for the IK solver |
- Returns
true if initialization succeeds, false otherwise
Declaration at line 51 of file pose_ik_plugin.hpp, definition at line 46 of file pose_ik_plugin.cpp.
searchPositionIK()
| bool pose_ik_plugin::PoseIKPlugin::searchPositionIK (const geometry_msgs::msg::Pose & ik_pose, const std::vector< double > & ik_seed_state, double timeout, std::vector< double > & solution, moveit_msgs::msg::MoveItErrorCodes & error_code, const moveit_pro::base::kinematics::KinematicsQueryOptions & options=moveit_pro::base::kinematics::KinematicsQueryOptions()) |
|
searchPositionIK()
| bool pose_ik_plugin::PoseIKPlugin::searchPositionIK (const geometry_msgs::msg::Pose & ik_pose, const std::vector< double > & ik_seed_state, double timeout, const std::vector< double > & consistency_limits, std::vector< double > & solution, moveit_msgs::msg::MoveItErrorCodes & error_code, const moveit_pro::base::kinematics::KinematicsQueryOptions & options=moveit_pro::base::kinematics::KinematicsQueryOptions()) |
|
searchPositionIK()
| bool pose_ik_plugin::PoseIKPlugin::searchPositionIK (const geometry_msgs::msg::Pose & ik_pose, const std::vector< double > & ik_seed_state, double timeout, std::vector< double > & solution, const IKCallbackFn & solution_callback, moveit_msgs::msg::MoveItErrorCodes & error_code, const moveit_pro::base::kinematics::KinematicsQueryOptions & options=moveit_pro::base::kinematics::KinematicsQueryOptions()) |
|
searchPositionIK()
| bool pose_ik_plugin::PoseIKPlugin::searchPositionIK (const geometry_msgs::msg::Pose & ik_pose, const std::vector< double > & ik_seed_state, double timeout, const std::vector< double > & consistency_limits, std::vector< double > & solution, const IKCallbackFn & solution_callback, moveit_msgs::msg::MoveItErrorCodes & error_code, const moveit_pro::base::kinematics::KinematicsQueryOptions & options=moveit_pro::base::kinematics::KinematicsQueryOptions()) |
|
setParams()
| void pose_ik_plugin::PoseIKPlugin::setParams (const pose_ik::Params & params) |
|
Set IK parameters directly, bypassing the ROS 2 parameter listener.
This allows programmatic configuration of IK solver behavior without needing to set ROS 2 parameters. Once set, these parameters will be used for all subsequent IK queries instead of loading from the parameter server.
- Parameters
-
| params | The IK parameters to use. |
Declaration at line 102 of file pose_ik_plugin.hpp, definition at line 233 of file pose_ik_plugin.cpp.
Private Member Attributes
initialized_
| bool pose_ik_plugin::PoseIKPlugin::initialized_ = false |
|
joint_model_group_
| const moveit_pro::base::JointModelGroup* pose_ik_plugin::PoseIKPlugin::joint_model_group_ = nullptr |
|
override_params_
| std::optional<pose_ik::Params> pose_ik_plugin::PoseIKPlugin::override_params_ |
|
parameter_listener_
| std::shared_ptr<pose_ik::ParamListener> pose_ik_plugin::PoseIKPlugin::parameter_listener_ |
|
state_
| std::unique_ptr<moveit_pro::base::RobotState> pose_ik_plugin::PoseIKPlugin::state_ |
|
The documentation for this class was generated from the following files:
Generated via doxygen2docusaurus 2.2.2 by Doxygen 1.9.8.