Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
pcl_ros::ProjectInliers Class Reference

ProjectInliers uses a model and a set of inlier indices from a PointCloud to project them into a separate PointCloud. More...

#include <project_inliers.h>

Inheritance diagram for pcl_ros::ProjectInliers:
Inheritance graph
[legend]

Public Member Functions

 ProjectInliers ()
 
- Public Member Functions inherited from pcl_ros::Filter
 Filter ()
 
- Public Member Functions inherited from pcl_ros::PCLNodelet
 PCLNodelet ()
 Empty constructor. More...
 
- Public Member Functions inherited from nodelet_topic_tools::NodeletLazy
 NodeletLazy ()
 
- Public Member Functions inherited from nodelet::Nodelet
void init (const std::string &name, const M_string &remapping_args, const V_string &my_argv, ros::CallbackQueueInterface *st_queue=NULL, ros::CallbackQueueInterface *mt_queue=NULL)
 
 Nodelet ()
 
virtual ~Nodelet ()
 

Protected Member Functions

void filter (const PointCloud2::ConstPtr &input, const IndicesPtr &indices, PointCloud2 &output)
 Call the actual filter. More...
 
- Protected Member Functions inherited from pcl_ros::Filter
virtual bool child_init (ros::NodeHandle &, bool &has_service)
 Child initialization routine. More...
 
void computePublish (const PointCloud2::ConstPtr &input, const IndicesPtr &indices)
 Call the child filter () method, optionally transform the result, and publish it. More...
 
- Protected Member Functions inherited from pcl_ros::PCLNodelet
bool isValid (const PointCloud2::ConstPtr &cloud, const std::string &topic_name="input")
 Test whether a given PointCloud message is "valid" (i.e., has points, and width and height are non-zero). More...
 
bool isValid (const PointCloudConstPtr &cloud, const std::string &topic_name="input")
 Test whether a given PointCloud message is "valid" (i.e., has points, and width and height are non-zero). More...
 
bool isValid (const PointIndicesConstPtr &, const std::string &="indices")
 Test whether a given PointIndices message is "valid" (i.e., has values). More...
 
bool isValid (const ModelCoefficientsConstPtr &, const std::string &="model")
 Test whether a given ModelCoefficients message is "valid" (i.e., has values). More...
 
- Protected Member Functions inherited from nodelet_topic_tools::NodeletLazy
ros::Publisher advertise (ros::NodeHandle &nh, std::string topic, int queue_size, bool latch=false)
 
virtual void connectionCallback (const ros::SingleSubscriberPublisher &pub)
 
virtual void onInitPostProcess ()
 
virtual void warnNeverSubscribedCallback (const ros::WallTimerEvent &event)
 
- Protected Member Functions inherited from nodelet::Nodelet
ros::CallbackQueueInterfacegetMTCallbackQueue () const
 
ros::NodeHandlegetMTNodeHandle () const
 
ros::NodeHandlegetMTPrivateNodeHandle () const
 
const V_stringgetMyArgv () const
 
const std::string & getName () const
 
ros::NodeHandlegetNodeHandle () const
 
ros::NodeHandlegetPrivateNodeHandle () const
 
const M_stringgetRemappingArgs () const
 
ros::CallbackQueueInterfacegetSTCallbackQueue () const
 
std::string getSuffixedName (const std::string &suffix) const
 

Private Member Functions

void input_indices_model_callback (const PointCloud2::ConstPtr &cloud, const PointIndicesConstPtr &indices, const ModelCoefficientsConstPtr &model)
 PointCloud2 + Indices + Model data callback. More...
 
virtual void onInit ()
 Nodelet initialization routine. More...
 
void subscribe ()
 NodeletLazy connection routine. More...
 
void unsubscribe ()
 Lazy transport unsubscribe routine. More...
 

Private Attributes

pcl::ProjectInliers< pcl::PCLPointCloud2 > impl_
 The PCL filter implementation used. More...
 
ModelCoefficientsConstPtr model_
 A pointer to the vector of model coefficients. More...
 
message_filters::Subscriber< ModelCoefficientssub_model_
 The message filter subscriber for model coefficients. More...
 
boost::shared_ptr< message_filters::Synchronizer< sync_policies::ApproximateTime< PointCloud2, PointIndices, ModelCoefficients > > > sync_input_indices_model_a_
 
boost::shared_ptr< message_filters::Synchronizer< sync_policies::ExactTime< PointCloud2, PointIndices, ModelCoefficients > > > sync_input_indices_model_e_
 Synchronized input, indices, and model coefficients. More...
 

Additional Inherited Members

- Public Types inherited from pcl_ros::Filter
typedef pcl::IndicesConstPtr IndicesConstPtr
 
typedef pcl::IndicesPtr IndicesPtr
 
typedef sensor_msgs::PointCloud2 PointCloud2
 
- Public Types inherited from pcl_ros::PCLNodelet
typedef pcl::IndicesConstPtr IndicesConstPtr
 
typedef pcl::IndicesPtr IndicesPtr
 
typedef pcl_msgs::ModelCoefficients ModelCoefficients
 
typedef ModelCoefficients::ConstPtr ModelCoefficientsConstPtr
 
typedef ModelCoefficients::Ptr ModelCoefficientsPtr
 
typedef pcl::PointCloud< pcl::PointXYZ > PointCloud
 
typedef sensor_msgs::PointCloud2 PointCloud2
 
typedef boost::shared_ptr< const PointCloudPointCloudConstPtr
 
typedef boost::shared_ptr< PointCloudPointCloudPtr
 
typedef pcl_msgs::PointIndices PointIndices
 
