Choreonoid  1.5
InverseKinematics.h
Go to the documentation of this file.
1 
5 #ifndef CNOID_INVERSE_KINEMATICS_H_INCLUDED
6 #define CNOID_INVERSE_KINEMATICS_H_INCLUDED
7 
8 #include <boost/shared_ptr.hpp>
9 #include <cnoid/EigenTypes>
10 #include "exportdecl.h"
11 
12 namespace cnoid {
13 
15 {
16 public:
17  enum AxisSet { NO_AXES = 0, TRANSLATION_3D = 0x1, ROTATION_3D = 0x2, TRANSFORM_6D = 0x3 };
18  virtual ~InverseKinematics() { }
19  virtual AxisSet axisType() const { return TRANSFORM_6D; }
20 
24  virtual bool calcInverseKinematics(const Vector3& end_p, const Matrix3& end_R) = 0;
25 };
26 
27 typedef boost::shared_ptr<InverseKinematics> InverseKinematicsPtr;
28 
29 
30 }
31 
32 #endif
boost::shared_ptr< InverseKinematics > InverseKinematicsPtr
Definition: InverseKinematics.h:27
Definition: InverseKinematics.h:14
virtual ~InverseKinematics()
Definition: InverseKinematics.h:18
AxisSet
Definition: InverseKinematics.h:17
virtual AxisSet axisType() const
Definition: InverseKinematics.h:19
Definition: InverseKinematics.h:17
virtual bool calcInverseKinematics(const Vector3 &end_p, const Matrix3 &end_R)=0
Definition: InverseKinematics.h:17
Defines the minimum processing for performing pasing file for STL.
Definition: AbstractSceneLoader.h:9
Definition: InverseKinematics.h:17
Definition: InverseKinematics.h:17
Eigen::Vector3d Vector3
Definition: EigenTypes.h:58
Eigen::Matrix3d Matrix3
Definition: EigenTypes.h:57