MoveIt Pro API
Core Behaviors for MoveIt Pro
Loading...
Searching...
No Matches
moveit_pro::behaviors::GetOrientedBoundingBoxFromPointCloud Class Reference

Given an input point cloud, finds the oriented bounding box (OBB) using pcl::MomentOfInertiaEstimation and outputs that as a center pose and box dimensions. The OBB orientation is disambiguated by choosing the orientation closest to the reference_pose. More...

#include <get_oriented_bounding_box_from_pointcloud.hpp>

Inheritance diagram for moveit_pro::behaviors::GetOrientedBoundingBoxFromPointCloud:
Collaboration diagram for moveit_pro::behaviors::GetOrientedBoundingBoxFromPointCloud:

Public Member Functions

 GetOrientedBoundingBoxFromPointCloud (const std::string &name, const BT::NodeConfiguration &config, const std::shared_ptr< BehaviorContext > &shared_resources)
 
- Public Member Functions inherited from moveit_pro::behaviors::AsyncBehaviorBase
 AsyncBehaviorBase (const std::string &name, const BT::NodeConfiguration &config, const std::shared_ptr< BehaviorContext > &shared_resources)
 
 ~AsyncBehaviorBase () override=default
 
BT::NodeStatus onStart () override
 Required implementation of BT::StatefulActionNode::onStart().
 
BT::NodeStatus onRunning () override
 Required implementation of BT::StatefulActionNode::onRunning().
 
void onHalted () override
 Required implementation of BT::StatefulActionNode::onHalted().
 
void resetStatus ()
 Resets the internal status of this node.
 
virtual tl::expected< void, std::string > doHalt ()
 Optionally implement additional work needed to cleanly interrupt the async process.
 
void notifyCanHalt ()
 Called when runAsync() finishes to notify onHalted() that the async process has finished.
 
- Public Member Functions inherited from moveit_pro::behaviors::SharedResourcesNode< BT::StatefulActionNode >
 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 ()
 

Detailed Description

Given an input point cloud, finds the oriented bounding box (OBB) using pcl::MomentOfInertiaEstimation and outputs that as a center pose and box dimensions. The OBB orientation is disambiguated by choosing the orientation closest to the reference_pose.

Data Port Name Port Type Object Type
point_cloud input sensor_msgs::msg::PointCloud2
reference_pose input geometry_msgs::msg::PoseStamped
box_center_pose output geometry_msgs::msg::PoseStamped
box_dimensions output std::vector<double>

Constructor & Destructor Documentation

◆ GetOrientedBoundingBoxFromPointCloud()

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

Member Function Documentation

◆ metadata()

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

◆ providedPorts()

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

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