SACSegmentationFromNormals represents the PCL nodelet segmentation class for Sample Consensus methods and models that require the use of surface normals for estimation. More...
#include <sac_segmentation.h>

| Public Member Functions | |
| std::string | getInputTFframe () | 
| Get the TF frame the input PointCloud should be transformed into before processing.  More... | |
| std::string | getOutputTFframe () | 
| Get the TF frame the PointCloud should be transformed into after processing.  More... | |
| void | setInputTFframe (std::string tf_frame) | 
| Set the input TF frame the data should be transformed into before processing, if input.header.frame_id is different.  More... | |
| void | setOutputTFframe (std::string tf_frame) | 
| Set the output TF frame the data should be transformed into after processing.  More... | |
|  Public Member Functions inherited from pcl_ros::SACSegmentation | |
| std::string | getInputTFframe () | 
| Get the TF frame the input PointCloud should be transformed into before processing.  More... | |
| std::string | getOutputTFframe () | 
| Get the TF frame the PointCloud should be transformed into after processing.  More... | |
| SACSegmentation () | |
| Constructor.  More... | |
| void | setInputTFframe (std::string tf_frame) | 
| Set the input TF frame the data should be transformed into before processing, if input.header.frame_id is different.  More... | |
| void | setOutputTFframe (std::string tf_frame) | 
| Set the output TF frame the data should be transformed into after processing.  More... | |
|  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 | axis_callback (const pcl_msgs::ModelCoefficientsConstPtr &model) | 
| Model callback.  More... | |
| void | config_callback (SACSegmentationFromNormalsConfig &config, uint32_t level) | 
| Dynamic reconfigure callback.  More... | |
| void | input_callback (const PointCloudConstPtr &cloud) | 
| Input point cloud callback. Because we want to use the same synchronizer object, we push back empty elements with the same timestamp.  More... | |
| void | input_normals_indices_callback (const PointCloudConstPtr &cloud, const PointCloudNConstPtr &cloud_normals, const PointIndicesConstPtr &indices) | 
| Input point cloud callback.  More... | |
| virtual void | onInit () | 
| Nodelet initialization routine.  More... | |
| virtual void | subscribe () | 
| LazyNodelet connection routine.  More... | |
| virtual void | unsubscribe () | 
|  Protected Member Functions inherited from pcl_ros::SACSegmentation | |
| void | config_callback (SACSegmentationConfig &config, uint32_t level) | 
| Dynamic reconfigure callback.  More... | |
| void | indices_callback (const PointIndicesConstPtr &indices) | 
| Indices callback. Used when latched_indices_ is set.  More... | |
| void | input_callback (const PointCloudConstPtr &input) | 
| Input callback. Used when latched_indices_ is set.  More... | |
| void | input_indices_callback (const PointCloudConstPtr &cloud, const PointIndicesConstPtr &indices) | 
| Input point cloud callback. Used when use_indices is set.  More... | |
|  Protected Member Functions inherited from pcl_ros::PCLNodelet | |
| bool | isValid (const ModelCoefficientsConstPtr &, const std::string &="model") | 
| Test whether a given ModelCoefficients message is "valid" (i.e., has values).  More... | |
| 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... | |
|  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::CallbackQueueInterface & | getMTCallbackQueue () const | 
| ros::NodeHandle & | getMTNodeHandle () const | 
| ros::NodeHandle & | getMTPrivateNodeHandle () const | 
| const V_string & | getMyArgv () const | 
| const std::string & | getName () const | 
| ros::NodeHandle & | getNodeHandle () const | 
| ros::NodeHandle & | getPrivateNodeHandle () const | 
| const M_string & | getRemappingArgs () const | 
| ros::CallbackQueueInterface & | getSTCallbackQueue () const | 
| std::string | getSuffixedName (const std::string &suffix) const | 
| Protected Attributes | |
| message_filters::PassThrough< PointIndices > | nf_ | 
| Null passthrough filter, used for pushing empty elements in the synchronizer.  More... | |
| boost::shared_ptr< dynamic_reconfigure::Server< SACSegmentationFromNormalsConfig > > | srv_ | 
| Pointer to a dynamic reconfigure service.  More... | |
| ros::Subscriber | sub_axis_ | 
| The input PointCloud subscriber.  More... | |
| message_filters::Subscriber< PointCloudN > | sub_normals_filter_ | 
| The normals PointCloud subscriber filter.  More... | |
| 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::SACSegmentation | |
| PointIndices | indices_ | 
| Pointer to a set of indices stored internally. (used when latched_indices_ is set).  More... | |
| int | min_inliers_ | 
| message_filters::PassThrough< pcl_msgs::PointIndices > | nf_pi_ | 
| Null passthrough filter, used for pushing empty elements in the synchronizer.  More... | |
| ros::Publisher | pub_indices_ | 
| The output PointIndices publisher.  More... | |
| ros::Publisher | pub_model_ | 
| The output ModelCoefficients publisher.  More... | |
| boost::shared_ptr< dynamic_reconfigure::Server< SACSegmentationConfig > > | srv_ | 
| Pointer to a dynamic reconfigure service.  More... | |
| ros::Subscriber | sub_input_ | 
| The input PointCloud subscriber.  More... | |
| 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< PointIndices > | sub_indices_filter_ | 
| The message filter subscriber for PointIndices.  More... | |
| message_filters::Subscriber< PointCloud > | sub_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::NodeHandle > | nh_ | 
| boost::shared_ptr< ros::NodeHandle > | pnh_ | 
| std::vector< ros::Publisher > | publishers_ | 
| ros::WallTimer | timer_ever_subscribed_ | 
| bool | verbose_connection_ | 
| Private Types | |
| typedef pcl::PointCloud< pcl::PointXYZ > | PointCloud | 
| typedef boost::shared_ptr< const PointCloud > | PointCloudConstPtr | 
| typedef pcl::PointCloud< pcl::Normal > | PointCloudN | 
| typedef boost::shared_ptr< const PointCloudN > | PointCloudNConstPtr | 
| typedef boost::shared_ptr< PointCloudN > | PointCloudNPtr | 
| typedef boost::shared_ptr< PointCloud > | PointCloudPtr | 
| Private Attributes | |
| pcl::SACSegmentationFromNormals< pcl::PointXYZ, pcl::Normal > | impl_ | 
| The PCL implementation used.  More... | |
| boost::mutex | mutex_ | 
| Internal mutex.  More... | |
| boost::shared_ptr< message_filters::Synchronizer< sync_policies::ApproximateTime< PointCloud, PointCloudN, PointIndices > > > | sync_input_normals_indices_a_ | 
| Synchronized input, normals, and indices.  More... | |
| boost::shared_ptr< message_filters::Synchronizer< sync_policies::ExactTime< PointCloud, PointCloudN, PointIndices > > > | sync_input_normals_indices_e_ | 
| Additional Inherited Members | |
|  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 PointCloud > | PointCloudConstPtr | 
| typedef boost::shared_ptr< PointCloud > | PointCloudPtr | 
| typedef pcl_msgs::PointIndices | PointIndices | 
| typedef PointIndices::ConstPtr | PointIndicesConstPtr | 
| typedef PointIndices::Ptr | PointIndicesPtr | 
SACSegmentationFromNormals represents the PCL nodelet segmentation class for Sample Consensus methods and models that require the use of surface normals for estimation.
Definition at line 181 of file sac_segmentation.h.
| 
 | private | 
