|
@@ -312,10 +312,33 @@ void MainWindow::CreateView()
|
|
|
mmyview = new MyView(ui->centralwidget);
|
|
|
mmyview->setObjectName(QStringLiteral("graphicsView"));
|
|
|
mmyview->setGeometry(QRect(30, 30, 600, 600));
|
|
|
-
|
|
|
mmyview->setCacheMode(mmyview->CacheBackground);
|
|
|
|
|
|
+ mmyviewLeft = new MyView(ui->centralwidget);
|
|
|
+ mmyviewLeft->setObjectName(QStringLiteral("graphicsView"));
|
|
|
+ mmyviewLeft->setGeometry(QRect(30, 30, 600, 600));
|
|
|
+ mmyviewLeft->setCacheMode(mmyviewLeft->CacheBackground);
|
|
|
+
|
|
|
+ mmyviewRear = new MyView(ui->centralwidget);
|
|
|
+ mmyviewRear->setObjectName(QStringLiteral("graphicsView"));
|
|
|
+ mmyviewRear->setGeometry(QRect(30, 30, 600, 600));
|
|
|
+ mmyviewRear->setCacheMode(mmyviewRear->CacheBackground);
|
|
|
+
|
|
|
+ mmyviewRight = new MyView(ui->centralwidget);
|
|
|
+ mmyviewRight->setObjectName(QStringLiteral("graphicsView"));
|
|
|
+ mmyviewRight->setGeometry(QRect(30, 30, 600, 600));
|
|
|
+ mmyviewRight->setCacheMode(mmyviewRight->CacheBackground);
|
|
|
+
|
|
|
mscene = new QGraphicsScene;
|
|
|
+ mpsceneImg[0] = mscene;
|
|
|
+ mpsceneImg[1] = new QGraphicsScene;
|
|
|
+ mpsceneImg[2] = new QGraphicsScene;
|
|
|
+ mpsceneImg[3] = new QGraphicsScene;
|
|
|
+
|
|
|
+ mpviewImg[0] = mmyview;
|
|
|
+ mpviewImg[1] = mmyviewRear;
|
|
|
+ mpviewImg[2] = mmyviewLeft;
|
|
|
+ mpviewImg[3] = mmyviewRight;
|
|
|
|
|
|
ui->radioButton_Null->setChecked(true);
|
|
|
|
|
@@ -337,6 +360,10 @@ void MainWindow::keyPressEvent(QKeyEvent *event)
|
|
|
|
|
|
void MainWindow::keyReleaseEvent(QKeyEvent *event)
|
|
|
{
|
|
|
+ if(event->key() == Qt::Key_Escape)
|
|
|
+ {
|
|
|
+ showNormal();
|
|
|
+ }
|
|
|
if(!event->isAutoRepeat())mPressKeys.remove(event->key());
|
|
|
qDebug("key count is %d",mPressKeys.count());
|
|
|
}
|
|
@@ -359,6 +386,24 @@ void MainWindow::resizeEvent(QResizeEvent *event)
|
|
|
int nfrontsize_y = sizemain.height() * 2/3;
|
|
|
mmyview->setGeometry(nfrontpos_x,nfrontpos_y,nfrontsize_x,nfrontsize_y);
|
|
|
|
|
|
+ int nleftpos_x = 0;
|
|
|
+ int nleftpos_y = 0;
|
|
|
+ int nleftsize_x = sizemain.width()/3;
|
|
|
+ int nleftsize_y = sizemain.height()/3;
|
|
|
+ mmyviewLeft->setGeometry(nleftpos_x,nleftpos_y,nleftsize_x,nleftsize_y);
|
|
|
+
|
|
|
+ int nrearpos_x = sizemain.width()/3;
|
|
|
+ int nrearpos_y = 0;
|
|
|
+ int nrearsize_x = sizemain.width()/3;
|
|
|
+ int nrearsize_y = sizemain.height()/3;
|
|
|
+ mmyviewRear->setGeometry(nrearpos_x,nrearpos_y,nrearsize_x,nrearsize_y);
|
|
|
+
|
|
|
+ int nrightpos_x = sizemain.width() * 2/3;
|
|
|
+ int nrightpos_y = 0;
|
|
|
+ int nrightsize_x = sizemain.width()/3;
|
|
|
+ int nrightsize_y = sizemain.height()/3;
|
|
|
+ mmyviewRight->setGeometry(nrightpos_x,nrightpos_y,nrightsize_x,nrightsize_y);
|
|
|
+
|
|
|
// mppicshow->SetGeometry(10+sizemain.width()/2+10,10,sizemain.width()/2-30,sizemain.height()*3/5);
|
|
|
|
|
|
// ui->lineEdit_lat->setGeometry(sizemain.width()-100,10,90,30);
|
|
@@ -445,6 +490,15 @@ void MainWindow::resizeEvent(QResizeEvent *event)
|
|
|
double fscale2 = (sizemain.height()*2/3)/1080.0;
|
|
|
if(fscale > fscale2) fscale = fscale2;
|
|
|
mmyview->viewscaleto(fscale);
|
|
|
+
|
|
|
+ int i;
|
|
|
+ for(i=1;i<NUM_CAM;i++)
|
|
|
+ {
|
|
|
+ fscale = (sizemain.width()*1/3)/1920.0;
|
|
|
+ fscale2 = (sizemain.height()*1/3)/1080.0;
|
|
|
+ if(fscale > fscale2) fscale = fscale2;
|
|
|
+ mpviewImg[i]->viewscaleto(fscale);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
|
|
@@ -779,19 +833,36 @@ void MainWindow::onTimerUpdateView()
|
|
|
|
|
|
void MainWindow::paintEvent(QPaintEvent *)
|
|
|
{
|
|
|
- if(mbCamUpdate[0])
|
|
|
+ int i;
|
|
|
+ for(i=0;i<NUM_CAM;i++)
|
|
|
{
|
|
|
- std::cout<<" copy image. "<<std::endl;
|
|
|
- mMutexCam[0].lock();
|
|
|
- QImage image = mpImageCam[0]->copy();
|
|
|
- mbCamUpdate[0] = false;
|
|
|
- mMutexCam[0].unlock();
|
|
|
- // QImage image = mpPicView->GetImage();
|
|
|
- mscene->clear();
|
|
|
- mscene->addPixmap(QPixmap::fromImage(image));
|
|
|
- mmyview->setScene(mscene);
|
|
|
- mmyview->show();
|
|
|
+ if(mbCamUpdate[i])
|
|
|
+ {
|
|
|
+ std::cout<<" copy image. "<<std::endl;
|
|
|
+ mMutexCam[i].lock();
|
|
|
+ QImage image = mpImageCam[i]->copy();
|
|
|
+ mbCamUpdate[i] = false;
|
|
|
+ mMutexCam[i].unlock();
|
|
|
+ // QImage image = mpPicView->GetImage();
|
|
|
+ mpsceneImg[i]->clear();
|
|
|
+ mpsceneImg[i]->addPixmap(QPixmap::fromImage(image));
|
|
|
+ mpviewImg[i]->setScene(mpsceneImg[i]);
|
|
|
+ mpviewImg[i]->show();
|
|
|
+ }
|
|
|
}
|
|
|
+// if(mbCamUpdate[0])
|
|
|
+// {
|
|
|
+// std::cout<<" copy image. "<<std::endl;
|
|
|
+// mMutexCam[0].lock();
|
|
|
+// QImage image = mpImageCam[0]->copy();
|
|
|
+// mbCamUpdate[0] = false;
|
|
|
+// mMutexCam[0].unlock();
|
|
|
+// // QImage image = mpPicView->GetImage();
|
|
|
+// mscene->clear();
|
|
|
+// mscene->addPixmap(QPixmap::fromImage(image));
|
|
|
+// mmyview->setScene(mscene);
|
|
|
+// mmyview->show();
|
|
|
+// }
|
|
|
if(!mpPicView->IsHaveNew())
|
|
|
{
|
|
|
return;
|
|
@@ -1037,7 +1108,12 @@ void MainWindow::threadpic(int ncampos)
|
|
|
int cx = pbuf->framewidth;
|
|
|
cv::Mat rgbImg(cy, cx,CV_8UC3);
|
|
|
|
|
|
- cv::cvtColor(pbuf->myuvImg, rgbImg, CV_YUV2RGB_I420);
|
|
|
+#ifndef USE_QSV
|
|
|
+ cv::cvtColor(pbuf->myuvImg, rgbImg, CV_YUV2RGB_I420);
|
|
|
+#endif
|
|
|
+#ifdef USE_QSV
|
|
|
+ cv::cvtColor(pbuf->myuvImg, rgbImg, CV_YUV2RGB_NV12);
|
|
|
+#endif
|
|
|
mph264decode[ncampos]->UnlockReadBuff(nindex);
|
|
|
|
|
|
mMutexCam[ncampos].lock();
|
|
@@ -1055,3 +1131,13 @@ void MainWindow::onCamUpdate(int ncampos)
|
|
|
{
|
|
|
update();
|
|
|
}
|
|
|
+
|
|
|
+void MainWindow::on_actionFullScreem_triggered()
|
|
|
+{
|
|
|
+ showFullScreen();
|
|
|
+}
|
|
|
+
|
|
|
+void MainWindow::on_actionNormal_triggered()
|
|
|
+{
|
|
|
+ showNormal();
|
|
|
+}
|