moveit2
The MoveIt Motion Planning Framework for ROS 2.
Classes | Namespaces | Macros | Enumerations | Functions | Variables
prbt_manipulator_ikfast_moveit_plugin.cpp File Reference
#include <Eigen/Geometry>
#include <tf2_eigen_kdl/tf2_eigen_kdl.hpp>
#include <rclcpp/logger.hpp>
#include <rclcpp/logging.hpp>
#include <rclcpp/node.hpp>
#include <rclcpp/parameter_value.hpp>
#include <tf2_eigen/tf2_eigen.hpp>
#include <tf2_kdl/tf2_kdl.hpp>
#include <moveit/kinematics_base/kinematics_base.h>
#include <moveit/robot_state/robot_state.h>
#include "prbt_manipulator_ikfast_solver.cpp"
#include <pluginlib/class_list_macros.hpp>
Include dependency graph for prbt_manipulator_ikfast_moveit_plugin.cpp:

Go to the source code of this file.

Classes

struct  prbt_manipulator::LimitObeyingSol
 
class  prbt_manipulator::IKFastKinematicsPlugin
 

Namespaces

 prbt_manipulator
 

Macros

#define IKFAST_NO_MAIN
 

Enumerations

enum  SEARCH_MODE { OPTIMIZE_FREE_JOINT = 1 , OPTIMIZE_MAX_JOINT = 2 , OPTIMIZE_FREE_JOINT = 1 , OPTIMIZE_MAX_JOINT = 2 }
 Search modes for searchPositionIK(), see there. More...
 
enum  prbt_manipulator::IkParameterizationType {
  prbt_manipulator::IKP_None = 0 , prbt_manipulator::IKP_Transform6D = 0x67000001 , prbt_manipulator::IKP_Rotation3D = 0x34000002 , prbt_manipulator::IKP_Translation3D = 0x33000003 ,
  prbt_manipulator::IKP_Direction3D = 0x23000004 , prbt_manipulator::IKP_Ray4D = 0x46000005 , prbt_manipulator::IKP_Lookat3D = 0x23000006 , prbt_manipulator::IKP_TranslationDirection5D = 0x56000007 ,
  prbt_manipulator::IKP_TranslationXY2D = 0x22000008 , prbt_manipulator::IKP_TranslationXYOrientation3D = 0x33000009 , prbt_manipulator::IKP_TranslationLocalGlobal6D = 0x3600000a , prbt_manipulator::IKP_TranslationXAxisAngle4D = 0x4400000b ,
  prbt_manipulator::IKP_TranslationYAxisAngle4D = 0x4400000c , prbt_manipulator::IKP_TranslationZAxisAngle4D = 0x4400000d , prbt_manipulator::IKP_TranslationXAxisAngleZNorm4D = 0x4400000e , prbt_manipulator::IKP_TranslationYAxisAngleXNorm4D = 0x4400000f ,
  prbt_manipulator::IKP_TranslationZAxisAngleYNorm4D = 0x44000010 , prbt_manipulator::IKP_NumberOfParameterizations = 16 , prbt_manipulator::IKP_VelocityDataBit , prbt_manipulator::IKP_Transform6DVelocity = IKP_Transform6D | IKP_VelocityDataBit ,
  prbt_manipulator::IKP_Rotation3DVelocity = IKP_Rotation3D | IKP_VelocityDataBit , prbt_manipulator::IKP_Translation3DVelocity = IKP_Translation3D | IKP_VelocityDataBit , prbt_manipulator::IKP_Direction3DVelocity = IKP_Direction3D | IKP_VelocityDataBit , prbt_manipulator::IKP_Ray4DVelocity = IKP_Ray4D | IKP_VelocityDataBit ,
  prbt_manipulator::IKP_Lookat3DVelocity = IKP_Lookat3D | IKP_VelocityDataBit , prbt_manipulator::IKP_TranslationDirection5DVelocity = IKP_TranslationDirection5D | IKP_VelocityDataBit , prbt_manipulator::IKP_TranslationXY2DVelocity = IKP_TranslationXY2D | IKP_VelocityDataBit , prbt_manipulator::IKP_TranslationXYOrientation3DVelocity = IKP_TranslationXYOrientation3D | IKP_VelocityDataBit ,
  prbt_manipulator::IKP_TranslationLocalGlobal6DVelocity = IKP_TranslationLocalGlobal6D | IKP_VelocityDataBit , prbt_manipulator::IKP_TranslationXAxisAngle4DVelocity = IKP_TranslationXAxisAngle4D | IKP_VelocityDataBit , prbt_manipulator::IKP_TranslationYAxisAngle4DVelocity = IKP_TranslationYAxisAngle4D | IKP_VelocityDataBit , prbt_manipulator::IKP_TranslationZAxisAngle4DVelocity = IKP_TranslationZAxisAngle4D | IKP_VelocityDataBit ,
  prbt_manipulator::IKP_TranslationXAxisAngleZNorm4DVelocity = IKP_TranslationXAxisAngleZNorm4D | IKP_VelocityDataBit , prbt_manipulator::IKP_TranslationYAxisAngleXNorm4DVelocity = IKP_TranslationYAxisAngleXNorm4D | IKP_VelocityDataBit , prbt_manipulator::IKP_TranslationZAxisAngleYNorm4DVelocity = IKP_TranslationZAxisAngleYNorm4D | IKP_VelocityDataBit , prbt_manipulator::IKP_UniqueIdMask = 0x0000ffff ,
  prbt_manipulator::IKP_CustomDataBit = 0x00010000
}
 The types of inverse kinematics parameterizations supported. More...
 

Functions

 PLUGINLIB_EXPORT_CLASS (prbt_manipulator::IKFastKinematicsPlugin, kinematics::KinematicsBase)
 

Variables

const double LIMIT_TOLERANCE = .0000001
 

Macro Definition Documentation

◆ IKFAST_NO_MAIN

#define IKFAST_NO_MAIN

Definition at line 70 of file prbt_manipulator_ikfast_moveit_plugin.cpp.

Enumeration Type Documentation

◆ SEARCH_MODE

Search modes for searchPositionIK(), see there.

Enumerator
OPTIMIZE_FREE_JOINT 
OPTIMIZE_MAX_JOINT 
OPTIMIZE_FREE_JOINT 
OPTIMIZE_MAX_JOINT 

Definition at line 62 of file prbt_manipulator_ikfast_moveit_plugin.cpp.

Function Documentation

◆ PLUGINLIB_EXPORT_CLASS()

Variable Documentation

◆ LIMIT_TOLERANCE

const double LIMIT_TOLERANCE = .0000001

Definition at line 60 of file prbt_manipulator_ikfast_moveit_plugin.cpp.