26 #include <Eigen/Geometry>
28 #include <VirtualRobot/ManipulationObject.h>
29 #include <VirtualRobot/SceneObjectSet.h>
38 const std::vector<std::string>& datasetDisableList)
42 const auto dataset = objectPose.objectID.dataset();
44 return std::find(datasetDisableList.begin(), datasetDisableList.end(), dataset) !=
45 datasetDisableList.end();
48 objects.erase(std::remove_if(objects.begin(), objects.end(), isInDisableList),
57 {
return not objectPose.isStatic; };
59 objects.erase(std::remove_if(objects.begin(), objects.end(), isDynamic), objects.end());
71 const auto objInfo = finder.
findObject(objectPose.objectID);
73 const bool hasArticulatedModel = objInfo->getArticulatedModel().has_value();
74 return hasArticulatedModel;
77 objects.erase(std::remove_if(objects.begin(), objects.end(), isArticulated), objects.end());
89 const auto objInfo = finder.
findObject(objectPose.objectID);
91 const bool hasArticulatedModel = objInfo->getArticulatedModel().has_value();
92 return not hasArticulatedModel;
95 objects.erase(std::remove_if(objects.begin(), objects.end(), isNonArticulated),
100 std::optional<objpose::ObjectPose>
104 {
return objectPose.objectID == objectID; };
106 const auto it = std::find_if(objectPoses.begin(), objectPoses.end(), matchesId);
107 if (it != objectPoses.end())
115 VirtualRobot::ManipulationObjectPtr
121 VirtualRobot::SceneObjectSetPtr sceneObjects(
new VirtualRobot::SceneObjectSet);
132 VirtualRobot::SceneObjectSetPtr
138 VirtualRobot::SceneObjectSetPtr sceneObjects(
new VirtualRobot::SceneObjectSet);
139 for (
const auto& objectPose : objectPoses)
141 ARMARX_VERBOSE <<
"Loading object `" << objectPose.objectID <<
"`";
144 obstacle->setGlobalPose(objectPose.objectPoseGlobal);
145 sceneObjects->addSceneObject(obstacle);
158 VirtualRobot::SceneObjectSetPtr sceneObjects(
new VirtualRobot::SceneObjectSet);