AddCollisionCylinder Class
Adds a cylinder-shaped CollisionObject to the planning scene. More...
Declaration
Included Headers
Base class
| class | AddCollisionObjectBase |
|
Abstract base for Behaviors that add a CollisionObject to the planning scene. More... | |
Public Constructors Index
| AddCollisionCylinder (const std::string &name, const BT::NodeConfiguration &config, const std::shared_ptr< BehaviorContext > &shared_resources) | |
| AddCollisionCylinder (const std::string &name, const BT::NodeConfiguration &config, const std::shared_ptr< BehaviorContext > &shared_resources, std::unique_ptr< PlanningSceneBridge > bridge) | |
Private Member Functions Index
| tl::expected< moveit_msgs::msg::CollisionObject, std::string > | buildCollisionObject () override |
|
Build the CollisionObject to apply to the planning scene. More... | |
Public Static Functions Index
| static BT::PortsList | providedPorts () |
| static BT::KeyValueVector | metadata () |
Description
Adds a cylinder-shaped CollisionObject to the planning scene.
Reads object_id, height, radius, and pose from the input ports and builds a cylinder-shaped CollisionObject (one SOLID_PRIMITIVE CYLINDER), then adds it to a planning scene. By default the Behavior modifies the live planning scene via service calls. Wire the planning_scene port to modify a supplied moveit_msgs::msg::PlanningScene message instead; the modified scene is written back to the same port and no services are called. See AddCollisionObjectBase for details on the two modes and the overwrite port semantics.
The cylinder axis lies along the local Z axis of the supplied pose.
Returns FAILURE when object_id is empty, when height or radius is non-finite or not greater than 0, when pose.header.frame_id is empty, when overwrite=false and a world entry with the same id is already present, when an entry with the same id is currently attached to the robot, or when a required service call fails in live scene mode.
| Data Port Name | Port Type | Object Type |
|---|---|---|
| object_id | input | std::string |
| height | input | double |
| radius | input | double |
| pose | input | geometry_msgs::msg::PoseStamped |
| overwrite | input | bool |
| planning_scene | bidirectional | moveit_msgs::msg::PlanningScene |
Definition at line 56 of file add_collision_cylinder.hpp.
Public Constructors
AddCollisionCylinder()
| explicit |
Declaration at line 59 of file add_collision_cylinder.hpp, definition at line 89 of file add_collision_cylinder.cpp.
AddCollisionCylinder()
| explicit |
Declaration at line 62 of file add_collision_cylinder.hpp, definition at line 95 of file add_collision_cylinder.cpp.
Private Member Functions
buildCollisionObject()
| virtual |
Build the CollisionObject to apply to the planning scene.
- Returns
The CollisionObject on success, or a descriptive error message on failure.
Declaration at line 70 of file add_collision_cylinder.hpp, definition at line 127 of file add_collision_cylinder.cpp.
Public Static Functions
metadata()
| static |
Declaration at line 67 of file add_collision_cylinder.hpp, definition at line 121 of file add_collision_cylinder.cpp.
providedPorts()
| static |
Declaration at line 66 of file add_collision_cylinder.hpp, definition at line 102 of file add_collision_cylinder.cpp.
The documentation for this class was generated from the following files:
Generated via doxygen2docusaurus 2.2.2 by Doxygen 1.9.8.