diff --git a/3part/tadpole/include/tpBase/lpbengine.h b/3part/tadpole/include/tpBase/lpbengine.h index e95d01e..c93cb61 100644 Binary files a/3part/tadpole/include/tpBase/lpbengine.h and b/3part/tadpole/include/tpBase/lpbengine.h differ diff --git a/src/lpbdesigner/CDetectorUI.cpp b/src/lpbdesigner/CDetectorUI.cpp index 6a8ce11..aa2c028 100644 --- a/src/lpbdesigner/CDetectorUI.cpp +++ b/src/lpbdesigner/CDetectorUI.cpp @@ -1,5 +1,5 @@ #include "CDetectorUI.h" - +#define WINDOWS_ICON ":/resource/app.png" CDetectorUI::CDetectorUI() { m_pMainFrame = new CMainFrame; @@ -38,7 +38,7 @@ bool CDetectorUI::ShowMainFrame(class QWidget* parent) m_pMainFrame->setParent(parent); m_pMainFrame->setWindowFlags(Qt::Dialog | Qt::WindowMaximizeButtonHint | Qt::WindowCloseButtonHint); - m_pMainFrame->setWindowIcon(QIcon(":/image/leaper")); + m_pMainFrame->setWindowIcon(QIcon(WINDOWS_ICON)); m_pMainFrame->setWindowModality(Qt::ApplicationModal); m_pMainFrame->setAttribute(Qt::WA_ShowModal, true); diff --git a/src/lpbdesigner/DsgAlgoDlg.cpp b/src/lpbdesigner/DsgAlgoDlg.cpp index 0346b12..e152750 100644 --- a/src/lpbdesigner/DsgAlgoDlg.cpp +++ b/src/lpbdesigner/DsgAlgoDlg.cpp @@ -2,6 +2,9 @@ #include "ui_AlgoDlg.h" #include "qfiledialog.h" #include "QDesktopWidget" + +#define WINDOWS_ICON ":/resource/app.png" + #pragma execution_character_set("utf-8") CDsgAlgoDlg::CDsgAlgoDlg(QWidget *parent) : QDialog(parent), ui(new Ui::AlgoDlg) { @@ -9,7 +12,7 @@ CDsgAlgoDlg::CDsgAlgoDlg(QWidget *parent) : QDialog(parent), ui(new Ui::AlgoDlg) m_pTask = NULL; m_bAlgoChanged = false; ui->setupUi(this); - setWindowIcon(QIcon(":/img/resource/app.png")); + setWindowIcon(QIcon(WINDOWS_ICON)); connect(ui->pushButton, SIGNAL(clicked()), this, SLOT(OnOk())); connect(ui->pushButton_2, SIGNAL(clicked()), this, SLOT(OnCancel())); connect(ui->pushButton_4, SIGNAL(clicked()), this, SLOT(OnSelectAlgo())); diff --git a/src/lpbdesigner/DsgAlgorithmParamMgr.cpp b/src/lpbdesigner/DsgAlgorithmParamMgr.cpp index 9d6209d..7d9f1f8 100644 --- a/src/lpbdesigner/DsgAlgorithmParamMgr.cpp +++ b/src/lpbdesigner/DsgAlgorithmParamMgr.cpp @@ -1,7 +1,11 @@ #include "DsgAlgorithmParamMgr.h" #include "ui_AlgorithmParamMgrDlg.h" #include + +#define WINDOWS_ICON ":/resource/app.png" + #pragma execution_character_set("utf-8") + CDsgAlgorithmParamMgrDlg::CDsgAlgorithmParamMgrDlg(QWidget *parent) : QDialog(parent) { m_pTask = NULL; @@ -9,7 +13,7 @@ CDsgAlgorithmParamMgrDlg::CDsgAlgorithmParamMgrDlg(QWidget *parent) : QDialog(pa ui = new Ui::AlgorithmParamMgrDialog; ui->setupUi(this); m_type = PARAM_IN; - setWindowIcon(QIcon(":/img/resource/app.png")); + setWindowIcon(QIcon(WINDOWS_ICON)); connect(ui->pushButton_6, SIGNAL(clicked()), this, SLOT(accept())); connect(ui->pushButton_3, SIGNAL(clicked()), this, SLOT(OnAddParam())); connect(ui->pushButton_4, SIGNAL(clicked()), this, SLOT(OnEditParam())); @@ -217,7 +221,7 @@ bool CDsgAlgorithmParamMgrDlg::OnAddParam() return false; m_tParamDlg.setParent(this); m_tParamDlg.setWindowFlags(Qt::Dialog | Qt::WindowCloseButtonHint); - m_tParamDlg.setWindowIcon(QIcon(":/image/leaper")); + m_tParamDlg.setWindowIcon(QIcon(WINDOWS_ICON)); m_tParamDlg.setWindowModality(Qt::ApplicationModal); m_tParamDlg.setAttribute(Qt::WA_ShowModal, true); PLP_ALGORITHM_PARAM pParam = m_tParamDlg.ShowParamDlg(NULL); @@ -242,7 +246,7 @@ bool CDsgAlgorithmParamMgrDlg::OnDeleteParam() int nRowIndex = ui->tableWidget->currentRow(); if (nRowIndex != -1) { - QListitems = ui->tableWidget->selectedItems(); + QList items = ui->tableWidget->selectedItems(); QTableWidgetItem*item = items.at(0); if (item) { @@ -290,7 +294,7 @@ bool CDsgAlgorithmParamMgrDlg::OnEditParam() return false; m_tParamDlg.setParent(this); m_tParamDlg.setWindowFlags(Qt::Dialog | Qt::WindowCloseButtonHint); - m_tParamDlg.setWindowIcon(QIcon(":/image/leaper")); + m_tParamDlg.setWindowIcon(QIcon(WINDOWS_ICON)); m_tParamDlg.setWindowModality(Qt::ApplicationModal); m_tParamDlg.setAttribute(Qt::WA_ShowModal, true); m_tParamDlg.ShowParamDlg(pParam); diff --git a/src/lpbdesigner/DsgParamDlg.cpp b/src/lpbdesigner/DsgParamDlg.cpp index 7485bb8..c9e315b 100644 --- a/src/lpbdesigner/DsgParamDlg.cpp +++ b/src/lpbdesigner/DsgParamDlg.cpp @@ -1,5 +1,7 @@ #include "DsgParamDlg.h" #include "ui_ParamDlg.h" +#define WINDOWS_ICON ":/resource/app.png" + #pragma execution_character_set("utf-8") CDsgParamDlg::CDsgParamDlg(QWidget *parent) : QDialog(parent), m_valueCombox(this) { @@ -9,7 +11,7 @@ CDsgParamDlg::CDsgParamDlg(QWidget *parent) : QDialog(parent), m_valueCombox(thi m_type = PARAM_IN; ui->setupUi(this); - setWindowIcon(QIcon(":/img/resource/app.png")); + setWindowIcon(QIcon(WINDOWS_ICON)); ui->pushButton->setShortcut(QKeySequence::InsertParagraphSeparator); connect(ui->pushButton, SIGNAL(clicked()), this, SLOT(OnOk())); connect(ui->pushButton_2, SIGNAL(clicked()), this, SLOT(OnCancel())); @@ -148,7 +150,7 @@ bool CDsgParamDlg::OnShowRoiDlg() if (m_pTask->GetTaskInfo()->templateImg.data == NULL) { QMessageBox infobox(QMessageBox::Critical, tr("提示"), tr("请设置标定图再进行ROI标定!"), QMessageBox::Yes, this); - infobox.setWindowIcon(QIcon(":/image/leaper")); + infobox.setWindowIcon(QIcon(WINDOWS_ICON)); infobox.setButtonText(QMessageBox::Yes, tr("确认")); infobox.exec(); return false; @@ -156,7 +158,7 @@ bool CDsgParamDlg::OnShowRoiDlg() m_tRoiData.img = m_pTask->GetTaskInfo()->templateImg; m_pRoiDlg->setParent(this); m_pRoiDlg->setWindowFlags(Qt::Dialog | Qt::WindowCloseButtonHint); - m_pRoiDlg->setWindowIcon(QIcon(":/image/leaper")); + m_pRoiDlg->setWindowIcon(QIcon(WINDOWS_ICON)); m_pRoiDlg->setWindowModality(Qt::ApplicationModal); m_pRoiDlg->setAttribute(Qt::WA_ShowModal, true); m_tRoiData = m_pRoiDlg->ShowRoiDlg(m_tRoiData); diff --git a/src/lpbdesigner/DsgRoiDlg.cpp b/src/lpbdesigner/DsgRoiDlg.cpp index 94b499b..ec098a8 100644 --- a/src/lpbdesigner/DsgRoiDlg.cpp +++ b/src/lpbdesigner/DsgRoiDlg.cpp @@ -2,6 +2,9 @@ #include "ui_RoiDlg.h" #include "colossusbase.h" #include "QPalette" + +#define WINDOWS_ICON ":/resource/app.png" + #pragma execution_character_set("utf-8") bool subDevListSort(const Item_List &info1, const Item_List &info2) @@ -36,7 +39,7 @@ CDsgRoiDlg::CDsgRoiDlg(QWidget *parent) : QDialog(parent), ui(new Ui::RoiDlg) m_pTask = NULL; ui->setupUi(this); - setWindowIcon(QIcon(":/img/resource/app.png")); + setWindowIcon(QIcon(WINDOWS_ICON)); SystemStateInfo::rgb = QColor(255, 0, 0).rgb(); connect(ui->pushButton, SIGNAL(clicked()), this, SLOT(OnOk())); connect(ui->pushButton_2, SIGNAL(clicked()), this, SLOT(OnCancel())); diff --git a/src/lpbdesigner/MainFrame.cpp b/src/lpbdesigner/MainFrame.cpp index f92b21e..5479ccd 100644 --- a/src/lpbdesigner/MainFrame.cpp +++ b/src/lpbdesigner/MainFrame.cpp @@ -3,7 +3,7 @@ #include "colossusbase.h" #include #pragma execution_character_set("utf-8") - +#define WINDOWS_ICON ":/resource/app.png" QString showVariant(const AlgoParamType type, const QVariant &var) { switch (type) { @@ -104,7 +104,7 @@ QString showVariant(const AlgoParamType type, const QVariant &var) { return var.toString(); } - +/*定位标定页面*/ CMainFrame::CMainFrame(QWidget *parent) { m_pDE = NULL; @@ -116,7 +116,7 @@ CMainFrame::CMainFrame(QWidget *parent) ui = new Ui::MainFrame; ui->setupUi(this); setContextMenuPolicy(Qt::NoContextMenu); - setWindowIcon(QIcon(":/img/resource/app.png")); + setWindowIcon(QIcon(WINDOWS_ICON)); //task列表控件设置 connect(ui->treeWidget, SIGNAL(itemClicked(QTreeWidgetItem*, int)), this, SLOT(OnTreeItemClick())); ui->treeWidget->setStyleSheet("QTreeWidget::item{height:30px}"); @@ -242,6 +242,8 @@ bool CMainFrame::InitGraphView() ui->tableWidget->setSelectionBehavior(QAbstractItemView::SelectRows); ui->tableWidget->setSelectionMode(QAbstractItemView::SingleSelection); ui->tableWidget->verticalHeader()->setHidden(true); + ui->tableWidget->horizontalHeader()->setSectionResizeMode(4, QHeaderView::Stretch); + ui->tableWidget->hideColumn(2); ui->tableWidget_2->setSelectionBehavior(QAbstractItemView::SelectRows); ui->tableWidget_2->setSelectionMode(QAbstractItemView::SingleSelection); @@ -251,8 +253,7 @@ bool CMainFrame::InitGraphView() ui->tableWidget_2->horizontalHeader()->setSectionResizeMode(1, QHeaderView::Custom); ui->tableWidget_2->horizontalHeader()->setSectionResizeMode(2, QHeaderView::Custom); ui->tableWidget_2->horizontalHeader()->setSectionResizeMode(3, QHeaderView::Stretch); - ui->tableWidget->horizontalHeader()->setSectionResizeMode(4, QHeaderView::Stretch); - ui->tableWidget->hideColumn(2); + ui->tableWidget_2->hideColumn(2); ui->textEdit->setWordWrapMode(QTextOption::NoWrap); @@ -301,6 +302,7 @@ bool CMainFrame::InitGraphView() } } m_TaskChangeList.clear(); + if (!InitCurrentTask()) return true; return true; @@ -308,9 +310,6 @@ bool CMainFrame::InitGraphView() bool CMainFrame::InitCurrentTask() { - if (!InitCurrentNode()) - return false; - ui->tableWidget->setRowCount(0); ui->tableWidget->clearContents(); ui->tableWidget_2->setRowCount(0); @@ -319,6 +318,12 @@ bool CMainFrame::InitCurrentTask() ui->gv_output->clear(); ui->textEdit->clear(); + + if (!InitCurrentNode()) + { + return false; + } + IDetectorTask* ptask = currentTask(); if (ptask) { @@ -619,7 +624,7 @@ bool CMainFrame::OnAddAlgo() return false; m_tAlgoDlg.setParent(this); m_tAlgoDlg.setWindowFlags(Qt::Dialog | Qt::WindowCloseButtonHint); - m_tAlgoDlg.setWindowIcon(QIcon(":/image/leaper")); + m_tAlgoDlg.setWindowIcon(QIcon(WINDOWS_ICON)); m_tAlgoDlg.setWindowModality(Qt::ApplicationModal); m_tAlgoDlg.setAttribute(Qt::WA_ShowModal, true); IDetectorAlgorithm* pAlgo = m_tAlgoDlg.ShowAlgoDlg(NULL); @@ -661,7 +666,7 @@ bool CMainFrame::OnEditAlgo() return false; m_tAlgoDlg.setParent(this); m_tAlgoDlg.setWindowFlags(Qt::Dialog | Qt::WindowCloseButtonHint); - m_tAlgoDlg.setWindowIcon(QIcon(":/image/leaper")); + m_tAlgoDlg.setWindowIcon(QIcon(WINDOWS_ICON)); m_tAlgoDlg.setWindowModality(Qt::ApplicationModal); m_tAlgoDlg.setAttribute(Qt::WA_ShowModal, true); pAlgo = m_tAlgoDlg.ShowAlgoDlg(pAlgo); @@ -731,7 +736,7 @@ bool CMainFrame::OnSetAlgo() return false; m_tParamMgrDlg.setParent(this); m_tParamMgrDlg.setWindowFlags(Qt::Dialog | Qt::WindowCloseButtonHint); - m_tParamMgrDlg.setWindowIcon(QIcon(":/image/leaper")); + m_tParamMgrDlg.setWindowIcon(QIcon(WINDOWS_ICON)); m_tParamMgrDlg.setWindowModality(Qt::ApplicationModal); m_tParamMgrDlg.setAttribute(Qt::WA_ShowModal, true); m_tParamMgrDlg.ShowParamMgrDlg(pAlgo); @@ -761,7 +766,7 @@ bool CMainFrame::OnSetOutParam() m_tParamMgrDlg.setParent(this); m_tParamMgrDlg.setWindowFlags(Qt::Dialog | Qt::WindowCloseButtonHint); - m_tParamMgrDlg.setWindowIcon(QIcon(":/image/leaper")); + m_tParamMgrDlg.setWindowIcon(QIcon(WINDOWS_ICON)); m_tParamMgrDlg.setWindowModality(Qt::ApplicationModal); m_tParamMgrDlg.setAttribute(Qt::WA_ShowModal, true); m_tParamMgrDlg.ShowParamMgrDlg(pAlgo); @@ -860,7 +865,6 @@ bool CMainFrame::OnRunAlgo() { ColossusBase::showImage(img, ui->gv_output); } - } break; @@ -1111,7 +1115,7 @@ bool CMainFrame::OnAddParam() return false; m_tParamDlg.setParent(this); m_tParamDlg.setWindowFlags(Qt::Dialog | Qt::WindowCloseButtonHint); - m_tParamDlg.setWindowIcon(QIcon(":/image/leaper")); + m_tParamDlg.setWindowIcon(QIcon(WINDOWS_ICON)); m_tParamDlg.setWindowModality(Qt::ApplicationModal); m_tParamDlg.setAttribute(Qt::WA_ShowModal, true); PLP_ALGORITHM_PARAM pParam = m_tParamDlg.ShowParamDlg(NULL); @@ -1184,14 +1188,17 @@ bool CMainFrame::OnEditParam() return false; m_tParamDlg.setParent(this); m_tParamDlg.setWindowFlags(Qt::Dialog | Qt::WindowCloseButtonHint); - m_tParamDlg.setWindowIcon(QIcon(":/image/leaper")); + m_tParamDlg.setWindowIcon(QIcon(WINDOWS_ICON)); m_tParamDlg.setWindowModality(Qt::ApplicationModal); m_tParamDlg.setAttribute(Qt::WA_ShowModal, true); m_tParamDlg.ShowParamDlg(pParam); - QString st = _pOldTask->GetTaskInfo()->strName; - if (!m_TaskChangeList.contains(st)) + if (_pOldTask) { - m_TaskChangeList.append(st); + QString st = _pOldTask->GetTaskInfo()->strName; + if (!m_TaskChangeList.contains(st)) + { + m_TaskChangeList.append(st); + } } return true; } diff --git a/src/tpMain/algela/RoiImgViewer.h b/src/tpMain/algela/RoiImgViewer.h index 28a5260..032f7a3 100644 --- a/src/tpMain/algela/RoiImgViewer.h +++ b/src/tpMain/algela/RoiImgViewer.h @@ -76,7 +76,10 @@ protected: protected slots: void updateSelectedRoiNode(); - +signals: + void roiChanged(QGraphicsItem* pItem); + void roiAdded(QGraphicsItem* pItem); + void roiSelectionChanged(LP_ROI_NODE* pSelectedRoiNode); protected: float mMouseCaptureDistance; @@ -98,14 +101,6 @@ protected: RoiItemMap mRoiItemMap; QList mRoiNodeList; LP_ROI_NODE* mpSelectedRoiNode; - -signals: - void roiChanged(QGraphicsItem* pItem); - void roiAdded(QGraphicsItem* pItem); - void roiSelectionChanged(LP_ROI_NODE* pSelectedRoiNode); - -private: - }; #endif diff --git a/src/tpMain/lpGlobalConfig.cpp b/src/tpMain/lpGlobalConfig.cpp index 2dd3ee7..bc2cc55 100644 --- a/src/tpMain/lpGlobalConfig.cpp +++ b/src/tpMain/lpGlobalConfig.cpp @@ -200,6 +200,7 @@ void lpGlobalConfig::loadStandParam() pointXOffset = setting.value("pointXoffset", 0.0).toDouble(); pointYOffset = setting.value("pointYoffset", 0.0).toDouble(); pointCircle = setting.value("pointCircle", 20).toInt(); + bTransPos = setting.value("TransPos").toBool(); point1.setX(p1x); point1.setY(p1y); point2.setX(p2x); @@ -221,6 +222,7 @@ void lpGlobalConfig::saveStandParam() setting.setValue("pointXoffset", pointXOffset); setting.setValue("pointYoffset", pointYOffset); setting.setValue("pointCircle", pointCircle); + setting.setValue("TransPos", bTransPos); } void lpGlobalConfig::savePLCPara() diff --git a/src/tpMain/lpGlobalConfig.h b/src/tpMain/lpGlobalConfig.h index 90ab19d..dc6eb21 100644 --- a/src/tpMain/lpGlobalConfig.h +++ b/src/tpMain/lpGlobalConfig.h @@ -111,6 +111,8 @@ public: bool bRunBackClosing{ false };//关闭页面时自动后台运行 QString strSysTitle;//系统标题 + bool bTransPos{ false }; + AlgParam algParam; }; diff --git a/tpvs17/tpMain/lpImageCaliUI.cpp b/tpvs17/tpMain/lpImageCaliUI.cpp index 0eaac70..1fc824d 100644 --- a/tpvs17/tpMain/lpImageCaliUI.cpp +++ b/tpvs17/tpMain/lpImageCaliUI.cpp @@ -1,6 +1,7 @@ #include "lpImageCaliUI.h" #include "QFileDialog" #include "lpGlobalConfig.h" +#include #pragma execution_character_set("utf-8") @@ -13,12 +14,18 @@ lpImageCaliUI::lpImageCaliUI(QWidget *parent) connect(m_srcImgView, SIGNAL(filterroiChanged(const AwesomeRoiInfo& , QString)), this, SLOT(onROIChange(const AwesomeRoiInfo&, QString))); connect(m_srcImgView, SIGNAL(pixelClicked(QPoint)), this, SLOT(onPixelClicked(QPoint))); connect(m_srcImgView, SIGNAL(roiLockIng(QString)), this, SLOT(onRoiLockIng(QString))); + connect(m_srcImgView, SIGNAL(sgImageScale(qreal)), this, SLOT(onImageScale(qreal))); connect(ui.m_pbLoadImg, SIGNAL(clicked()), this, SLOT(onButtonClicked())); connect(ui.m_pbApply, SIGNAL(clicked()), this, SLOT(onButtonClicked())); connect(ui.m_pbExit, SIGNAL(clicked()), this, SLOT(onButtonClicked())); connect(ui.m_pbLock, SIGNAL(clicked()), this, SLOT(onButtonClicked())); + QString strPath = QApplication::applicationDirPath() + "/showImg.ini";//图像展示比例的参数 + QSettings setting(strPath, QSettings::IniFormat); + double nScale = setting.value("ShowImg/Scale_Standard", 0.53).toDouble(); + m_srcImgView->setInitScale(nScale); + } lpImageCaliUI::~lpImageCaliUI() @@ -48,6 +55,7 @@ _Widget* lpImageCaliUI::replaceWidget(QWidget* pSrcWidget) void lpImageCaliUI::showEvent(QShowEvent *event) { + ui.checkBox->setChecked(lpGlobalConfig::instance()->bTransPos); ui.m_lineEdit_P1X->setText(QString("%1").arg(lpGlobalConfig::instance()->point1.x())); ui.m_lineEdit_P1Y->setText(QString("%1").arg(lpGlobalConfig::instance()->point1.y())); ui.m_lineEdit_P2X->setText(QString("%1").arg(lpGlobalConfig::instance()->point2.x())); @@ -82,6 +90,14 @@ void lpImageCaliUI::showEvent(QShowEvent *event) ui.m_pbLock->setText(tr("解锁")); } +void lpImageCaliUI::changeEvent(QEvent *event) +{ + if (event->type() == QEvent::LanguageChange) + { + ui.retranslateUi(this); + } +} + Q_SLOT void lpImageCaliUI::onButtonClicked() { QString strObj = sender()->objectName(); @@ -138,12 +154,13 @@ Q_SLOT void lpImageCaliUI::onButtonClicked() double length = ui.m_lineEdit_length->text().toDouble(); double scale = length * 1.0 / ( pixlength > 0 ? pixlength:length); ui.m_lineEdit_scale->setText(QString("%1").arg(scale)); - lpGlobalConfig::instance()->pointXOffset = ui.m_lineEdit_Xoffset->text().toInt(); - lpGlobalConfig::instance()->pointYOffset = ui.m_lineEdit_Yoffset->text().toInt(); + lpGlobalConfig::instance()->pointXOffset = ui.m_lineEdit_Xoffset->text().toDouble(); + lpGlobalConfig::instance()->pointYOffset = ui.m_lineEdit_Yoffset->text().toDouble(); lpGlobalConfig::instance()->point1 = m_point1; lpGlobalConfig::instance()->point2 = m_point2; lpGlobalConfig::instance()->fLength = length; lpGlobalConfig::instance()->fScale = scale; + lpGlobalConfig::instance()->bTransPos = ui.checkBox->isChecked(); lpGlobalConfig::instance()->saveStandParam(); } else if("m_pbExit" == strObj) @@ -200,6 +217,14 @@ Q_SLOT void lpImageCaliUI::onPixelClicked(QPoint point) int a = 0; } +Q_SLOT void lpImageCaliUI::onImageScale(qreal value) +{ + QString strPath = QApplication::applicationDirPath() + "/showImg.ini"; + QSettings setting(strPath, QSettings::IniFormat); + QObject *obj = sender(); + setting.setValue("ShowImg/Scale_Standard", value); +} + double lpImageCaliUI::CalLength(QPoint &p1, QPoint &p2) { double pixLen = sqrt(pow(p1.x() - p2.x(), 2) + pow(p1.y() - p2.y(), 2)); @@ -239,3 +264,4 @@ void lpImageCaliUI::timerEvent(QTimerEvent *event) } } + diff --git a/tpvs17/tpMain/lpImageCaliUI.h b/tpvs17/tpMain/lpImageCaliUI.h index 4974f21..44aa728 100644 --- a/tpvs17/tpMain/lpImageCaliUI.h +++ b/tpvs17/tpMain/lpImageCaliUI.h @@ -16,7 +16,7 @@ public: template _Widget* replaceWidget(QWidget* pSrcWidget); - virtual void showEvent(QShowEvent *event); + protected: double CalLength(QPoint &p1, QPoint &p2); void AddPoint(QPoint &p, QString strName); @@ -24,8 +24,11 @@ protected: Q_SLOT void onButtonClicked(); Q_SLOT void onROIChange(const AwesomeRoiInfo& roiInfo, QString strID); Q_SLOT void onPixelClicked(QPoint point); + Q_SLOT void onImageScale(qreal scale); Q_SLOT void onRoiLockIng(QString strName); - +protected: + virtual void showEvent(QShowEvent *event); + virtual void changeEvent(QEvent *event); virtual void timerEvent(QTimerEvent *event); private: Ui::lpImageCaliUI ui; diff --git a/tpvs17/tpMain/lpImageCaliUI.ui b/tpvs17/tpMain/lpImageCaliUI.ui index e81091f..57953f7 100644 --- a/tpvs17/tpMain/lpImageCaliUI.ui +++ b/tpvs17/tpMain/lpImageCaliUI.ui @@ -224,6 +224,24 @@ + + + + + + XY坐标输出: + + + + + + + 是否对换 + + + + + diff --git a/tpvs17/tpMain/lpMainWin.cpp b/tpvs17/tpMain/lpMainWin.cpp index 9342ca0..f3e6af9 100644 --- a/tpvs17/tpMain/lpMainWin.cpp +++ b/tpvs17/tpMain/lpMainWin.cpp @@ -107,7 +107,7 @@ lpMainWin::lpMainWin(QWidget *parent) pLayout->addWidget(m_ImgViewer); ui.cam_win_1->setLayout(pLayout); } - { + {//菜单栏按钮初始化 connect(ui.action_userManager, SIGNAL(triggered()), this, SLOT(onActionClicked()));//用户管理菜单 connect(ui.action_Login, SIGNAL(triggered()), this, SLOT(onActionClicked()));//用户登录菜单 connect(ui.action_about, SIGNAL(triggered()), this, SLOT(onActionClicked()));//关于 @@ -761,8 +761,19 @@ void lpMainWin::IEngineResult(QVariantMap vMap) valueRlt.pixmap = QPixmap::fromImage(maskImg); valueRlt.strRunState = "run Alg success"; /*中心坐标偏移值计算*/ - int centerX = centerPoint.x() * lpGlobalConfig::instance()->fScale + lpGlobalConfig::instance()->pointXOffset; - int centerY = centerPoint.y() * lpGlobalConfig::instance()->fScale + lpGlobalConfig::instance()->pointYOffset; + double centerX = 0.0; + double centerY = 0.0; + if (lpGlobalConfig::instance()->bTransPos == false) + { + centerX = centerPoint.x() * lpGlobalConfig::instance()->fScale + lpGlobalConfig::instance()->pointXOffset; + centerY = centerPoint.y() * lpGlobalConfig::instance()->fScale + lpGlobalConfig::instance()->pointYOffset; + } + else { + centerY = centerPoint.x() * lpGlobalConfig::instance()->fScale + lpGlobalConfig::instance()->pointXOffset; + centerX = centerPoint.y() * lpGlobalConfig::instance()->fScale + lpGlobalConfig::instance()->pointYOffset; + } + + valueRlt.center.setX(centerX); valueRlt.center.setY(centerY); diff --git a/tpvs17/wheel.sln b/tpvs17/wheel.sln index 9672af0..eacc59c 100644 --- a/tpvs17/wheel.sln +++ b/tpvs17/wheel.sln @@ -23,12 +23,8 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "valveDetector", "valveDetec EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lpCoreCtrl", "lpCoreCtrl\lpCoreCtrl.vcxproj", "{784071A9-BF94-4D27-B62E-588ACD7E0633}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tpCamVirtual", "tpCamVirtual\tpCamVirtual.vcxproj", "{707DDF6F-B78B-42F7-9EAD-E786C0FCD5FF}" -EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Enchanter", "Enchanter\Enchanter.vcxproj", "{7B76D75A-0E01-451E-880E-FB9AC63A914B}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tpCamHik", "tpCamHik\tpCamHik.vcxproj", "{64C9A32D-82E8-4C36-9AA6-52D58B23F687}" -EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|x64 = Debug|x64 @@ -101,34 +97,18 @@ Global {784071A9-BF94-4D27-B62E-588ACD7E0633}.Release|x64.ActiveCfg = Release|x64 {784071A9-BF94-4D27-B62E-588ACD7E0633}.Release|x64.Build.0 = Release|x64 {784071A9-BF94-4D27-B62E-588ACD7E0633}.Release|x86.ActiveCfg = Release|x64 - {707DDF6F-B78B-42F7-9EAD-E786C0FCD5FF}.Debug|x64.ActiveCfg = Debug|x64 - {707DDF6F-B78B-42F7-9EAD-E786C0FCD5FF}.Debug|x64.Build.0 = Debug|x64 - {707DDF6F-B78B-42F7-9EAD-E786C0FCD5FF}.Debug|x86.ActiveCfg = Debug|Win32 - {707DDF6F-B78B-42F7-9EAD-E786C0FCD5FF}.Debug|x86.Build.0 = Debug|Win32 - {707DDF6F-B78B-42F7-9EAD-E786C0FCD5FF}.Release|x64.ActiveCfg = Release|x64 - {707DDF6F-B78B-42F7-9EAD-E786C0FCD5FF}.Release|x64.Build.0 = Release|x64 - {707DDF6F-B78B-42F7-9EAD-E786C0FCD5FF}.Release|x86.ActiveCfg = Release|Win32 - {707DDF6F-B78B-42F7-9EAD-E786C0FCD5FF}.Release|x86.Build.0 = Release|Win32 {7B76D75A-0E01-451E-880E-FB9AC63A914B}.Debug|x64.ActiveCfg = Debug|x64 {7B76D75A-0E01-451E-880E-FB9AC63A914B}.Debug|x64.Build.0 = Debug|x64 {7B76D75A-0E01-451E-880E-FB9AC63A914B}.Debug|x86.ActiveCfg = Debug|x64 {7B76D75A-0E01-451E-880E-FB9AC63A914B}.Release|x64.ActiveCfg = Release|x64 {7B76D75A-0E01-451E-880E-FB9AC63A914B}.Release|x64.Build.0 = Release|x64 {7B76D75A-0E01-451E-880E-FB9AC63A914B}.Release|x86.ActiveCfg = Release|x64 - {64C9A32D-82E8-4C36-9AA6-52D58B23F687}.Debug|x64.ActiveCfg = Debug|x64 - {64C9A32D-82E8-4C36-9AA6-52D58B23F687}.Debug|x64.Build.0 = Debug|x64 - {64C9A32D-82E8-4C36-9AA6-52D58B23F687}.Debug|x86.ActiveCfg = Debug|Win32 - {64C9A32D-82E8-4C36-9AA6-52D58B23F687}.Debug|x86.Build.0 = Debug|Win32 - {64C9A32D-82E8-4C36-9AA6-52D58B23F687}.Release|x64.ActiveCfg = Release|x64 - {64C9A32D-82E8-4C36-9AA6-52D58B23F687}.Release|x64.Build.0 = Release|x64 - {64C9A32D-82E8-4C36-9AA6-52D58B23F687}.Release|x86.ActiveCfg = Release|Win32 - {64C9A32D-82E8-4C36-9AA6-52D58B23F687}.Release|x86.Build.0 = Release|Win32 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {CD365F32-5EAC-4A16-AD47-BFB1D8E5511A} Qt5Version = qt5.9.4-msvc2017-x64 + SolutionGuid = {CD365F32-5EAC-4A16-AD47-BFB1D8E5511A} EndGlobalSection EndGlobal