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

Publishes a visualization marker that draws a line between two poses. More...

#include <visualize_line.hpp>

Inheritance diagram for moveit_pro::behaviors::VisualizeLine:
Collaboration diagram for moveit_pro::behaviors::VisualizeLine:

Public Member Functions

 VisualizeLine (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 > &shared_resources)
 Constructor for SharedResourcesNode. Called by BT::BehaviorTreeFactory when creating a new behavior tree containing this node.
 

Static Public Member Functions

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

Static Public Attributes

static constexpr auto kPortIDStartPose = "start_pose"
 
static constexpr auto kPortIDEndPose = "end_pose"
 
static constexpr auto kPortIDLineThickness = "line_thickness"
 
static constexpr auto kPortIDMarkerLifetime = "marker_lifetime"
 

Additional Inherited Members

- Protected Attributes inherited from moveit_pro::behaviors::SharedResourcesNode< BT::SyncActionNode >
std::shared_ptr< BehaviorContextshared_resources_
 

Detailed Description

Publishes a visualization marker that draws a line between two poses.

This Behavior composes a visualization_msgs::msg::MarkerArray message which contains a green LINE_LIST marker connecting the origins of two input poses. It publishes the message to a ROS topic named /visual_markers, which is then visualized in the UI.

Input poses can be given in any known frame. The Behavior will transform them to the world frame before visualization. If the transform cannot be found, the Behavior will return a FAILURE status.

Each instance gets a unique marker namespace (VisualizeLine1, VisualizeLine2, ...) so multiple lines can coexist without overwriting each other.

Data Port Name Port Type Object Type
start_pose input geometry_msgs::msg::PoseStamped
end_pose input geometry_msgs::msg::PoseStamped
line_thickness input double
marker_lifetime input double

Constructor & Destructor Documentation

◆ VisualizeLine()

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

Member Function Documentation

◆ metadata()

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

◆ providedPorts()

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

◆ tick()

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

Member Data Documentation

◆ kPortIDEndPose

constexpr auto moveit_pro::behaviors::VisualizeLine::kPortIDEndPose = "end_pose"
staticconstexpr

◆ kPortIDLineThickness

constexpr auto moveit_pro::behaviors::VisualizeLine::kPortIDLineThickness = "line_thickness"
staticconstexpr

◆ kPortIDMarkerLifetime

constexpr auto moveit_pro::behaviors::VisualizeLine::kPortIDMarkerLifetime = "marker_lifetime"
staticconstexpr

◆ kPortIDStartPose

constexpr auto moveit_pro::behaviors::VisualizeLine::kPortIDStartPose = "start_pose"
staticconstexpr

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