| 
    Robowflex
    v0.1
    
   Making MoveIt Easy 
   | 
 
Wrapper for a dart::simulation::World, which contains a set of skeletons (i.e., Robots and Structures). The World is the main object that is used by motion planning as it contains a holistic view of the scene. More...
#include <world.h>
Classes | |
| struct | CollisionInfo | 
| Collision filter information.  More... | |
Public Member Functions | |
| void | clearIKModules () | 
| Clear all IK modules created in skeletons in the world.  More... | |
| void | lock () | 
| Grab internal recursive lock for world.  More... | |
| void | unlock () | 
| Unlock internal recursive world lock.  More... | |
| void | openOSGViewer () | 
| Open the Open Scene Graph visualization for this world.  More... | |
| dart::collision::CollisionDetectorPtr | getCollider () const | 
| Get the collision detector for this world.  More... | |
| std::shared_ptr< dart::collision::CollisionGroup > | getSelfCollisionGroup (const std::string &name) const | 
| Get the self-collision group for a skeleton in this world.  More... | |
| std::shared_ptr< dart::collision::CollisionGroup > | getOtherCollisionGroup (const std::string &name) const | 
| Get the group for everything other than a given skeleton in this world.  More... | |
| CollisionInfo | getCollisionInfo (const std::string &name) const | 
| Get the collision info (self and other collision groups) for a skeleton in this world.  More... | |
| std::shared_ptr< dart::collision::CompositeCollisionFilter > & | getWorldCollisionFilter () | 
| Get the current world collision filter (composite of all skeleton filters). This is more efficient than constructing a new filter from robowflex::darts::World::getDefaultFilter() or robowflex::darts::World::getAllValidFilter().  More... | |
Constuctors  | |
| World (const std::string &name="world") | |
| Create an empty world.  More... | |
| WorldPtr | clone (const std::string &suffix="") const | 
| Clone this world.  More... | |
World Entity Management  | |
| void | addRobot (RobotPtr robot) | 
| Add a robot to the world.  More... | |
| void | removeRobot (const std::string &name) | 
| Remove a robot from the world.  More... | |
| void | removeRobot (const RobotPtr &robot) | 
| Remove a robot from the world.  More... | |
| RobotPtr | getRobot (const std::string &name) | 
| Get a robot in the world.  More... | |
| RobotConstPtr | getRobotConst (const std::string &name) const | 
| Get a robot in the world.  More... | |
| void | addStructure (StructurePtr structure) | 
| Add a structure to the world.  More... | |
| void | removeStructure (const std::string &name) | 
| Remove a structure from the world.  More... | |
| void | removeStructure (const StructurePtr &structure) | 
| Remove a structure from the world.  More... | |
| StructurePtr | getStructure (const std::string &name) | 
| Get a structure in the world.  More... | |
| StructureConstPtr | getStructureConst (const std::string &name) const | 
| Get a structure in the world.  More... | |
| const std::map< std::string, StructurePtr > & | getStructures () | 
| Get the set of structures in the world.  More... | |
Getters and Setters  | |
| const std::string & | getName () const | 
| Get the name of this world.  More... | |
| std::pair< Eigen::Vector3d, Eigen::Vector3d > | getWorkspaceBounds () const | 
| Get the bounds on the workspace.  More... | |
| Eigen::Vector3d & | getWorkspaceLow () | 
| Get the lower bounds of the workspace.  More... | |
| const Eigen::Vector3d & | getWorkspaceLowConst () const | 
| Get the lower bounds of the workspace.  More... | |
| Eigen::Vector3d & | getWorkspaceHigh () | 
| Get the upper bounds of the workspace.  More... | |
| const Eigen::Vector3d & | getWorkspaceHighConst () const | 
| Get the upper bounds of the workspace.  More... | |
| dart::simulation::WorldPtr | getSim () | 
| Get the Dart world.  More... | |
| const dart::simulation::WorldPtr & | getSimConst () const | 
| Get the Dart world.  More... | |
| unsigned int | getSkeletonIndex (const dart::dynamics::SkeletonPtr &skeleton) const | 
| Get the index in the world of a skeleton.  More... | |
Collisions  | |
| std::shared_ptr< dart::collision::BodyNodeCollisionFilter > | getAllValidFilter () const | 
| Get a collision filter that allows collisions between all body nodes. Useful for constructing a custom filter to select one or a few objects.  More... | |
| std::shared_ptr< dart::collision::BodyNodeCollisionFilter > | getDefaultFilter () const | 
| Get a collision filter that is a copy of the default filter.  More... | |
| bool | inCollision (const std::shared_ptr< dart::collision::CollisionFilter > &filter=nullptr) const | 
| Checks if world is currently in collision.  More... | |
| double | distanceToCollision () const | 
| Gets the current signed distance to collision in the world.  More... | |
| void | forceUpdate () | 
| Force forward kinematics to update.  More... | |
Private Member Functions | |
| void | addSkeletonCollider (const std::string &name, const dart::dynamics::SkeletonPtr &skeleton) | 
| Add a new collision filter (ACM) for a skeleton.  More... | |
| void | removeSkeletonCollider (const std::string &name, const dart::dynamics::SkeletonPtr &skeleton) | 
| Remove a collision filter (ACM).  More... | |
Private Attributes | |
| dart::simulation::WorldPtr | world_ | 
| Underlying world.  More... | |
| Eigen::Vector3d | low_ {-5, -5, -5} | 
| Lower workspace bounds.  More... | |
| Eigen::Vector3d | high_ {5, 5, 5} | 
| Upper workspace bounds.  More... | |
| std::map< std::string, RobotPtr > | robots_ | 
| Robots in world.  More... | |
| std::map< std::string, StructurePtr > | structures_ | 
| Structures in world.  More... | |
| dart::collision::CollisionGroupPtr | all_ | 
| All collision groups in world.  More... | |
| std::map< std::string, CollisionInfo > | collision_ | 
| std::shared_ptr< dart::collision::CompositeCollisionFilter > | filter_ | 
| dart::collision::CollisionDetectorPtr | collider_ | 
| Collision checker.  More... | |
| const std::string | name_ | 
| Name of world.  More... | |
| std::recursive_mutex | mutex_ | 
| Internal lock.  More... | |
Wrapper for a dart::simulation::World, which contains a set of skeletons (i.e., Robots and Structures). The World is the main object that is used by motion planning as it contains a holistic view of the scene.
| World::World | ( | const std::string & | name = "world" | ) | 
Create an empty world.
| [in] | name | Name for the world. | 
Definition at line 36 of file world.cpp.
| void World::addRobot | ( | RobotPtr | robot | ) | 
Add a robot to the world.
| [in] | robot | Robot to add. | 
Definition at line 108 of file world.cpp.
      
  | 
  private | 