typedef PointIndices::ConstPtr PointIndicesConstPtr
 
typedef PointIndices::Ptr PointIndicesPtr
 
- Protected Attributes inherited from pcl_ros::Filter
std::string filter_field_name_
 The desired user filter field name. More...
 
double filter_limit_max_
 The maximum allowed filter value a point will be considered from. More...
 
double filter_limit_min_
 The minimum allowed filter value a point will be considered from. More...
 
bool filter_limit_negative_
 Set to true if we want to return the data outside (filter_limit_min_;filter_limit_max_). Default: false. More...
 
boost::mutex mutex_
 Internal mutex. More...
 
ros::Subscriber sub_input_
 The input PointCloud subscriber. More...
 
message_filters::Subscriber< PointCloud2sub_input_filter_
 
std::string tf_input_frame_
 The input TF frame the data should be transformed into, if input.header.frame_id is different. More...
 
std::string tf_input_orig_frame_
 The original data input TF frame. More...
 
std::string tf_output_frame_
 The output TF frame the data should be transformed into, if input.header.frame_id is different. More...
 
- Protected Attributes inherited from pcl_ros::PCLNodelet
bool approximate_sync_
 True if we use an approximate time synchronizer versus an exact one (false by default). More...
 
bool latched_indices_
 Set to true if the indices topic is latched. More...
 
int max_queue_size_
 The maximum queue size (default: 3). More...
 
ros::Publisher pub_output_
 The output PointCloud publisher. More...
 
message_filters::Subscriber< PointIndicessub_indices_filter_
 The message filter subscriber for PointIndices. More...
 
message_filters::Subscriber< PointCloudsub_input_filter_
 The message filter subscriber for PointCloud2. More...
 
tf::TransformListener tf_listener_
 TF listener object. More...
 
bool use_indices_
 Set to true if point indices are used. More...
 
- Protected Attributes inherited from nodelet_topic_tools::NodeletLazy
boost::mutex connection_mutex_
 
ConnectionStatus connection_status_
 
bool ever_subscribed_
 
bool lazy_
 
boost::shared_ptr< ros::NodeHandlenh_
 
boost::shared_ptr< ros::NodeHandlepnh_
 
std::vector< ros::Publisherpublishers_
 
ros::WallTimer timer_ever_subscribed_
 
bool verbose_connection_
 

Detailed Description

ProjectInliers uses a model and a set of inlier indices from a PointCloud to project them into a separate PointCloud.

Note
setFilterFieldName (), setFilterLimits (), and setFilterLimitNegative () are ignored.
Author
Radu Bogdan Rusu

Definition at line 56 of file project_inliers.h.

Constructor & Destructor Documentation

◆ ProjectInliers()

pcl_ros::ProjectInliers::ProjectInliers ( )
inline

Definition at line 59 of file project_inliers.h.

Member Function Documentation

◆ filter()

void pcl_ros::ProjectInliers::filter ( const PointCloud2::ConstPtr &  input,
const IndicesPtr indices,
PointCloud2 output 
)
inlineprotectedvirtual

Call the actual filter.

Parameters
inputthe input point cloud dataset
indicesthe input set of indices to use from input
outputthe resultant filtered dataset

Implements pcl_ros::Filter.

Definition at line 68 of file project_inliers.h.

◆ input_indices_model_callback()

void pcl_ros::ProjectInliers::input_indices_model_callback ( const PointCloud2::ConstPtr &  cloud,
const PointIndicesConstPtr indices,
const ModelCoefficientsConstPtr model 
)
private

PointCloud2 + Indices + Model data callback.

Definition at line 127 of file project_inliers.cpp.

◆ onInit()

void pcl_ros::ProjectInliers::onInit ( )
privatevirtual

Nodelet initialization routine.

Reimplemented from pcl_ros::Filter.

Definition at line 43 of file project_inliers.cpp.

◆ subscribe()

void pcl_ros::ProjectInliers::subscribe ( )
privatevirtual

NodeletLazy connection routine.

Reimplemented from pcl_ros::Filter.

Definition at line 87 of file project_inliers.cpp.

◆ unsubscribe()

void pcl_ros::ProjectInliers::unsubscribe ( )
privatevirtual

Lazy transport unsubscribe routine.

Reimplemented from pcl_ros::Filter.

Definition at line 114 of file project_inliers.cpp.

Member Data Documentation

◆ impl_

pcl::ProjectInliers<pcl::PCLPointCloud2> pcl_ros::ProjectInliers::impl_
private

The PCL filter implementation used.

Definition at line 94 of file project_inliers.h.

◆ model_

ModelCoefficientsConstPtr pcl_ros::ProjectInliers::model_
private

A pointer to the vector of model coefficients.

Definition at line 85 of file project_inliers.h.

◆ sub_model_

message_filters::Subscriber<ModelCoefficients> pcl_ros::ProjectInliers::sub_model_
private

The message filter subscriber for model coefficients.

Definition at line 88 of file project_inliers.h.

◆ sync_input_indices_model_a_

Definition at line 92 of file project_inliers.h.

◆ sync_input_indices_model_e_

boost::shared_ptr<message_filters::Synchronizer<sync_policies::ExactTime<PointCloud2, PointIndices, ModelCoefficients> > > pcl_ros::ProjectInliers::sync_input_indices_model_e_
private

Synchronized input, indices, and model coefficients.

Definition at line 91 of file project_inliers.h.


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


pcl_ros
Author(s): Open Perception, Julius Kammerl , William Woodall
autogenerated on Thu Feb 16 2023 03:08:03