VoxelGridCSpace Class Reference

#include <RobotComponents/components/MotionPlanning/CSpace/VoxelGridCSpace.h>

+ Inheritance diagram for VoxelGridCSpace:

Public Member Functions

CSpaceBasePtr clone (bool loadVisualizationModel) override
 
armarx::CSpaceBasePtr clone (const Ice::Current &) override
 
VirtualRobot::SceneObjectPtr createGridObstacle () const
 
void initCollisionTest (const Ice::Current &) override
 
 VoxelGridCSpace (visionx::VoxelGridProviderInterfacePrx voxelGridProvider, memoryx::CommonStorageInterfacePrx cs, bool loadVisualizationModel=false, float stationaryObjectMargin=0.0f)
 
- Public Member Functions inherited from SimoxCSpace
virtual void addObjectsFromWorkingMemory (memoryx::WorkingMemoryInterfacePrx workingMemoryPrx, const std::vector< std::string > &excludedInstancesIds=std::vector< std::string >())
 Adds all objects except the ones with ids specified in the parameter excludedInstancesIds from the working memory to the cspace. More...
 
virtual void addPlanarObject (const std::vector< Eigen::Vector3f > &convexHull)
 
void addStationaryObject (const StationaryObject &obj, const Ice::Current &=Ice::emptyCurrent) override
 Adds a stationary object to the cspace. More...
 
virtual Saba::CSpaceSampledPtr createSimoxCSpace () const
 
const AgentPlanningInformation & getAgent () const
 
virtual Ice::StringSeq getAgentJointNames () const
 
const VirtualRobot::RobotPtrgetAgentSceneObj () const
 
VirtualRobot::CDManager & getCD ()
 
Ice::Long getDimensionality (const Ice::Current &=Ice::emptyCurrent) const override
 
FloatRangeSeq getDimensionsBounds (const Ice::Current &=Ice::emptyCurrent) const override
 
float getStationaryObjectMargin () const
 
const StationaryObjectList & getStationaryObjects () const
 
const VirtualRobot::SceneObjectSetPtr & getStationaryObjectSet () const
 
std::vector< armarx::DebugDrawerLineSet > getTraceVisu (const Path &p, const std::vector< std::string > &nodeNames, float traceStepSize=std::numeric_limits< float >::infinity())
 
std::vector< armarx::DebugDrawerLineSet > getTraceVisu (const PathWithCost &p, const std::vector< std::string > &nodeNames, float traceStepSize=std::numeric_limits< float >::infinity())
 
std::vector< armarx::DebugDrawerLineSet > getTraceVisu (const VectorXfSeq &vecs, const std::vector< std::string > &nodeNames, float traceStepSize=std::numeric_limits< float >::infinity())
 
void ice_postUnmarshal () override
 Initializes basic structures after transmission through ice. More...
 
void initCollisionTest (const Ice::Current &=Ice::emptyCurrent) override
 Initializes the collision test. More...
 
bool isCollisionFree (const ::std::pair< const Ice::Float *, const Ice::Float * > &cfg, const Ice::Current &=Ice::emptyCurrent) override
 
bool isCollisionFree (const ::std::pair< const Ice::Float *, const Ice::Float * > &config, const Ice::Current &=Ice::emptyCurrent) override=0
 
virtual bool isCollisionFree (const Ice::Float *first, const Ice::Float *last)
 
virtual bool isCollisionFree (const VectorXf &config)
 
VectorXf jointMapToVector (const std::map< std::string, float > &jointMap, bool checkForNonexistenJointsInCspace=false) const
 
virtual TrajectoryPtr pathToTrajectory (const Path &p) const
 
virtual TrajectoryPtr pathToTrajectory (const PathWithCost &p) const
 
virtual TrajectoryPtr pathToTrajectory (const VectorXfSeq &p) const
 
void setAgent (const AgentPlanningInformation &agentInfo, const Ice::Current &=Ice::emptyCurrent) override
 Adds a stationary agent to the cspace. More...
 
virtual void setConfig (const float *&&it)
 
virtual void setConfig (const float *&it)
 
virtual void setConfig (const std::vector< float > cfg)
 Sets a configuration to check for. More...
 
void setStationaryObjectMargin (float stationaryObjectMargin)
 
virtual void setStationaryObjects (const StationaryObjectList &objList)
 
 SimoxCSpace (memoryx::CommonStorageInterfacePrx commonStoragePrx, bool loadVisualizationModel=false, float stationaryObjectMargin=0.0f)
 ctor More...
 
- Public Member Functions inherited from CSpace
void initCollisionTest (const Ice::Current &=Ice::emptyCurrent) override
 Initializes collision checking. More...
 
virtual bool isCollisionFree (const Ice::Float *first, const Ice::Float *last)
 
