1 #include <gtest/gtest.h> 5 #include <moveit/robot_model_loader/robot_model_loader.h> 37 const urdf::ModelInterfaceSharedPtr& urdf_model = rdf_loader.getURDF();
39 if (!urdf_model || !srdf)
41 ROS_ERROR_NAMED(
"opw",
"URDF and SRDF must be loaded for OPW kinematics " 46 robot_model_.reset(
new robot_model::RobotModel(urdf_model, srdf));
75 std::vector<std::string> link_names;
76 const std::vector<double> joint_angles = { 0, 0.1, 0.2, 0.3, 0.4, 0.5 };
77 std::vector<geometry_msgs::Pose> poses_out;
83 const std::vector<geometry_msgs::Pose> poses_in = { poses_out[0] };
84 std::vector<std::vector<double> > solutions;
90 Eigen::Isometry3d actual, desired;
92 for (
auto js : solutions)
100 int main(
int argc,
char** argv)
102 ros::init(argc, argv,
"moveit_opw_kinematics_test_fanuc");
103 testing::InitGoogleTest(&argc, argv);
104 return RUN_ALL_TESTS();
int main(int argc, char **argv)
const std::string ROOT_LINK_PARAM
virtual bool getPositionFK(const std::vector< std::string > &link_names, const std::vector< double > &joint_angles, std::vector< geometry_msgs::Pose > &poses) const override
const std::vector< std::string > & getLinkNames() const override
Return all the link names in the order they are represented internally.
void poseMsgToEigen(const geometry_msgs::Pose &m, Eigen::Affine3d &e)
ROSCPP_DECL void init(int &argc, char **argv, const std::string &name, uint32_t options=0)
robot_model::RobotModelPtr robot_model_
const std::string GROUP_PARAM
virtual bool getPositionIK(const geometry_msgs::Pose &ik_pose, const std::vector< double > &ik_seed_state, std::vector< double > &solution, moveit_msgs::MoveItErrorCodes &error_code, const kinematics::KinematicsQueryOptions &options=kinematics::KinematicsQueryOptions()) const override
Specific implementation of kinematics using ROS service calls to communicate with external IK solvers...
void comparePoses(const Transform< T > &Ta, const Transform< T > &Tb)
Compare every element of two transforms.
const std::string ROBOT_DESCRIPTION
bool getParam(const std::string &key, std::string &s) const
std::string robot_description_name_
moveit_opw_kinematics_plugin::MoveItOPWKinematicsPlugin plugin_
std::shared_ptr< Model > ModelSharedPtr
virtual const std::string & getGroupName() const
#define ROS_ERROR_NAMED(name,...)
virtual bool initialize(const moveit::core::RobotModel &robot_model, const std::string &group_name, const std::string &base_frame, const std::vector< std::string > &tip_frames, double search_discretization) override
#define ROS_ERROR_STREAM(args)
#define EXPECT_TRUE(args)
TEST_F(TestPlugin, InitOk)
const std::string TIP_LINK_PARAM