Wafer.h 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. #ifndef WAFER_H
  2. #define WAFER_H
  3. #pragma once
  4. #include <QWidget>
  5. #include <vector>
  6. #include <QMenu>
  7. #include "WaferGraphicsView.h"
  8. #include "DieItem.h"
  9. #include <CWaferMatrix.h>
  10. enum OperateMode {
  11. ModeImage, // 显示图片
  12. ModeView // 显示 view
  13. };
  14. class Wafer : public QWidget
  15. {
  16. Q_OBJECT
  17. public:
  18. explicit Wafer(int flag, QWidget *parent = nullptr);
  19. void UpdataGenerateTestData();
  20. /**晶圆
  21. */
  22. void UpdataVal(const std::vector<ns_mat::WAFER_MATRIX_POINT_INFO_STRUCT>& veWafer);
  23. void initFrom(QWidget *parent);
  24. void paintInitFrom(QWidget *parent);
  25. QPixmap getGlobalPixmap() const;
  26. QColor getColorByStatus(ns_mat::PICK_DIE_STATUS status);
  27. signals:
  28. void sendCoordinates(int x, int y);
  29. private:
  30. int Flag;
  31. QVector<ns_mat::WAFER_MATRIX_POINT_INFO_STRUCT> waferData;
  32. int rows, cols;
  33. int centerX, centerY;
  34. qreal radius;
  35. QMenu *contextMenu = nullptr;
  36. QPixmap globalPixmap;
  37. public:
  38. QGraphicsScene* scene = nullptr;
  39. WaferGraphicsView* view = nullptr;
  40. };
  41. #endif // WAFER_H