Definition at line 183 of file sac_segmentation.h.
| 
 | private | 
Definition at line 185 of file sac_segmentation.h.
| 
 | private | 
Definition at line 187 of file sac_segmentation.h.
| 
 | private | 
Definition at line 189 of file sac_segmentation.h.
Definition at line 188 of file sac_segmentation.h.
Definition at line 184 of file sac_segmentation.h.
| 
 | protected | 
Model callback.
| model | the sample consensus model found | 
Definition at line 503 of file sac_segmentation.cpp.
| 
 | protected | 
Dynamic reconfigure callback.
| config | the config object | 
| level | the dynamic reconfigure level | 
Definition at line 520 of file sac_segmentation.cpp.
| 
 | inline | 
Get the TF frame the input PointCloud should be transformed into before processing.
Definition at line 198 of file sac_segmentation.h.
| 
 | inline | 
Get the TF frame the PointCloud should be transformed into after processing.
Definition at line 206 of file sac_segmentation.h.
| 
 | inlineprotected | 
Input point cloud callback. Because we want to use the same synchronizer object, we push back empty elements with the same timestamp.
Definition at line 224 of file sac_segmentation.h.
| 
 | protected | 
Input point cloud callback.
| cloud | the pointer to the input point cloud | 
| cloud_normals | the pointer to the input point cloud normals | 
| indices | the pointer to the input point cloud indices | 
DEBUG
Definition at line 586 of file sac_segmentation.cpp.
| 
 | protectedvirtual | 
Nodelet initialization routine.
Reimplemented from pcl_ros::SACSegmentation.
Definition at line 363 of file sac_segmentation.cpp.
| 
 | inline | 
Set the input TF frame the data should be transformed into before processing, if input.header.frame_id is different.
| tf_frame | the TF frame the input PointCloud should be transformed into before processing | 
Definition at line 195 of file sac_segmentation.h.
| 
 | inline | 
Set the output TF frame the data should be transformed into after processing.
| tf_frame | the TF frame the PointCloud should be transformed into after processing | 
Definition at line 203 of file sac_segmentation.h.
| 
 | protectedvirtual | 
LazyNodelet connection routine.
Reimplemented from pcl_ros::SACSegmentation.
Definition at line 446 of file sac_segmentation.cpp.
| 
 | protectedvirtual | 
Reimplemented from pcl_ros::SACSegmentation.
Definition at line 490 of file sac_segmentation.cpp.
| 
 | private | 
The PCL implementation used.
Definition at line 274 of file sac_segmentation.h.
| 
 | private | 
Internal mutex.
Definition at line 271 of file sac_segmentation.h.
| 
 | protected | 
Null passthrough filter, used for pushing empty elements in the synchronizer.
Definition at line 233 of file sac_segmentation.h.
| 
 | protected | 
Pointer to a dynamic reconfigure service.
Definition at line 217 of file sac_segmentation.h.
| 
 | protected | 
The input PointCloud subscriber.
Definition at line 214 of file sac_segmentation.h.
| 
 | protected | 
The normals PointCloud subscriber filter.
Definition at line 211 of file sac_segmentation.h.
| 
 | private | 
Synchronized input, normals, and indices.
Definition at line 277 of file sac_segmentation.h.
| 
 | private | 
Definition at line 278 of file sac_segmentation.h.
| 
 | protected | 
The input TF frame the data should be transformed into, if input.header.frame_id is different.
Definition at line 236 of file sac_segmentation.h.
| 
 | protected | 
The original data input TF frame.
Definition at line 238 of file sac_segmentation.h.
| 
 | protected | 
The output TF frame the data should be transformed into, if input.header.frame_id is different.
Definition at line 240 of file sac_segmentation.h.