Initial commit
This commit is contained in:
36
src/ui/cvimageviewer.cpp
Normal file
36
src/ui/cvimageviewer.cpp
Normal file
@ -0,0 +1,36 @@
|
||||
#include "cvimageviewer.h"
|
||||
#include <QPicture>
|
||||
#include <QDebug>
|
||||
|
||||
CvImageViewer::CvImageViewer(QWidget *parent, size_t lastId) :
|
||||
QWidget(parent),
|
||||
lastId_(lastId)
|
||||
{
|
||||
qimage_.load(":/images/noimage.png");
|
||||
}
|
||||
|
||||
CvImageViewer::~CvImageViewer()
|
||||
{
|
||||
}
|
||||
|
||||
void CvImageViewer::setImage(Camera::Image img)
|
||||
{
|
||||
image_ = img.mat;
|
||||
if(image_.type() == CV_8UC3 || image_.type() == CV_8SC3)
|
||||
qimage_ = QImage(image_.data, image_.cols, image_.rows, image_.step, QImage::Format_RGB888);
|
||||
else if(image_.type() == CV_8UC1 || image_.type() == CV_8SC1)
|
||||
qimage_ = QImage(image_.data, image_.cols, image_.rows, image_.step, QImage::Format_Grayscale8);
|
||||
else if(image_.type() == CV_32FC1 || image_.type() == CV_64FC1)
|
||||
img.mat.convertTo(image_, CV_8UC1, 255, 0);
|
||||
update();
|
||||
}
|
||||
|
||||
void CvImageViewer::paintEvent(QPaintEvent* event)
|
||||
{
|
||||
Q_UNUSED(event)
|
||||
QPainter painter(this);
|
||||
if(!fixedOnWidth_)
|
||||
painter.drawImage(QRect((rect().width()-rect().height())/2, rect().y(), rect().height(), rect().height()), qimage_);
|
||||
else
|
||||
painter.drawImage(QRect(rect().x(), (rect().height()-rect().width())/2, rect().width(), rect().width()), qimage_);
|
||||
}
|
Reference in New Issue
Block a user