opw_inv_kin.h
Go to the documentation of this file.
1 
26 #ifndef TESSERACT_KINEMATICS_OPW_INV_KIN_H
27 #define TESSERACT_KINEMATICS_OPW_INV_KIN_H
28 
33 
35 
36 namespace tesseract_kinematics
37 {
38 static const std::string OPW_INV_KIN_CHAIN_SOLVER_NAME = "OPWInvKin";
39 
42 {
43 public:
44  // LCOV_EXCL_START
45  EIGEN_MAKE_ALIGNED_OPERATOR_NEW
46  // LCOV_EXCL_STOP
47 
48  using Ptr = std::shared_ptr<OPWInvKin>;
49  using ConstPtr = std::shared_ptr<const OPWInvKin>;
50  using UPtr = std::unique_ptr<OPWInvKin>;
51  using ConstUPtr = std::unique_ptr<const OPWInvKin>;
52 
53  ~OPWInvKin() override = default;
54  OPWInvKin(const OPWInvKin& other);
55  OPWInvKin& operator=(const OPWInvKin& other);
56  OPWInvKin(OPWInvKin&&) = default;
57  OPWInvKin& operator=(OPWInvKin&&) = default;
58 
68  std::string base_link_name,
69  std::string tip_link_name,
70  std::vector<std::string> joint_names,
71  std::string solver_name = OPW_INV_KIN_CHAIN_SOLVER_NAME);
72 
74  const Eigen::Ref<const Eigen::VectorXd>& seed) const override final;
75 
76  Eigen::Index numJoints() const override final;
77  std::vector<std::string> getJointNames() const override final;
78  std::string getBaseLinkName() const override final;
79  std::string getWorkingFrame() const override final;
80  std::vector<std::string> getTipLinkNames() const override final;
81  std::string getSolverName() const override final;
82  InverseKinematics::UPtr clone() const override final;
83 
84 protected:
85  opw_kinematics::Parameters<double> params_;
86  std::string base_link_name_;
87  std::string tip_link_name_;
88  std::vector<std::string> joint_names_;
90 };
91 
92 } // namespace tesseract_kinematics
93 #endif // TESSERACT_KINEMATICS_OPW_INV_KIN_H
tesseract_kinematics::OPWInvKin::params_
opw_kinematics::Parameters< double > params_
The opw kinematics parameters.
Definition: opw_inv_kin.h:85
opw_kinematics
tesseract_kinematics::OPWInvKin::getWorkingFrame
std::string getWorkingFrame() const override final
Get the inverse kinematics working frame.
Definition: opw_inv_kin.cpp:94
tesseract_kinematics::OPWInvKin::getBaseLinkName
std::string getBaseLinkName() const override final
Get the robot base link name.
Definition: opw_inv_kin.cpp:93
tesseract_common::TransformMap
AlignedMap< std::string, Eigen::Isometry3d > TransformMap
tesseract_kinematics::OPW_INV_KIN_CHAIN_SOLVER_NAME
static const std::string OPW_INV_KIN_CHAIN_SOLVER_NAME
Definition: opw_inv_kin.h:38
tesseract_kinematics::OPWInvKin::base_link_name_
std::string base_link_name_
Link name of first link in the kinematic object.
Definition: opw_inv_kin.h:86
tesseract_kinematics::InverseKinematics::ConstUPtr
std::unique_ptr< const InverseKinematics > ConstUPtr
Definition: inverse_kinematics.h:53
tesseract_kinematics::InverseKinematics::ConstPtr
std::shared_ptr< const InverseKinematics > ConstPtr
Definition: inverse_kinematics.h:51
inverse_kinematics.h
Inverse kinematics functions.
TESSERACT_COMMON_IGNORE_WARNINGS_PUSH
#define TESSERACT_COMMON_IGNORE_WARNINGS_PUSH
tesseract_kinematics::OPWInvKin::numJoints
Eigen::Index numJoints() const override final
Number of joints in robot.
Definition: opw_inv_kin.cpp:90
tesseract_kinematics::OPWInvKin::OPWInvKin
OPWInvKin(const OPWInvKin &other)
Definition: opw_inv_kin.cpp:56
tesseract_kinematics::OPWInvKin::tip_link_name_
std::string tip_link_name_
Link name of last kink in the kinematic object.
Definition: opw_inv_kin.h:87
tesseract_kinematics::InverseKinematics::UPtr
std::unique_ptr< InverseKinematics > UPtr
Definition: inverse_kinematics.h:52
tesseract_kinematics::OPWInvKin::getTipLinkNames
std::vector< std::string > getTipLinkNames() const override final
Get the names of the tip links of the kinematics group.
Definition: opw_inv_kin.cpp:95
tesseract_kinematics::OPWInvKin::solver_name_
std::string solver_name_
Name of this solver.
Definition: opw_inv_kin.h:89
tesseract_kinematics::OPWInvKin::calcInvKin
IKSolutions calcInvKin(const tesseract_common::TransformMap &tip_link_poses, const Eigen::Ref< const Eigen::VectorXd > &seed) const override final
Calculates joint solutions given a pose for each tip link.
Definition: opw_inv_kin.cpp:68
tesseract_kinematics::OPWInvKin::getJointNames
std::vector< std::string > getJointNames() const override final
Get list of joint names for kinematic object.
Definition: opw_inv_kin.cpp:92
tesseract_kinematics::OPWInvKin::operator=
OPWInvKin & operator=(const OPWInvKin &other)
Definition: opw_inv_kin.cpp:58
tesseract_kinematics::InverseKinematics
Inverse kinematics functions.
Definition: inverse_kinematics.h:43
TESSERACT_COMMON_IGNORE_WARNINGS_POP
#define TESSERACT_COMMON_IGNORE_WARNINGS_POP
tesseract_kinematics::OPWInvKin::~OPWInvKin
~OPWInvKin() override=default
tesseract_kinematics::OPWInvKin::getSolverName
std::string getSolverName() const override final
Get the name of the solver. Recommend using the name of the class.
Definition: opw_inv_kin.cpp:96
tesseract_kinematics::InverseKinematics::Ptr
std::shared_ptr< InverseKinematics > Ptr
Definition: inverse_kinematics.h:50
tesseract_kinematics
Definition: forward_kinematics.h:40
opw_parameters.h
tesseract_kinematics::OPWInvKin::clone
InverseKinematics::UPtr clone() const override final
Clone the forward kinematics object.
Definition: opw_inv_kin.cpp:54
opw_kinematics::Parameters< double >
tesseract_kinematics::IKSolutions
std::vector< Eigen::VectorXd > IKSolutions
The inverse kinematics solutions container.
Definition: types.h:38
macros.h
tesseract_kinematics::OPWInvKin::joint_names_
std::vector< std::string > joint_names_
Joint names for the kinematic object.
Definition: opw_inv_kin.h:88
tesseract_kinematics::OPWInvKin
OPW Inverse Kinematics Implementation.
Definition: opw_inv_kin.h:41


tesseract_kinematics
Author(s): Levi Armstrong
autogenerated on Sun May 18 2025 03:02:14