22 #ifndef __PLUGINS_PERCEPTION_TABLETOP_OBJECTS_VISUALIZATION_THREAD_H_ 23 #define __PLUGINS_PERCEPTION_TABLETOP_OBJECTS_VISUALIZATION_THREAD_H_ 25 #ifndef HAVE_VISUAL_DEBUGGING 26 # error TabletopVisualizationThread was disabled by build flags 29 #include "visualization_thread_base.h" 31 #include <core/threading/thread.h> 32 #include <core/threading/mutex.h> 33 #include <aspect/tf.h> 34 #include <aspect/configurable.h> 35 #include <plugins/ros/aspect/ros.h> 53 virtual void finalize();
55 virtual void visualize(
const std::string &frame_id,
56 Eigen::Vector4f &table_centroid,
57 Eigen::Vector4f &normal,
58 V_Vector4f &table_hull_vertices,
59 V_Vector4f &table_model_vertices,
60 V_Vector4f &good_table_hull_edges,
63 std::map<unsigned int, double> &obj_confidence,
64 std::map<unsigned int, signed int>& best_obj_guess)
throw();
67 void triangulate_hull();
71 std::string frame_id_;
72 Eigen::Vector4f table_centroid_;
73 Eigen::Vector4f normal_;
74 V_Vector4f table_hull_vertices_;
75 V_Vector4f table_model_vertices_;
76 V_Vector4f good_table_hull_edges_;
77 V_Vector4f table_triangle_vertices_;
80 std::map<unsigned int, double> obj_confidence_;
81 std::map<unsigned int, signed int> best_obj_guess_;
82 ros::Publisher *vispub_;
84 ros::Publisher *posepub_;
88 bool cfg_show_frustrum_;
89 float cfg_horizontal_va_;
90 float cfg_vertical_va_;
91 bool cfg_show_cvxhull_vertices_;
92 bool cfg_show_cvxhull_line_highlighting_;
93 bool cfg_show_cvxhull_vertex_ids_;
94 unsigned int cfg_duration_;
95 bool cfg_cylinder_fitting_;
96 std::string cfg_base_frame_;
98 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
Thread aspect to get access to a ROS node handle.
Thread class encapsulation of pthreads.
Base class for virtualization thread.
Thread aspect to access configuration data.
std::map< unsigned int, Eigen::Vector4f, std::less< unsigned int >, Eigen::aligned_allocator< std::pair< const unsigned int, Eigen::Vector4f > > > M_Vector4f
aligned map of vectors.
Mutex mutual exclusion lock.
Send Marker messages to rviz.