diff --git a/tpvs17/tpMain/lpImageCaliUI.cpp b/tpvs17/tpMain/lpImageCaliUI.cpp
index d3513e8..582c408 100644
--- a/tpvs17/tpMain/lpImageCaliUI.cpp
+++ b/tpvs17/tpMain/lpImageCaliUI.cpp
@@ -74,7 +74,7 @@ void lpImageCaliUI::showEvent(QShowEvent *event)
if (m_srcImgView)
{
m_srcImgView->onClearAllROI();
- QString DstPath = QApplication::applicationDirPath() + "\\user\\StandImage.png";
+ QString DstPath = QApplication::applicationDirPath() + "\\user\\StandImage.jpg";
QImage img;
img.load(DstPath);
@@ -103,10 +103,10 @@ Q_SLOT void lpImageCaliUI::onButtonClicked()
QString strObj = sender()->objectName();
if (strObj == "m_pbLoadImg")
{
- QString fileName = QFileDialog::getOpenFileName(this, tr("选择标定图"), "/home/jana", tr("Image Files (*.png *.jpg *.bmp)"));
+ QString fileName = QFileDialog::getOpenFileName(this, tr("选择标定图"), lpGlobalConfig::instance()->m_SaveImgDirPath+"/data/", tr("Image Files (*.png *.jpg *.bmp)"));
if (!fileName.isEmpty())
{
- QString DstPath = QApplication::applicationDirPath() + "\\user\\StandImage.png";
+ QString DstPath = QApplication::applicationDirPath() + "\\user\\StandImage.jpg";
QString sourcePath = fileName;
DstPath.replace("\\", "/");
if (sourcePath == DstPath) {
@@ -118,13 +118,14 @@ Q_SLOT void lpImageCaliUI::onButtonClicked()
if (exist) {
createfile->remove(DstPath);
}
- if (!QFile::copy(sourcePath, DstPath)) {
- }
+// if (!QFile::copy(sourcePath, DstPath)) {
+// }
QImage img;
img.load(fileName);
if (m_srcImgView) {
m_srcImgView->setImg(img);
}
+ img.save(DstPath);
delete createfile;
createfile = nullptr;
}
diff --git a/tpvs17/tpMain/lpImageCaliUI4P.cpp b/tpvs17/tpMain/lpImageCaliUI4P.cpp
index 16b6ed5..d7bf2a4 100644
--- a/tpvs17/tpMain/lpImageCaliUI4P.cpp
+++ b/tpvs17/tpMain/lpImageCaliUI4P.cpp
@@ -86,7 +86,7 @@ void lpImageCaliUI4P::showEvent(QShowEvent *event)
if (m_srcImgView)
{
m_srcImgView->onClearAllROI();
- QString DstPath = QApplication::applicationDirPath() + "\\user\\StandImage.png";
+ QString DstPath = QApplication::applicationDirPath() + "\\user\\StandImage.jpg";
QImage img;
img.load(DstPath);
@@ -120,10 +120,10 @@ Q_SLOT void lpImageCaliUI4P::onButtonClicked()
QString strObj = sender()->objectName();
if (strObj == "m_pbLoadImg")
{
- QString fileName = QFileDialog::getOpenFileName(this, tr("ѡ궨ͼ"), "/home/jana", tr("Image Files (*.png *.jpg *.bmp)"));
+ QString fileName = QFileDialog::getOpenFileName(this, tr("ѡ궨ͼ"), lpGlobalConfig::instance()->m_SaveImgDirPath + "/data/", tr("Image Files (*.png *.jpg *.bmp)"));
if (!fileName.isEmpty())
{
- QString DstPath = QApplication::applicationDirPath() + "\\user\\StandImage.png";
+ QString DstPath = QApplication::applicationDirPath() + "\\user\\StandImage.jpg";
QString sourcePath = fileName;
DstPath.replace("\\", "/");
if (sourcePath == DstPath) {
@@ -135,13 +135,14 @@ Q_SLOT void lpImageCaliUI4P::onButtonClicked()
if (exist) {
createfile->remove(DstPath);
}
- if (!QFile::copy(sourcePath, DstPath)) {
- }
+// if (!QFile::copy(sourcePath, DstPath)) {
+// }
QImage img;
img.load(fileName);
if (m_srcImgView) {
m_srcImgView->setImg(img);
}
+ img.save(DstPath);
delete createfile;
createfile = nullptr;
}
diff --git a/tpvs17/valueMainUI/lpConfig.cpp b/tpvs17/valueMainUI/lpConfig.cpp
index bdad682..2e8a13c 100644
--- a/tpvs17/valueMainUI/lpConfig.cpp
+++ b/tpvs17/valueMainUI/lpConfig.cpp
@@ -21,6 +21,7 @@ void lpConfig::saveConfig()
setting.setValue("appPathB", appPathB);
setting.setValue("doubleStation", doubleStation);
setting.setValue("serverPort", plcServerPort);
+ setting.setValue("trigerFilter", trigerFilter);
}
void lpConfig::loadConfig()
@@ -32,4 +33,5 @@ void lpConfig::loadConfig()
appPathB = setting.value("appPathB").toString();
doubleStation = setting.value("doubleStation",true).toBool();
plcServerPort = setting.value("serverPort", 1000).toInt();
+ trigerFilter = setting.value("trigerFilter", 1000).toInt();
}
diff --git a/tpvs17/valueMainUI/lpConfig.h b/tpvs17/valueMainUI/lpConfig.h
index a27f2e2..96750c2 100644
--- a/tpvs17/valueMainUI/lpConfig.h
+++ b/tpvs17/valueMainUI/lpConfig.h
@@ -20,6 +20,7 @@ public:
QString appPathB;//Bϵͳ· ·
bool doubleStation{ true };//true ˫λ ; false λ
int plcServerPort{ 1000 };//PLCͨѶ tcp˿
+ int trigerFilter{ 1000 };
};
#endif
\ No newline at end of file
diff --git a/tpvs17/valueMainUI/lpConfigUI.cpp b/tpvs17/valueMainUI/lpConfigUI.cpp
index 50fbafa..ec1eb58 100644
--- a/tpvs17/valueMainUI/lpConfigUI.cpp
+++ b/tpvs17/valueMainUI/lpConfigUI.cpp
@@ -58,6 +58,7 @@ Q_SLOT void lpConfigUI::onButtonClicked()
lpConfig::instance()->portB = ui.lineEdit_BPort->text().toInt();
lpConfig::instance()->doubleStation = ui.checkBox_doubleStation->isChecked();
lpConfig::instance()->plcServerPort = ui.lineEdit_serverPort->text().toInt();
+ lpConfig::instance()->trigerFilter = ui.lineEdit_trigerFilter->text().toInt();
lpConfig::instance()->saveConfig();
ui.label_5->setVisible(true);
m_timerID = startTimer(1000);
@@ -82,7 +83,7 @@ void lpConfigUI::showEvent(QShowEvent *event)
ui.lineEdit_BPort->setText(QString("%1").arg(lpConfig::instance()->portB));
ui.checkBox_doubleStation->setChecked(lpConfig::instance()->doubleStation);
ui.lineEdit_serverPort->setText(QString("%1").arg(lpConfig::instance()->plcServerPort));
-
+ ui.lineEdit_trigerFilter->setText(QString("%1").arg(lpConfig::instance()->trigerFilter));
QSettings languageSetting("hubdetect.ini", QSettings::IniFormat);
QString strLanguage = languageSetting.value("language", "Chinese").toString();
ui.comboBox->setCurrentText(strLanguage);
diff --git a/tpvs17/valueMainUI/lpConfigUI.ui b/tpvs17/valueMainUI/lpConfigUI.ui
index ae30a5e..4802a1b 100644
--- a/tpvs17/valueMainUI/lpConfigUI.ui
+++ b/tpvs17/valueMainUI/lpConfigUI.ui
@@ -273,13 +273,6 @@
机台PLC通讯:
- -
-
-
- TCP服务端口:
-
-
-
-
@@ -300,6 +293,34 @@
+ -
+
+
+ TCP服务端口:
+
+
+
+ -
+
+
+ 1000
+
+
+
+ -
+
+
+ 相机触发滤波:
+
+
+
+ -
+
+
+ 单位(ms)
+
+
+
diff --git a/tpvs17/valueMainUI/valueMainUI.cpp b/tpvs17/valueMainUI/valueMainUI.cpp
index 48a1edb..97ba1c8 100644
--- a/tpvs17/valueMainUI/valueMainUI.cpp
+++ b/tpvs17/valueMainUI/valueMainUI.cpp
@@ -135,10 +135,15 @@ valueMainUI::valueMainUI(QWidget *parent)
}
lpGlobalData::instance()->m_StationResult_1.stationID = 1;
lpGlobalData::instance()->m_StationResult_2.stationID = 2;
+
+ m_timerFilterA.setSingleShot(true);
+ m_timerFilterB.setSingleShot(true);
}
valueMainUI::~valueMainUI()
{
+ m_timerFilterA.stop();
+ m_timerFilterB.stop();
onStopProcess();//本系统退出时 杀死由本系统启动的A B检测程序
//内存释放
{
@@ -1012,6 +1017,11 @@ Q_SLOT void valueMainUI::onPLCTrigerCam(int camID)
//onTriggerCam();
if (camID == 1)//A侧相机触发拍照
{
+ if (m_timerFilterA.isActive())
+ return;
+ int t = lpConfig::instance()->trigerFilter;
+ if (t > 0)
+ m_timerFilterA.start(t);
TP_PROTOCOL_MESSAGE msg;
QJsonObject sObj;
sObj.insert("cmd", "trigerCam");
@@ -1021,6 +1031,12 @@ Q_SLOT void valueMainUI::onPLCTrigerCam(int camID)
}
else if (camID == 2)//B侧相机拍照
{
+ if (m_timerFilterB.isActive())
+ return;
+ int t = lpConfig::instance()->trigerFilter;
+ if (t > 0)
+ m_timerFilterB.start(t);
+
TP_PROTOCOL_MESSAGE msg;
QJsonObject sObj;
sObj.insert("cmd", "trigerCam");
diff --git a/tpvs17/valueMainUI/valueMainUI.h b/tpvs17/valueMainUI/valueMainUI.h
index 4c305e1..78b0409 100644
--- a/tpvs17/valueMainUI/valueMainUI.h
+++ b/tpvs17/valueMainUI/valueMainUI.h
@@ -15,6 +15,7 @@
#include "QTCPDebugUI.h"
#include
+#include
class valueMainUI : public QMainWindow
{
@@ -119,6 +120,9 @@ private:
QPLCDevice* m_pPlcDevice{ nullptr };
QVector m_VecTranPtr;//ʻ
+
+ QTimer m_timerFilterA;
+ QTimer m_timerFilterB;
};
#endif