31 using namespace CoupledInteractionGroup;
46 float goBackDistance = in.getGoBackDistance();
47 Eigen::Vector3f targetPoseRelativeVec;
48 targetPoseRelativeVec(0) = 0.0;
49 targetPoseRelativeVec(1) = -goBackDistance;
50 targetPoseRelativeVec(2) = 0.0;
51 std::vector<std::string> jointNames;
52 jointNames.push_back(
"Shoulder 2 L");
53 jointNames.push_back(
"Shoulder 2 R");
54 jointNames.push_back(
"Upperarm L");
55 jointNames.push_back(
"Upperarm R");
56 jointNames.push_back(
"Elbow L");
57 jointNames.push_back(
"Elbow R");
58 local.setGoBackJointNames(jointNames);
61 std::vector<float> targetJointValues;
62 targetJointValues.push_back(0.5);
63 targetJointValues.push_back(0.5);
64 targetJointValues.push_back(0.0);
65 targetJointValues.push_back(0.0);
66 targetJointValues.push_back(-0.5);
67 targetJointValues.push_back(-0.5);
68 local.setGoBackTargetJointValues(targetJointValues);
69 local.setPlatformTargetPose(
Vector3(targetPoseRelativeVec));
81 std::string objClassName =
"lighttable";
82 auto instances = context->
getWorkingMemoryProxy()->getObjectInstancesSegment()->getObjectInstancesByClass(objClassName);
84 if (instances.size() > 0)
86 memoryx::ObjectInstanceBasePtr obj = instances.front();
90 ARMARX_VERBOSE <<
"Detaching " << objClassName <<
" from hand. Setting pose to:\n" << pose->output();
95 context->
getWorkingMemoryProxy()->getObjectInstancesSegment()->setNewMotionModel(obj->getId(), newMotionModel);
99 ARMARX_WARNING <<
"No object instance with name '" << objClassName <<
"' found! Could not change working memory position and motion model of object.";
107 return "ReleaseTable";