3 #include <SimoxUtility/math/convert/mat4f_to_quat.h>
4 #include <VirtualRobot/MathTools.h>
15 const VirtualRobot::RobotNodeSetPtr& rtRns,
16 const std::vector<size_t>& torqueControlledIndex,
17 const std::vector<size_t>& velocityControlledIndex)
29 rtTCP = rtRns->getTCP();
31 ik.reset(
new VirtualRobot::DifferentialIK(
32 rtRns, rtRns->getRobot()->getRootNode(), VirtualRobot::JacobiProvider::eSVDDamped));
105 ik->getJacobianMatrix(
rtTCP, VirtualRobot::IKSolver::CartesianSelection::All);
111 rtStatus.
jpinv = ik->computePseudoInverseJacobianMatrix(rtStatus.
jacobi, lambda);
130 for (
size_t i = 0; i < 6; i++)
145 c.kdCartesianVel.head(3).cwiseProduct(rtStatus.
currentTwist.head(3));
151 c.kdCartesianVel.tail(3).cwiseProduct(rtStatus.
currentTwist.tail(3));