Aikido
IkFast.hpp
Go to the documentation of this file.
1 #ifndef AIKIDO_ROBOT_IKFAST_HPP_
2 #define AIKIDO_ROBOT_IKFAST_HPP_
3 
4 #include <vector>
5 
6 #include <Eigen/Dense>
7 #include <dart/dart.hpp>
8 
11 
12 namespace aikido {
13 namespace robot {
14 
16 class IkFast : public InverseKinematics
17 {
18 public:
19  IkFast(
20  ::dart::dynamics::MetaSkeletonPtr arm,
21  ::dart::dynamics::BodyNodePtr endEffector,
23  const std::string& binaryPath);
24 
25  // Documentation inherited.
26  std::vector<Eigen::VectorXd> getSolutions(
27  const Eigen::Isometry3d& targetPose,
28  const size_t maxSolutions) const override;
29 
30 private:
31  ::dart::dynamics::MetaSkeletonPtr mArm;
32  ::dart::dynamics::BodyNodePtr mEndEffector;
34 
35  dart::dynamics::SharedLibraryIkFast* mIkFastSolverPtr;
36 };
37 
38 } // namespace robot
39 } // namespace aikido
40 
41 #endif // AIKIDO_ROBOT_IKFAST_HPP_
aikido::statespace::dart::ConstMetaSkeletonStateSpacePtr
std::shared_ptr< const MetaSkeletonStateSpace > ConstMetaSkeletonStateSpacePtr
Definition: MetaSkeletonStateSpace.hpp:17
aikido
Format of serialized trajectory in YAML.
Definition: algorithm.hpp:4
aikido::robot::IkFast::mArmSpace
statespace::dart::ConstMetaSkeletonStateSpacePtr mArmSpace
Definition: IkFast.hpp:33
aikido::robot::IkFast::IkFast
IkFast(::dart::dynamics::MetaSkeletonPtr arm, ::dart::dynamics::BodyNodePtr endEffector, statespace::dart::ConstMetaSkeletonStateSpacePtr armSpace, const std::string &binaryPath)
InverseKinematics.hpp
aikido::robot::IkFast::mIkFastSolverPtr
dart::dynamics::SharedLibraryIkFast * mIkFastSolverPtr
Definition: IkFast.hpp:35
aikido::robot::IkFast::mEndEffector
::dart::dynamics::BodyNodePtr mEndEffector
Definition: IkFast.hpp:32
MetaSkeletonStateSpace.hpp
aikido::robot::IkFast::mArm
::dart::dynamics::MetaSkeletonPtr mArm
Definition: IkFast.hpp:31
aikido::robot::InverseKinematics
Interface for IK solvers used with the Robot class.
Definition: InverseKinematics.hpp:8
aikido::robot::IkFast
Analytic IK solver that uses pre-compiled IkFast binary.
Definition: IkFast.hpp:16
aikido::robot::IkFast::getSolutions
std::vector< Eigen::VectorXd > getSolutions(const Eigen::Isometry3d &targetPose, const size_t maxSolutions) const override
Returns a set of IK solutions for the given pose.