29 nj(chain.getNrOfJoints()),
48 for(
unsigned int i = 0 ; i <
U.size(); i++)
52 for(
unsigned int i = 0 ; i <
V.size(); i++)
87 qdot_out.
data.setZero();
99 sum+=
U[j](i)*v_in(j);
103 if ( fabs(
S(i))<
eps ) {
unsigned int rows() const
unsigned int columns() const
std::vector< JntArray > V
void resize(unsigned int newNrOfColumns)
Allocates memory for new size (can break realtime behavior)
This class encapsulates a serial kinematic interconnection structure. It is built out of segments...
This class represents an fixed size array containing joint values of a KDL::Chain.
virtual int CartToJnt(const JntArray &q_in, const Twist &v_in, JntArray &qdot_out)
ChainJntToJacSolver jnt2jac
ChainIkSolverVel_pinv(const Chain &chain, double eps=0.00001, int maxiter=150)
Input size does not match internal state.
unsigned int rows() const
virtual void updateInternalDataStructures()
represents both translational and rotational velocities.
virtual void updateInternalDataStructures()
static const int E_CONVERGE_PINV_SINGULAR
solution converged but (pseudo)inverse is singular
unsigned int getNrOfJoints() const
Internal svd calculation failed.
unsigned int nrZeroSigmas
void resize(unsigned int newSize)
std::vector< JntArray > U
int calculate(const Jacobian &jac, std::vector< JntArray > &U, JntArray &w, std::vector< JntArray > &v, int maxiter)
virtual const char * strError(const int error) const
virtual int JntToJac(const JntArray &q_in, Jacobian &jac, int seg_nr=-1)
virtual const char * strError(const int error) const
int error
Latest error, initialized to E_NOERROR in constructor.