Classes | Namespaces | Typedefs | Functions | Variables
compute_default_collisions.cpp File Reference
#include <moveit/setup_assistant/tools/compute_default_collisions.h>
#include <boost/math/special_functions/binomial.hpp>
#include <boost/thread.hpp>
#include <boost/lexical_cast.hpp>
#include <boost/unordered_map.hpp>
#include <boost/assign.hpp>
#include <ros/console.h>
Include dependency graph for compute_default_collisions.cpp:

Go to the source code of this file.

Classes

struct  moveit_setup_assistant::ThreadComputation

Namespaces

namespace  moveit_setup_assistant

Typedefs

typedef std::map< const
robot_model::LinkModel
*, std::set< const
robot_model::LinkModel * > > 
moveit_setup_assistant::LinkGraph
typedef std::set< std::pair
< std::string, std::string > > 
moveit_setup_assistant::StringPairSet

Functions

static void moveit_setup_assistant::computeConnectionGraph (const robot_model::LinkModel *link, LinkGraph &link_graph)
 Build the robot links connection graph and then check for links with no geomotry.
static void moveit_setup_assistant::computeConnectionGraphRec (const robot_model::LinkModel *link, LinkGraph &link_graph)
 Recursively build the adj list of link connections.
LinkPairMap moveit_setup_assistant::computeDefaultCollisions (const planning_scene::PlanningSceneConstPtr &parent_scene, unsigned int *progress, const bool include_never_colliding, const unsigned int trials, const double min_collision_faction, const bool verbose)
 Generate an adjacency list of links that are always and never in collision, to speed up collision detection.
void moveit_setup_assistant::computeLinkPairs (const planning_scene::PlanningScene &scene, LinkPairMap &link_pairs)
 Generate a list of unique link pairs for all links with geometry. Order pairs alphabetically. n choose 2 pairs.
static unsigned int moveit_setup_assistant::disableAdjacentLinks (planning_scene::PlanningScene &scene, LinkGraph &link_graph, LinkPairMap &link_pairs)
 Disable collision checking for adjacent links, or adjacent with no geometry links between them.
static unsigned int moveit_setup_assistant::disableAlwaysInCollision (planning_scene::PlanningScene &scene, LinkPairMap &link_pairs, collision_detection::CollisionRequest &req, StringPairSet &links_seen_colliding, double min_collision_faction=0.95)
 Compute the links that are always in collision.
static unsigned int moveit_setup_assistant::disableDefaultCollisions (planning_scene::PlanningScene &scene, LinkPairMap &link_pairs, collision_detection::CollisionRequest &req)
 Disable all collision checks that occur when the robot is started in its default state.
DisabledReason moveit_setup_assistant::disabledReasonFromString (const std::string &reason)
 Converts a string reason for disabling a link pair into a struct data type.
const std::string moveit_setup_assistant::disabledReasonToString (DisabledReason reason)
 Converts a reason for disabling a link pair into a string.
static unsigned int moveit_setup_assistant::disableNeverInCollision (const unsigned int num_trials, planning_scene::PlanningScene &scene, LinkPairMap &link_pairs, const collision_detection::CollisionRequest &req, StringPairSet &links_seen_colliding, unsigned int *progress)
 Get the pairs of links that are never in collision.
static void moveit_setup_assistant::disableNeverInCollisionThread (ThreadComputation tc)
 Thread for getting the pairs of links that are never in collision.
static bool moveit_setup_assistant::setLinkPair (const std::string &linkA, const std::string &linkB, const DisabledReason reason, LinkPairMap &link_pairs)
 Helper function for adding two links to the disabled links data structure.

Variables

const boost::unordered_map
< std::string, DisabledReason > 
moveit_setup_assistant::reasonsFromString
const boost::unordered_map
< DisabledReason, std::string > 
moveit_setup_assistant::reasonsToString


moveit_setup_assistant
Author(s): Dave Coleman
autogenerated on Wed Jun 19 2019 19:25:13