6#include <VirtualRobot/VirtualRobot.h>
10#include <RobotAPI/interface/core/RobotState.h>
12#include <MemoryX/interface/components/WorkingMemoryInterface.h>
13#include <MemoryX/interface/components/WorkingMemoryToArVizInterface.h>
37 const WorkingMemoryInterfacePrx& workingMemory,
39 const std::vector<std::string>& datasets);
44 void updateFloorPolygon(
const Eigen::Vector2f& extents = {10000, 10000},
float height = 0);
53 void updateObjects(
const std::vector<ObjectInstancePtr>& objectInstances);
81 std::string getClassFilename(
const std::string& className);
90 ObjectInstanceMemorySegmentBasePrx objectInstanceSegment;
94 std::map<std::string, std::string> classFilenameCache;
This class can be used to visualize object instances from working memory to ArViz.
std::optional< armarx::viz::Object > makeObject(const ObjectInstancePtr &object)
Make a armarx::viz::Object from a memoryx::ObjectInstance.
void initFromProxies(const PriorKnowledgeInterfacePrx &priorKnowledge, const WorkingMemoryInterfacePrx &workingMemory, const armarx::RobotStateComponentInterfacePrx &robotStateComponent, const std::vector< std::string > &datasets)
Set the proxies.
void updateObjectClassBlackWhitelist(const armarx::BlackWhitelistUpdate &update)
std::string floorObjectFilename
void attachObjectToRobotNode(const memoryx::AttachObjectToRobotNodeInput &attachment)
void detachObjectFromRobotNode(const memoryx::DetachObjectFromRobotNodeInput &detachment)
std::string getFloorObjectFile()
armarx::viz::Polygon makeFloorPolygon(const Eigen::Vector2f &extents={10000, 10000}, float height=0)
Make a polygon representing the floor.
void setArViz(armarx::viz::Client arviz)
Set the ArViz client.
armarx::viz::Object makeFloorObject(const std::string &name="Floor")
void updateFloorObject(float height=0)
Draw a the floor as a simox object.
void updateFloorPolygon(const Eigen::Vector2f &extents={10000, 10000}, float height=0)
Draw a the floor as a polygon.
void updateObjects()
Query object instances and update their visualization.
std::string layerNameObjects
std::string layerNameFloor
std::shared_ptr< class Robot > RobotPtr
BlackWhitelist< std::string > StringBlackWhitelist
::IceInternal::ProxyHandle<::IceProxy::armarx::RobotStateComponentInterface > RobotStateComponentInterfacePrx
IceInternal::Handle< ObjectInstance > ObjectInstancePtr