Add 2d ploting for axis lines

This commit is contained in:
2021-07-17 21:48:54 +02:00
parent feceb3287c
commit 42da1746b5
5 changed files with 43391 additions and 26 deletions

View File

@ -7,6 +7,7 @@
#include <QSlider>
#include <limits>
#include "../cameras.h"
#include "plot.h"
class CvImageViewer : public QWidget
{
@ -19,24 +20,33 @@ private:
bool fixedOnWidth_ = false;
size_t lastId_;
QMenu imageContextMenu_;
Plot plot;
QAction saveAction_;
QAction zoomAction_;
QAction resetAction_;
QAction statisticsAction_;
QAction xPlotAction_;
QAction yPlotAction_;
QRect imgrect_;
cv::Rect roi_;
QRect selectionRect_;
QLine xLine_;
QLine yLine_;
bool selectionStarted_ = false;
double clamp_ = std::numeric_limits<double>::max();
static QString lastSavePath_;
void transfromToSourceCoordinates(int inX, int inY, int& outX, int& outY);
void convertImage(cv::Mat image);
cv::Rect roiFromSelection();
private slots:
void saveImage();
void zoomToSelection();
void resetZoom();
void showSatDiag();
void plotOnX();
void plotOnY();
protected:
virtual void paintEvent(QPaintEvent* event) override;
@ -44,6 +54,7 @@ protected:
virtual void mouseMoveEvent(QMouseEvent *event) override;
virtual void mouseReleaseEvent(QMouseEvent *event) override;
virtual void resizeEvent(QResizeEvent *event) override;
virtual void leaveEvent(QEvent *event) override;
signals:
void sigValue(size_t x, size_t y, double value);