scanning_widget.h
Go to the documentation of this file.
1 #ifndef SCANNING_WIDGET_H
2 #define SCANNING_WIDGET_H
3 
4 #ifndef Q_MOC_RUN
5 #include <ros/ros.h>
6 #include <ros/package.h>
7 #include <ros/service.h>
8 #include <rviz/panel.h>
9 #include <std_msgs/String.h>
10 #include <fanuc_grinding_scanning/ScanningService.h>
11 #include <fanuc_grinding_publish_meshfile/PublishMeshfileService.h>
12 #endif
13 
14 class QDoubleSpinBox;
15 class QLineEdit;
16 class QPushButton;
17 class QTabWidget;
18 
20 {
21 class ScanningWidget : public QWidget
22 {
23  Q_OBJECT
24 public:
25  ScanningWidget(QWidget* parent = NULL);
26  void load(const rviz::Config& config);
27  void save(rviz::Config config);
28  void setScanningParams(const fanuc_grinding_scanning::ScanningService::Request &params);
29  void setPublishParams(const fanuc_grinding_publish_meshfile::PublishMeshfileService::Request &params);
30 
31 Q_SIGNALS:
32  void guiChanged();
33  void sendStatus(const QString status);
34  void sendMsgBox(const QString title, const QString msg, const QString info_msg);
35  void enablePanel(const bool);
36  void enableScanningButton();
37  void enablePanelAlignment();
39  void enableScanWidget();
40  void sendCADDatas(const QString cad_path);
41  void sendScanDatas(const QString scan_path);
42 
43 protected Q_SLOTS:
44  void connectToServices();
45  void triggerSave();
46  void updateGUI();
47  void updateInternalValues();
48  void browseCADFiles();
49  void browseTrajectoryFiles();
52  void browseScannedFiles();
54  void scanningButtonHandler();
59  void scanning();
60  void newStatusMessage(const std_msgs::String::ConstPtr &msg);
61 
62 protected:
63  const std::string package_name_;
64 
67  fanuc_grinding_scanning::ScanningService srv_scanning_;
69  fanuc_grinding_publish_meshfile::PublishMeshfileService srv_publish_meshfile_;
71 
72  // Import CAD
73  QLineEdit* cad_meshname_;
75  QPushButton* import_cad_button_;
76 
77  // Give a marker name for CAD file
79 
80  // Container for all the scan import widgets
82  QTabWidget *scan_choice_widget_;
83  QWidget *start_scan_tab_;
84  QWidget *import_scan_tab_;
85 
86  // Widget for scan
87  // YAML part in order to parse joint values
88  QLineEdit* traj_yaml_file_;
90  //Parameters for SLS-2
91  QLineEdit* sls_2_server_name_;
92  QLineEdit* sls_2_ip_address_;
93  //YAML part in order to parse calibration sls2 matrix value
95  QDoubleSpinBox* down_sampling_leaf_size_;
97 
98  //Widget for point cloud
99  QLineEdit* scan_file_;
101  QPushButton* import_scan_;
102 
103  // Widget for scan file
105 
106  QPushButton* start_scan_;
107 };
108 
109 } // End namespace
110 
111 #endif // SCANNING_WIDGET_H
#define NULL
void sendScanDatas(const QString scan_path)
void load(const rviz::Config &config)
void sendMsgBox(const QString title, const QString msg, const QString info_msg)
void sendCADDatas(const QString cad_path)
fanuc_grinding_publish_meshfile::PublishMeshfileService srv_publish_meshfile_
void setPublishParams(const fanuc_grinding_publish_meshfile::PublishMeshfileService::Request &params)
fanuc_grinding_scanning::ScanningService srv_scanning_
config
void newStatusMessage(const std_msgs::String::ConstPtr &msg)
void sendStatus(const QString status)
void setScanningParams(const fanuc_grinding_scanning::ScanningService::Request &params)


rviz_plugin
Author(s): Kévin Bolloré, Victor Lamoine - Institut Maupertuis
autogenerated on Thu Dec 19 2019 03:38:28