Tesseract
Motion Planning Environment
|
Typedefs | |
using | Commands = std::vector< Command::ConstPtr > |
using | CollisionMarginData = tesseract_common::CollisionMarginData |
using | CollisionMarginOverrideType = tesseract_common::CollisionMarginOverrideType |
using | PairsCollisionMarginData = tesseract_common::PairsCollisionMarginData |
using | FindTCPOffsetCallbackFn = std::function< Eigen::Isometry3d(const tesseract_common::ManipulatorInfo &)> |
Function signature for adding additional callbacks for looking up TCP information. More... | |
using | EventCallbackFn = std::function< void(const Event &event)> |
Enumerations | |
enum class | CommandType { UNINITIALIZED = -1 , ADD_LINK = 0 , MOVE_LINK = 1 , MOVE_JOINT = 2 , REMOVE_LINK = 3 , REMOVE_JOINT = 4 , CHANGE_LINK_ORIGIN = 5 , CHANGE_JOINT_ORIGIN = 6 , CHANGE_LINK_COLLISION_ENABLED = 7 , CHANGE_LINK_VISIBILITY = 8 , MODIFY_ALLOWED_COLLISIONS = 9 , REMOVE_ALLOWED_COLLISION_LINK = 10 , ADD_SCENE_GRAPH = 11 , CHANGE_JOINT_POSITION_LIMITS = 12 , CHANGE_JOINT_VELOCITY_LIMITS = 13 , CHANGE_JOINT_ACCELERATION_LIMITS = 14 , ADD_KINEMATICS_INFORMATION = 15 , REPLACE_JOINT = 16 , CHANGE_COLLISION_MARGINS = 17 , ADD_CONTACT_MANAGERS_PLUGIN_INFO = 18 , SET_ACTIVE_DISCRETE_CONTACT_MANAGER = 19 , SET_ACTIVE_CONTINUOUS_CONTACT_MANAGER = 20 } |
enum class | ModifyAllowedCollisionsType { ADD , REMOVE , REPLACE } |
enum class | MonitoredEnvironmentMode : int { DEFAULT = 0 , SYNCHRONIZED = 1 } |
enum class | Events { COMMAND_APPLIED = 0 , SCENE_STATE_CHANGED = 1 } |
using tesseract_environment::CollisionMarginOverrideType = typedef tesseract_common::CollisionMarginOverrideType |
using tesseract_environment::Commands = typedef std::vector<Command::ConstPtr> |
using tesseract_environment::EventCallbackFn = typedef std::function<void(const Event& event)> |
using tesseract_environment::FindTCPOffsetCallbackFn = typedef std::function<Eigen::Isometry3d(const tesseract_common::ManipulatorInfo&)> |
Function signature for adding additional callbacks for looking up TCP information.
The function should throw and exception if not located
using tesseract_environment::PairsCollisionMarginData = typedef tesseract_common::PairsCollisionMarginData |
|
strong |
|
strong |
|
strong |
|
strong |
bool tesseract_environment::checkTrajectory | ( | std::vector< tesseract_collision::ContactResultMap > & | contacts, |
tesseract_collision::ContinuousContactManager & | manager, | ||
const tesseract_kinematics::JointGroup & | manip, | ||
const tesseract_common::TrajArray & | traj, | ||
const tesseract_collision::CollisionCheckConfig & | config | ||
) |
Should perform a continuous collision check over the trajectory and stop on first collision.
contacts | A vector of ContactMap where each index corresponds to a segment in the trajectory. The length should be trajectory size minus one. |
manager | A continuous contact manager |
manip | The kinematic joint group |
traj | The joint values at each time step |
config | CollisionCheckConfig used to specify collision check settings |
Making this thread_local does not help because it is not called enough during planning
Making this thread_local does not help because it is not called enough during planning
bool tesseract_environment::checkTrajectory | ( | std::vector< tesseract_collision::ContactResultMap > & | contacts, |
tesseract_collision::ContinuousContactManager & | manager, | ||
const tesseract_scene_graph::StateSolver & | state_solver, | ||
const std::vector< std::string > & | joint_names, | ||
const tesseract_common::TrajArray & | traj, | ||
const tesseract_collision::CollisionCheckConfig & | config | ||
) |
Should perform a continuous collision check over the trajectory and stop on first collision.
contacts | A vector of ContactMap where each index corresponds to a segment in the trajectory. The length should be trajectory size minus one. |
manager | A continuous contact manager |
state_solver | The environment state solver |
joint_names | JointNames corresponding to the values in traj (must be in same order) |
traj | The joint values at each time step |
config | CollisionCheckConfig used to specify collision check settings |
Making this thread_local does not help because it is not called enough during planning
Making this thread_local does not help because it is not called enough during planning
bool tesseract_environment::checkTrajectory | ( | std::vector< tesseract_collision::ContactResultMap > & | contacts, |
tesseract_collision::DiscreteContactManager & | manager, | ||
const tesseract_kinematics::JointGroup & | manip, | ||
const tesseract_common::TrajArray & | traj, | ||
const tesseract_collision::CollisionCheckConfig & | config | ||
) |
Should perform a discrete collision check over the trajectory and stop on first collision.
contacts | A vector of ContactMap where each index corresponds to a segment in the trajectory, except the last which is the end state. The length should be the same size as the input trajectory. |
manager | A continuous contact manager |
manip | The kinematic joint group |
traj | The joint values at each time step |
config | CollisionCheckConfig used to specify collision check settings |
Making this thread_local does not help because it is not called enough during planning
Making this thread_local does not help because it is not called enough during planning
bool tesseract_environment::checkTrajectory | ( | std::vector< tesseract_collision::ContactResultMap > & | contacts, |
tesseract_collision::DiscreteContactManager & | manager, | ||
const tesseract_scene_graph::StateSolver & | state_solver, | ||
const std::vector< std::string > & | joint_names, | ||
const tesseract_common::TrajArray & | traj, | ||
const tesseract_collision::CollisionCheckConfig & | config | ||
) |
Should perform a discrete collision check over the trajectory and stop on first collision.
contacts | A vector of ContactMap where each index corresponds to a segment in the trajectory, except the last which is the end state. The length should be the same size as the input trajectory. |
manager | A continuous contact manager |
state_solver | The environment state solver |
joint_names | JointNames corresponding to the values in traj (must be in same order) |
traj | The joint values at each time step |
config | CollisionCheckConfig used to specify collision check settings |
Making this thread_local does not help because it is not called enough during planning
Making this thread_local does not help because it is not called enough during planning
void tesseract_environment::checkTrajectorySegment | ( | tesseract_collision::ContactResultMap & | contact_results, |
tesseract_collision::ContinuousContactManager & | manager, | ||
const tesseract_common::TransformMap & | state0, | ||
const tesseract_common::TransformMap & | state1, | ||
const tesseract_collision::CollisionCheckConfig & | config | ||
) |
Should perform a continuous collision check between two states configuring the manager with the config.
contact_results | The contact results to populate. It does not get cleared |
manager | A continuous contact manager |
state0 | First environment state |
state1 | Second environment state |
config | CollisionCheckConfig used to specify collision check settings |
void tesseract_environment::checkTrajectorySegment | ( | tesseract_collision::ContactResultMap & | contact_results, |
tesseract_collision::ContinuousContactManager & | manager, | ||
const tesseract_common::TransformMap & | state0, | ||
const tesseract_common::TransformMap & | state1, | ||
const tesseract_collision::ContactRequest & | contact_request | ||
) |
Should perform a continuous collision check between two states only passing along the contact_request to the manager.
contact_results | The contact results to populate. It does not get cleared |
manager | A continuous contact manager |
state0 | First environment state |
state1 | Second environment state |
contact_request | Contact request passed to the manager |
void tesseract_environment::checkTrajectoryState | ( | tesseract_collision::ContactResultMap & | contact_results, |
tesseract_collision::DiscreteContactManager & | manager, | ||
const tesseract_common::TransformMap & | state, | ||
const tesseract_collision::CollisionCheckConfig & | config | ||
) |
Should perform a discrete collision check a state first configuring manager with config.
contact_results | The contact results to populate. It does not get cleared |
manager | A discrete contact manager |
state | First environment state |
config | CollisionCheckConfig used to specify collision check settings |
void tesseract_environment::checkTrajectoryState | ( | tesseract_collision::ContactResultMap & | contact_results, |
tesseract_collision::DiscreteContactManager & | manager, | ||
const tesseract_common::TransformMap & | state, | ||
const tesseract_collision::ContactRequest & | contact_request | ||
) |
Should perform a discrete collision check a state only passing contact_request to the manager.
contact_results | The contact results to populate. It does not get cleared |
manager | A discrete contact manager |
state | First environment state |
contact_request | Contact request passed to the manager |
void tesseract_environment::getActiveLinkNamesRecursive | ( | std::vector< std::string > & | active_links, |
const tesseract_scene_graph::SceneGraph & | scene_graph, | ||
const std::string & | current_link, | ||
bool | active | ||
) |
Get the active Link Names Recursively.
This currently only works for graphs that are trees. Need to create a generic method using boost::visitor TODO: Need to update using graph->getLinkChildren
active_links | |
scene_graph | |
current_link | |
active |
void tesseract_environment::load | ( | Archive & | ar, |
CommandType & | g, | ||
const unsigned int | version | ||
) |
void tesseract_environment::save | ( | Archive & | ar, |
const CommandType & | g, | ||
const unsigned int | version | ||
) |
void tesseract_environment::serialize | ( | Archive & | ar, |
CommandType & | g, | ||
const unsigned int | version | ||
) |