15 #ifndef HRPMODEL_JOINT_PATH_H_INCLUDED 16 #define HRPMODEL_JOINT_PATH_H_INCLUDED 18 #include <boost/shared_ptr.hpp> 39 return joints.empty();
51 return linkPath.baseLink();
55 return linkPath.endLink();
59 return (index >= numUpwardJointConnections);
63 linkPath.calcForwardKinematics(calcVelocity, calcAcceleration);
66 void calcJacobian(
dmatrix& out_J,
const Vector3& local_p = Vector3::Zero())
const;
74 void calcJacobianDot(
dmatrix& out_dJ,
const Vector3& local_p = Vector3::Zero())
const;
77 virtual void setMaxIKError(
double e);
78 virtual void setBestEffortIKMode(
bool on);
79 virtual bool calcInverseKinematics(
const Vector3& end_p,
const Matrix33& end_R);
80 virtual bool hasAnalyticalIK();
82 bool calcInverseKinematics(
87 virtual void onJointPathUpdated();
std::vector< Link * > joints
bool isJointDownward(int index) const
CORBA::Long find(const CorbaSequence &seq, Functor f)
unsigned int numJoints() const
void calcForwardKinematics(bool calcVelocity=false, bool calcAcceleration=false) const
boost::shared_ptr< JointPath > JointPathPtr
int numUpwardJointConnections
Link * joint(int index) const