virtual bool isCollisionFree (const VectorXf &config)
 
bool isValidConfiguration (const ::std::pair< const Ice::Float *, const Ice::Float * > &config, const Ice::Current &=Ice::emptyCurrent) const override
 
virtual bool isValidConfiguration (const VectorXf &config) const
 
virtual bool usesInternalScaling ()
 

Friends

template<class IceBaseClass , class DerivedClass >
class armarx::GenericFactory
 

Additional Inherited Members

- Static Public Member Functions inherited from SimoxCSpace
static SimoxCSpacePtr PrefetchWorkingMemoryObjects (memoryx::WorkingMemoryInterfacePrx workingMemoryPrx, memoryx::CommonStorageInterfacePrx commonStoragePrx, RobotStateComponentInterfacePrx rsc)
 Load objects from WorkingMemory and puts them into the mesh cache. More...
 
- Protected Member Functions inherited from SimoxCSpace
AgentData getAgentDataAndLoadRobot () const
 
AgentData getAgentDataFromRobot (VirtualRobot::RobotPtr robotPtr) const
 
const std::vector< VirtualRobot::RobotNodePtr > & getAgentJoints () const
 
VirtualRobot::ManipulationObjectPtr getMovedSimoxManipulatorObject (const memoryx::ObjectClassBasePtr &object, const armarx::PoseBasePtr &pose, memoryx::GridFileManagerPtr &fileManager) const
 
VirtualRobot::ManipulationObjectPtr getSimoxManipulatorObject (const memoryx::ObjectClassBasePtr &object, const memoryx::GridFileManagerPtr &fileManager, bool inflate=true, VirtualRobot::CollisionCheckerPtr const &colChecker=VirtualRobot::CollisionCheckerPtr {}) const
 
void initAgent ()
 
void initAgent (AgentData agentData)
 Initializes an agent. More...
 
void initAgent (VirtualRobot::RobotPtr robotPtr)
 
void initStationaryObjects ()
 Initializes stationary objects for collision checking. More...
 
 SimoxCSpace ()=default
 Default ctor. More...
 
- Protected Attributes inherited from SimoxCSpace
std::vector< VirtualRobot::RobotNodePtr > agentJoints
 
VirtualRobot::RobotPtr agentSceneObj
 
VirtualRobot::CDManager cd
 The collision checker. More...
 
memoryx::GridFileManagerPtr fileManager
 The file manager used to load objects. More...
 
bool isInitialized {false}
 Whether the collision check is initialized. More...
 
bool loadVisualizationModel {false}
 Whether the visualization model of objects/agents sould be loaded. More...
 
GlobalCache< VirtualRobot::ManipulationObjectPtr, std::pair< int, std::string > > meshCache
 
GlobalCache< RobotPoolPtr, std::pair< VirtualRobot::RobotIO::RobotDescription, std::string > > robotCache
 
VirtualRobot::SceneObjectSetPtr stationaryObjectSet {new VirtualRobot::SceneObjectSet{"StationaryObjectSet"}}
 The scene objects for stationary objects. More...
 
std::vector< std::vector< Eigen::Vector3f > > stationaryPlanes
 

Detailed Description

Definition at line 33 of file VoxelGridCSpace.h.

Constructor & Destructor Documentation

◆ VoxelGridCSpace()

VoxelGridCSpace ( visionx::VoxelGridProviderInterfacePrx  voxelGridProvider,
memoryx::CommonStorageInterfacePrx  cs,
bool  loadVisualizationModel = false,
float  stationaryObjectMargin = 0.0f 
)

Definition at line 36 of file VoxelGridCSpace.cpp.

Member Function Documentation

◆ clone() [1/2]

CSpaceBasePtr clone ( bool  loadVisualizationModel)
overridevirtual
Parameters
loadVisualizationModelWhether the clone should load the visualization model.
Returns
A clone of this cspace.

Reimplemented from SimoxCSpace.

Definition at line 98 of file VoxelGridCSpace.cpp.

◆ clone() [2/2]

armarx::CSpaceBasePtr clone ( const Ice::Current &  )
overridevirtual
Returns
A clone of this cspace.

Reimplemented from SimoxCSpace.

Definition at line 67 of file VoxelGridCSpace.cpp.

◆ createGridObstacle()

VirtualRobot::SceneObjectPtr createGridObstacle ( ) const

Definition at line 42 of file VoxelGridCSpace.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ initCollisionTest()

void initCollisionTest ( const Ice::Current &  c)
override

Definition at line 72 of file VoxelGridCSpace.cpp.

+ Here is the call graph for this function:

Friends And Related Function Documentation

◆ armarx::GenericFactory

friend class armarx::GenericFactory
friend

Definition at line 37 of file VoxelGridCSpace.h.


The documentation for this class was generated from the following files: