MoveIt Pro API
Core Behaviors for MoveIt Pro
Loading...
Searching...
No Matches
moveit_pro::behaviors::SetupMTCAddCollisionMesh Class Referencefinal

Append an MTC ModifyPlanningScene stage that adds a mesh collision object to the planning scene during MTC task execution. More...

#include <setup_mtc_add_collision_mesh.hpp>

Inheritance diagram for moveit_pro::behaviors::SetupMTCAddCollisionMesh:
Collaboration diagram for moveit_pro::behaviors::SetupMTCAddCollisionMesh:

Public Member Functions

 SetupMTCAddCollisionMesh (const std::string &name, const BT::NodeConfiguration &config, const std::shared_ptr< BehaviorContext > &shared_resources)
 
BT::NodeStatus tick () override
 
- Public Member Functions inherited from moveit_pro::behaviors::SharedResourcesNode< BT::SyncActionNode >
 SharedResourcesNode (const std::string &name, const BT::NodeConfiguration &config, const std::shared_ptr< BehaviorContext > &behavior_context)
 Constructor for SharedResourcesNode. Called by BT::BehaviorTreeFactory when creating a new behavior tree containing this node.
 
const std::shared_ptr< BehaviorContext > & getBehaviorContext () const
 

Static Public Member Functions

static BT::PortsList providedPorts ()
 
static BT::KeyValueVector metadata ()
 

Static Public Attributes

static constexpr auto kPortIDTask = "task"
 
static constexpr auto kPortIDObjectId = "object_id"
 
static constexpr auto kPortIDMeshFilePath = "mesh_file_path"
 
static constexpr auto kPortIDPose = "pose"
 
static constexpr auto kPortIDScale = "scale"
 
static constexpr auto kPortIDOverwrite = "overwrite"
 

Detailed Description

Append an MTC ModifyPlanningScene stage that adds a mesh collision object to the planning scene during MTC task execution.

MTC stage equivalent of AddCollisionMesh. The Behavior only appends the stage at Behavior-tick time; the scene change happens later, when MTC's planner executes the task. By default the stage fails to plan when a world object with the same id already exists in the planned scene; set overwrite to true to replace it instead. That check runs against the MTC pipeline scene, never the live scene.

Data Port Name Port Type Object Type
task Bidirectional std::shared_ptr<moveit_pro::task_constructor::Task>
object_id Input std::string
mesh_file_path Input std::string
pose Input geometry_msgs::msg::PoseStamped
scale Input std::vector<double>
overwrite Input bool

Constructor & Destructor Documentation

◆ SetupMTCAddCollisionMesh()

moveit_pro::behaviors::SetupMTCAddCollisionMesh::SetupMTCAddCollisionMesh ( const std::string &  name,
const BT::NodeConfiguration &  config,
const std::shared_ptr< BehaviorContext > &  shared_resources 
)

Member Function Documentation

◆ metadata()

BT::KeyValueVector moveit_pro::behaviors::SetupMTCAddCollisionMesh::metadata ( )
static

◆ providedPorts()

BT::PortsList moveit_pro::behaviors::SetupMTCAddCollisionMesh::providedPorts ( )
static

◆ tick()

BT::NodeStatus moveit_pro::behaviors::SetupMTCAddCollisionMesh::tick ( )
override

Member Data Documentation

◆ kPortIDMeshFilePath

constexpr auto moveit_pro::behaviors::SetupMTCAddCollisionMesh::kPortIDMeshFilePath = "mesh_file_path"
staticconstexpr

◆ kPortIDObjectId

constexpr auto moveit_pro::behaviors::SetupMTCAddCollisionMesh::kPortIDObjectId = "object_id"
staticconstexpr

◆ kPortIDOverwrite

constexpr auto moveit_pro::behaviors::SetupMTCAddCollisionMesh::kPortIDOverwrite = "overwrite"
staticconstexpr

◆ kPortIDPose

constexpr auto moveit_pro::behaviors::SetupMTCAddCollisionMesh::kPortIDPose = "pose"
staticconstexpr

◆ kPortIDScale

constexpr auto moveit_pro::behaviors::SetupMTCAddCollisionMesh::kPortIDScale = "scale"
staticconstexpr

◆ kPortIDTask

constexpr auto moveit_pro::behaviors::SetupMTCAddCollisionMesh::kPortIDTask = "task"
staticconstexpr

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