12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879 |
- #include "eyemap.h"
- #include "ui_eyemap.h"
- #include <QApplication>
- #include <QPainter>
- #include <QPaintEvent>
- EyeMap::EyeMap(QWidget *parent) :
- QWidget(parent),
- ui(new Ui::EyeMap)
- {
- ui->setupUi(this);
- m_logger = spdlog::get("OSC");
- if(m_logger == nullptr)
- {
- SPDLOG_ERROR("获取 OSC logger 失败");
- return;
- }
- /* 自定义大小 */
- setFixedSize(1920, 1080);
- /* 初始化全局数据 */
- g_eyeMapMatrix.initEyeMapData(this->width(), this->height());
- SPDLOG_LOGGER_INFO(m_logger, "EyeMap 初始化成功");
- }
- EyeMap::~EyeMap()
- {
-
- delete ui;
- }
- /**
- * @brief 绘制图形
- *
- * @param event
- */
- void EyeMap::paintEvent(QPaintEvent *event)
- {
- QPainter painter(this);
-
- QPen pen;
- pen.setColor(Qt::black);
- pen.setWidth(1);
- pen.setStyle(Qt::SolidLine);
- QBrush brush;
- brush.setColor(Qt::yellow);
- brush.setStyle(Qt::SolidPattern);
-
- painter.setRenderHint(QPainter::Antialiasing, true);
- /* 绘制背景 */
- painter.setPen(pen);
- painter.setBrush(brush);
- // painter.drawRect(0, 0, 1600, 900);
- /* 绘制刻度 */
- /* 绘制网格 */
-
- /* 绘制眼图,就是绘制 1000 * 256 个矩形 */
- painter.setPen(QPen(Qt::NoPen));
- g_eyeMapMatrix.mutexEyeData.lock();
- for(int i = 0; i < 1000; i++)
- {
- for(int j = 0; j < 256; j++)
- {
- // if(g_eyeMapMatrix.dataMatrix[i][j].isDraw == false)
- // {
- // continue;
- // }
- painter.setBrush(QBrush(g_eyeMapMatrix.dataMatrix[i][j].color));
- painter.drawRect(g_eyeMapMatrix.dataMatrix[i][j].rect);
- }
- }
- g_eyeMapMatrix.mutexEyeData.unlock();
- event->accept();
- }
|