123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111 |
- #ifndef MAINWINDOW_H
- #define MAINWINDOW_H
- #include <QMainWindow>
- #include <vtkActor.h>
- #include <vtkGenericOpenGLRenderWindow.h>
- #include <vtkLookupTable.h>
- #include <vtkNamedColors.h>
- #include <vtkNew.h>
- #include <vtkPlatonicSolidSource.h>
- #include <vtkPolyDataMapper.h>
- #include <vtkProperty.h>
- #include <vtkRenderWindow.h>
- #include <vtkRenderer.h>
- #include <vtkVersion.h>
- #include <QSurfaceFormat>
- #include <QVTKOpenGLNativeWidget.h>
- #include <pcl/visualization/pcl_visualizer.h>
- #include <pcl/point_types.h>//各种格式的点的头文件
- #include <pcl/io/pcd_io.h>
- #include <QKeyEvent>
- #include "ars548recv.h"
- #include "vtkCubeSource.h"
- #if VTK_VERSION_NUMBER >= 89000000000ULL
- #define VTK890 1
- #endif
- #define NUM_DET_MAX 800
- #define NUM_OBJ_MAX 50
- QT_BEGIN_NAMESPACE
- namespace Ui {
- class MainWindow;
- }
- QT_END_NAMESPACE
- class MainWindow : public QMainWindow
- {
- Q_OBJECT
- public:
- MainWindow(QWidget *parent = nullptr);
- ~MainWindow();
- public:
- void resizeEvent(QResizeEvent *event);
- void keyReleaseEvent(QKeyEvent *event) Q_DECL_OVERRIDE;
- signals:
- void detupdate();
- private slots:
- void onTimer();
- void on_actionReset_Camera_triggered();
- void on_actionFull_Screem_triggered();
- void onDetUpdate();
- void on_actionAll_triggered();
- void on_actionObjectAll_triggered();
- private:
- Ui::MainWindow *ui;
- boost::shared_ptr< pcl::visualization::PCLVisualizer > view;
- void DrawAxis();
- bool mbFull = false;
- ars548recv * mprecv;
- private:
- void threaddet();
- void threadobj();
- bool mbThreadRun = true;
- std::thread * mpthreaddet;
- std::thread * mpthreadobj;
- iv::radar::radar4ddetectarray mdetarray;
- std::mutex mmutexdet;
- bool mbdetupdate = false;
- iv::radar::radar4dobjectarray mobjarray;
- bool mbobjupdate = false;
- std::mutex mmutexobj;
- std::vector<std::string> mvectordetname;
- vtkNew<vtkSphereSource> sphereSource[NUM_OBJ_MAX];
- vtkNew<vtkPolyDataMapper> mapper[NUM_OBJ_MAX];
- vtkNew<vtkCubeSource> detSource[NUM_DET_MAX];
- vtkNew<vtkPolyDataMapper> detmapper[NUM_DET_MAX];
- };
- #endif // MAINWINDOW_H
|