41 #include <geometry_msgs/msg/pose.hpp>
42 #include <geometry_msgs/msg/pose_stamped.hpp>
62 CartesianConfiguration(
const std::string& group_name,
const std::string& link_name,
const std::vector<double>& config);
64 CartesianConfiguration(
const std::string& group_name,
const std::string& link_name,
const std::vector<double>& config,
65 const moveit::core::RobotModelConstPtr& robot_model);
74 void setPose(
const geometry_msgs::msg::Pose& pose);
75 const geometry_msgs::msg::Pose&
getPose()
const;
76 geometry_msgs::msg::Pose&
getPose();
90 static geometry_msgs::msg::Pose toPose(
const std::vector<double>& pose);
91 static geometry_msgs::msg::PoseStamped toStampedPose(
const geometry_msgs::msg::Pose& pose);
94 std::string link_name_;
95 geometry_msgs::msg::Pose pose_;
99 std::optional<double> tolerance_pose_;
103 std::optional<double> tolerance_angle_;
106 std::optional<JointConfiguration> seed_;
113 link_name_ = link_name;
138 if (!tolerance_pose_ || !tolerance_angle_)
145 tolerance_angle_.value());
156 return seed_.value();
161 return seed_.has_value();
166 tolerance_pose_ = tol;
171 return tolerance_pose_;
176 tolerance_angle_ = tol;
181 return tolerance_angle_;
Class to define a robot configuration in space with the help of cartesian coordinates.
void setSeed(const JointConfiguration &config)
const geometry_msgs::msg::Pose & getPose() const
void setPose(const geometry_msgs::msg::Pose &pose)
const std::optional< double > getPoseTolerance() const
void setPoseTolerance(const double tol)
void setLinkName(const std::string &link_name)
void setAngleTolerance(const double tol)
bool hasSeed() const
States if a seed for the cartesian configuration is set.
moveit_msgs::msg::Constraints toGoalConstraints() const override
const std::string & getLinkName() const
moveit_msgs::msg::RobotState toMoveitMsgsRobotState() const override
const std::optional< double > getAngleTolerance() const
const JointConfiguration & getSeed() const
Class to define a robot configuration in space with the help of joint values.
Class to define robot configuration in space.
moveit_msgs::msg::Constraints constructGoalConstraints(const moveit::core::RobotState &state, const moveit::core::JointModelGroup *jmg, double tolerance_below, double tolerance_above)
Generates a constraint message intended to be used as a goal constraint for a joint group....
std::ostream & operator<<(std::ostream &, const CartesianConfiguration &)