31 unsigned int _maxiter,
double _eps):
32 chain(_chain), nj(chain.getNrOfJoints()),
33 q_min(_q_min), q_max(_q_max),
34 iksolver(_iksolver), fksolver(_fksolver),
35 delta_q(_chain.getNrOfJoints()),
36 maxiter(_maxiter),eps(_eps)
42 unsigned int _maxiter,
double _eps):
85 for(
unsigned int j=0; j<
q_min.
rows(); j++) {
86 if(q_out(j) <
q_min(j))
91 for(
unsigned int j=0; j<
q_max.
rows(); j++) {
92 if(q_out(j) >
q_max(j))
unsigned int rows() const
int setJointLimits(const JntArray &q_min, const JntArray &q_max)
This class encapsulates a serial kinematic interconnection structure. It is built out of segments...
ChainIkSolverPos_NR_JL(const Chain &chain, const JntArray &q_min, const JntArray &q_max, ChainFkSolverPos &fksolver, ChainIkSolverVel &iksolver, unsigned int maxiter=100, double eps=1e-6)
Child FK solver failed.
IMETHOD Vector diff(const Vector &p_w_a, const Vector &p_w_b, double dt=1)
Maximum number of iterations exceeded.
virtual const char * strError(const int error) const
This class represents an fixed size array containing joint values of a KDL::Chain.
Input size does not match internal state.
void Add(const JntArray &src1, const JntArray &src2, JntArray &dest)
virtual int CartToJnt(const JntArray &q_in, const Twist &v_in, JntArray &qdot_out)=0
IMETHOD bool Equal(const FrameAcc &r1, const FrameAcc &r2, double eps=epsilon)
virtual int JntToCart(const JntArray &q_in, Frame &p_out, int segmentNr=-1)=0
virtual void updateInternalDataStructures()=0
static const int E_FKSOLVERPOS_FAILED
Child IK solver vel failed.
double min(double a, double b)
unsigned int getNrOfJoints() const
ChainIkSolverVel & iksolver
void resize(unsigned int newSize)
const char * strError(const int error) const
virtual void updateInternalDataStructures()=0
represents a frame transformation in 3D space (rotation + translation)
~ChainIkSolverPos_NR_JL()
int error
Latest error, initialized to E_NOERROR in constructor.
double max(double a, double b)
virtual void updateInternalDataStructures()
ChainFkSolverPos & fksolver
virtual int CartToJnt(const JntArray &q_init, const Frame &p_in, JntArray &q_out)
This abstract class encapsulates the inverse velocity solver for a KDL::Chain.
This abstract class encapsulates a solver for the forward position kinematics for a KDL::Chain...
static const int E_IKSOLVERVEL_FAILED