PCLGraspModel.h
Go to the documentation of this file.
00001 
00013 #ifndef RAIL_PICK_AND_PLACE_PCL_GRASP_MODEL_H_
00014 #define RAIL_PICK_AND_PLACE_PCL_GRASP_MODEL_H_
00015 
00016 // ROS
00017 #include <graspdb/GraspModel.h>
00018 
00019 // PCL
00020 #include <pcl/point_cloud.h>
00021 #include <pcl/point_types.h>
00022 
00023 namespace rail
00024 {
00025 namespace pick_and_place
00026 {
00027 
00036 class PCLGraspModel : public graspdb::GraspModel
00037 {
00038 public:
00047   PCLGraspModel(const graspdb::GraspModel &grasp_model = graspdb::GraspModel());
00048 
00056   bool isOriginal() const;
00057 
00065   void setOriginal(const bool original);
00066 
00074   const pcl::PointCloud<pcl::PointXYZRGB>::Ptr &getPCLPointCloud() const;
00075 
00084   const sensor_msgs::PointCloud2 &getPointCloud() const;
00085 
00094   sensor_msgs::PointCloud2 &getPointCloud();
00095 
00103   void setPointCloud(const sensor_msgs::PointCloud2 &point_cloud);
00104 
00112   double getAverageRed() const;
00113 
00121   double getAverageGreen() const;
00122 
00130   double getAverageBlue() const;
00131 
00139   graspdb::GraspModel toGraspModel() const;
00140 
00141 private:
00143   bool original_;
00145   pcl::PointCloud<pcl::PointXYZRGB>::Ptr pc_;
00147   double avg_r_, avg_g_, avg_b_;
00148 };
00149 
00150 }
00151 }
00152 
00153 #endif


rail_recognition
Author(s): David Kent , Russell Toris , bhetherman
autogenerated on Thu Jun 6 2019 19:44:08