/usr/include/choreonoid-1.1/cnoid/src/Body/CompositeIK.h is in libcnoid-dev 1.1.0+dfsg-6.1+b4.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 | /*!
@file
@author Shin'ichiro Nakaoka
*/
#ifndef CNOID_BODY_COMPOSITE_IK_H_INCLUDED
#define CNOID_BODY_COMPOSITE_IK_H_INCLUDED
#include "Body.h"
#include "InverseKinematics.h"
#include <boost/shared_ptr.hpp>
#include "exportdecl.h"
namespace cnoid {
class Link;
class CNOID_EXPORT CompositeIK : public InverseKinematics
{
public:
CompositeIK(BodyPtr body, Link* targetLink);
~CompositeIK();
BodyPtr body() const { return body_; }
bool addBaseLink(Link* link);
void setMaxIKerror(double e);
virtual bool hasAnalyticalIK() const;
virtual bool calcInverseKinematics(const Vector3& p, const Matrix3& R);
private:
BodyPtr body_;
Link* targetLink_;
struct PathInfo {
JointPathPtr path;
Vector3 p0;
Matrix3 R0;
};
std::vector<PathInfo> pathList;
bool isAnalytical_;
};
typedef boost::shared_ptr<CompositeIK> CompositeIKptr;
}
#endif
|