19 #ifndef __PCLVISTHRD_H__ 20 #define __PCLVISTHRD_H__ 27 #include <yarp/os/RateThread.h> 28 #include <yarp/os/Network.h> 30 #include <pcl/io/io.h> 31 #include <pcl/io/ply_io.h> 32 #include <pcl/io/pcd_io.h> 33 #include <pcl/point_types.h> 34 #include <pcl/visualization/pcl_visualizer.h> 35 #include <pcl/features/normal_3d.h> 36 #include <pcl/features/moment_of_inertia_estimation.h> 39 class VisThread:
public yarp::os::RateThread
48 boost::mutex updateModelMutex;
51 pcl::PointCloud<pcl::PointXYZRGB>::Ptr cloud;
52 boost::shared_ptr<pcl::visualization::PCLVisualizer> viewer;
75 void plotBB(
bool minBB);
81 void plotNormals(
double rS);
85 VisThread(
int period,
const std::string &_cloudname);
87 virtual bool threadInit();
91 virtual void threadRelease();
97 void addNormals(
double rS);
103 void addBoundingBox(
bool minBB);
108 void clearVisualizer();
114 void updateCloud(
const pcl::PointCloud<pcl::PointXYZRGB>::Ptr cloud_in);
120 void accumulateClouds(
bool accum);