Add a new collision filter (ACM) for a skeleton.
| [in] | name | Name for collision filter. | 
| [in] | skeleton | Skeleton collision filter is for. | 
Definition at line 81 of file world.cpp.
| void World::addStructure | ( | StructurePtr | structure | ) | 
Add a structure to the world.
| [in] | structure | Structure to add. | 
Definition at line 163 of file world.cpp.
| void World::clearIKModules | ( | ) | 
| WorldPtr World::clone | ( | const std::string & | suffix = "" | ) | const | 
| double World::distanceToCollision | ( | ) | const | 
| void World::forceUpdate | ( | ) | 
| std::shared_ptr< dart::collision::BodyNodeCollisionFilter > World::getAllValidFilter | ( | ) | const | 
| dart::collision::CollisionDetectorPtr robowflex::darts::World::getCollider | ( | ) | const | 
Get the collision detector for this world.
| World::CollisionInfo World::getCollisionInfo | ( | const std::string & | name | ) | const | 
Get the collision info (self and other collision groups) for a skeleton in this world.
| [in] | name | The name of the skeleton. | 
| std::shared_ptr< dart::collision::BodyNodeCollisionFilter > World::getDefaultFilter | ( | ) | const | 
| const std::string & World::getName | ( | ) | const | 
| std::shared_ptr< dart::collision::CollisionGroup > World::getOtherCollisionGroup | ( | const std::string & | name | ) | const | 
Get the group for everything other than a given skeleton in this world.
| [in] | name | The name of the skeleton. | 
| RobotPtr World::getRobot | ( | const std::string & | name | ) | 
| RobotConstPtr World::getRobotConst | ( | const std::string & | name | ) | const | 
| std::shared_ptr< dart::collision::CollisionGroup > World::getSelfCollisionGroup | ( | const std::string & | name | ) | const | 
Get the self-collision group for a skeleton in this world.
| [in] | name | The name of the skeleton. | 
| dart::simulation::WorldPtr World::getSim | ( | ) | 
| const dart::simulation::WorldPtr & World::getSimConst | ( | ) | const | 
| unsigned int World::getSkeletonIndex | ( | const dart::dynamics::SkeletonPtr & | skeleton | ) | const | 
Get the index in the world of a skeleton.
| [in] | skeleton | The skeleton to get the index of. | 
| StructurePtr World::getStructure | ( | const std::string & | name | ) | 
| StructureConstPtr World::getStructureConst | ( | const std::string & | name | ) | const | 
| const std::map< std::string, StructurePtr > & World::getStructures | ( | ) | 
Get the set of structures in the world.
| std::pair< Eigen::Vector3d, Eigen::Vector3d > World::getWorkspaceBounds | ( | ) | const | 
| Eigen::Vector3d & World::getWorkspaceHigh | ( | ) | 
| const Eigen::Vector3d & World::getWorkspaceHighConst | ( | ) | const | 
| Eigen::Vector3d & World::getWorkspaceLow | ( | ) | 
| const Eigen::Vector3d & World::getWorkspaceLowConst | ( | ) | const | 
| std::shared_ptr< dart::collision::CompositeCollisionFilter > & robowflex::darts::World::getWorldCollisionFilter | ( | ) | 
Get the current world collision filter (composite of all skeleton filters). This is more efficient than constructing a new filter from robowflex::darts::World::getDefaultFilter() or robowflex::darts::World::getAllValidFilter().
Definition at line 392 of file world.cpp.
| bool World::inCollision | ( | const std::shared_ptr< dart::collision::CollisionFilter > & | filter = nullptr | ) | const | 
Checks if world is currently in collision.
| [in] | filter | Custom collision filter to use. If null, will use default collision filter. | 
| void World::lock | ( | ) | 
| void World::openOSGViewer | ( | ) | 
| void World::removeRobot | ( | const RobotPtr & | robot | ) | 
Remove a robot from the world.
| [in] | robot | Robot to remove. | 
Definition at line 140 of file world.cpp.
| void World::removeRobot | ( | const std::string & | name | ) | 
Remove a robot from the world.
| [in] | name | Name of robot to remove. | 
Definition at line 123 of file world.cpp.
      
  | 
  private | 
| void World::removeStructure | ( | const std::string & | name | ) | 
| void World::removeStructure | ( | const StructurePtr & | structure | ) | 
Remove a structure from the world.
| [in] | structure | Structure to remove. | 
Definition at line 191 of file world.cpp.
| void World::unlock | ( | ) | 
Unlock internal recursive world lock.
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private |