# differential kinematics jac = ChainJntToJacSolver(chain) jac2 = ChainJntToJacSolver(chain2) j = Jacobian(7) j2 = Jacobian(7) j2b = Jacobian(7) jx = Jacobian(7) jxb = Jacobian(7) kdl.SetToZero(j) kdl.SetToZero(j2) kdl.SetToZero(jx) jac.JntToJac(joints, j) jac2.JntToJac(joints, j2) ######################### fr2 = f*frame kdl.changeRefPoint(j, fr2.p - f.p, jx) assert(equal(j2, jx)) # transform to base frame kdl.changeRefPoint(j2, -f2.p, j2b) kdl.changeRefPoint(j, -f.p, jxb) assert(equal(j2b, jxb)) #########################