MoveIt Pro Behavior
Core Behaviors for MoveIt Pro
moveit_studio::behaviors::FindSingularCuboids Class Referencefinal

Finds well-singulated cuboids supported by a surface within a point cloud. More...

#include <find_singular_cuboids.hpp>

Inheritance diagram for moveit_studio::behaviors::FindSingularCuboids:
Collaboration diagram for moveit_studio::behaviors::FindSingularCuboids:

Public Member Functions

 FindSingularCuboids (const std::string &name, const BT::NodeConfiguration &config, const std::shared_ptr< BehaviorContext > &shared_resources)
 
BT::NodeStatus onStart () override
 
BT::NodeStatus onRunning () override
 
void onHalted () override
 
- Public Member Functions inherited from moveit_studio::behaviors::SharedResourcesNode< BT::StatefulActionNode >
 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. More...
 

Static Public Member Functions

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

Additional Inherited Members

- Protected Attributes inherited from moveit_studio::behaviors::SharedResourcesNode< BT::StatefulActionNode >
std::shared_ptr< BehaviorContextshared_resources_
 

Detailed Description

Finds well-singulated cuboids supported by a surface within a point cloud.

This behavior makes some assumptions about the environment:

  • The input point cloud must include a large flat surface, such as a tabletop or floor.
  • The filtering and cropping steps are expected to remove all points which are far away from this surface.
  • After filtering, all remaining clusters of points are assumed to be objects which are supported by the surface.

The output GraspableObjects will be transformed so that their parent frame is the frame defined by the base_frame config parameter.

Data Port Name Port Type Object Type
point_cloud input sensor_msgs::msg::PointCloud2
parameters input YAML::Node
detected_shapes output std::vector<moveit_msgs::msg::GraspableObject>

Constructor & Destructor Documentation

◆ FindSingularCuboids()

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

Member Function Documentation

◆ metadata()

BT::KeyValueVector moveit_studio::behaviors::FindSingularCuboids::metadata ( )
static

◆ onHalted()

void moveit_studio::behaviors::FindSingularCuboids::onHalted ( )
override

◆ onRunning()

BT::NodeStatus moveit_studio::behaviors::FindSingularCuboids::onRunning ( )
override

◆ onStart()

BT::NodeStatus moveit_studio::behaviors::FindSingularCuboids::onStart ( )
override

◆ providedPorts()

BT::PortsList moveit_studio::behaviors::FindSingularCuboids::providedPorts ( )
static

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