1、增加系统参数配置

2、增加相机配置功能
newClassify
bobpan 5 years ago
parent 6dc093b33b
commit abb11bf347

@ -1,3 +1,10 @@
/*!
*FileName: IMainWidget.h
*Author: Pan Yingdong
*Email: bob.pan@hzleaper.com
*Created:2021/2/10 15:56
*Note:
*/
#ifndef _H_IMAINWIDGET_H_
#define _H_IMAINWIDGET_H_

@ -1,4 +1,13 @@
#pragma once
/*!
*FileName: ImageProcess.h
*Author: Pan Yingdong
*Email: bob.pan@hzleaper.com
*Created:2021/2/10 15:55
*Note:
*/
#ifndef _H_IMAGEPROCESS_H_
#define _H_IMAGEPROCESS_H_
#include "opencv\cv.h"
#include "opencv\highgui.h"
#include "Luffy.h"
@ -16,3 +25,5 @@ public:
static cv::Mat getForeImage(const Mat & src, const Mat &backgroundImg);
};
#endif

@ -1,4 +1,6 @@
#pragma once
#ifndef _H_RESULT2UI_H_
#define _H_RESULT2UI_H_
#include "qpixmap.h"
#include "qimage.h"
class Result2Ui
@ -25,3 +27,5 @@ public:
int m_channel;
};
#endif

@ -1,4 +1,6 @@
#pragma once
#ifndef _H_CAMCONFIG_H_
#define _H_CAMCONFIG_H_
#include "QString"
class CamConfig
{
@ -15,3 +17,5 @@ private:
QString m_CamSerial;
};
#endif

@ -1,6 +1,6 @@
#pragma once
#include "qstring.h"
#ifndef _H_HUBBASE_H_
#define _H_HUBBASE_H_
#include <QString>
namespace hubBase {
bool copyPath2Path(QString sourcePath, QString dstPath, bool converFileIfExist);
@ -13,4 +13,6 @@ namespace hubBase {
QString genDateTime(QString strFormat = "yyyy-MM-dd hh:mm:ss");
QString genTime(QString strFormat = "hh:mm:ss");
QString pathSuffix(QString );
}
}
#endif

@ -1,4 +1,13 @@
#pragma once
/*!
*FileName: IWheelCtrl.h
*Author: Pan Yingdong
*Email: bob.pan@hzleaper.com
*Created:2021/2/10 15:56
*Note:
*/
#ifndef _H_IWHEELCTRL_H_
#define _H_IWHEELCTRL_H_
#include "qstring.h"
#include "qobject.h"
#include "InfoFile.h"
@ -59,3 +68,5 @@ signals:
void sgModelChanged(QString);
};
#endif

@ -0,0 +1,37 @@
#ifndef _H_QFUNCTIONTRANSFER_H_
#define _H_QFUNCTIONTRANSFER_H_
#include <QObject>
#include <functional>
#include <iostream>
#include <iomanip>
#if defined(__linux) || defined(__linux__)
#include <tr1/memory>
#include <tr1/functional>
#endif
class QFunctionTransfer : public QObject
{
Q_OBJECT
public:
explicit QFunctionTransfer(QObject *parent = 0) {
qRegisterMetaType<std::tr1::function<void()>>("std::tr1::function<void()>");
connect(this, &QFunctionTransfer::comming, this, &QFunctionTransfer::exec, Qt::QueuedConnection);
};
void execInMain(std::tr1::function<void()> f) {
emit this->comming(f);
};
static QFunctionTransfer* Instance() {
static QFunctionTransfer ins;
return &ins;
}
signals:
void comming(std::tr1::function<void()> f);
public slots:
void exec(std::tr1::function<void()> f)
{
f();
};
};
#endif

@ -0,0 +1,55 @@
#ifndef LP_SINGLETON_H
#define LP_SINGLETON_H
#include <mutex>
#include <atomic>
template<class T>
class lp_singleton
{
public:
static T* instance()
{
T *sin = s_this.load(std::memory_order_acquire);
if (!sin) {
std::lock_guard<std::mutex> locker(s_mutex);
sin = s_this.load(std::memory_order_relaxed);
if (!sin) {
sin = new T;
s_this.store(sin, std::memory_order_release);
}
}
return sin;
}
static void uninstance()
{
T *sin = s_this.load(std::memory_order_relaxed);
if (sin) {
std::lock_guard<std::mutex> locker(s_mutex);
delete sin;
sin = nullptr;
}
}
protected:
lp_singleton() = default;
virtual ~lp_singleton() = default;
private:
lp_singleton(const T&) = delete;
T& operator=(const T&) = delete;
static std::atomic<T*> s_this;
static std::mutex s_mutex;
};
template<class T>
std::atomic<T*> lp_singleton<T>::s_this;
template<class T>
std::mutex lp_singleton<T>::s_mutex;
#endif // LP_SINGLETON_H

@ -0,0 +1,81 @@
/*!
* \file threadsafe_list.hpp
* \date 2018/11/30
*
* \author pan yingdong
* Contact: bob.pan@hzleaper.com
*
*
* \note
*/
#ifndef _THREADSAFE_LIST_H_
#define _THREADSAFE_LIST_H_
#include <exception>
#include <memory>
#include <list>
#include <mutex>
#include <iostream>
struct empty_list :std::exception
{
const char* what() const throw(){ return "empty list"; };
};
template<typename T>
class threadsafe_list
{
private:
std::list<T> dataList;
mutable std::mutex m;
public:
threadsafe_list(){}
threadsafe_list(const threadsafe_list& other)
{
std::lock_guard<std::mutex> guard(m);
dataList = other.dataList;
}
threadsafe_list& operator=(const threadsafe_list&) = delete;
bool push_back(T new_val)
{
std::lock_guard<std::mutex> guard(m);
dataList.push_back(new_val);
return true;
}
std::shared_ptr<T> pop_front()
{
std::lock_guard<std::mutex> guard(m);
if (dataList.empty())
throw empty_list();
std::shared_ptr<T> const res(std::make_shared<T>(dataList.front()));
dataList.pop_front();
return res;
}
bool pop_front(T& value)
{
std::lock_guard<std::mutex> guard(m);
if (dataList.empty())
{
//throw empty_list();
return false;
}
value = dataList.front();
dataList.pop_front();
return true;
}
bool empty() const
{
std::lock_guard<std::mutex> guard(m);
return dataList.empty();
}
int getSize() const
{
std::lock_guard<std::mutex> guard(m);
return dataList.size();
}
void clear() {
std::lock_guard<std::mutex> guard(m);
dataList.clear();
}
};
#endif

@ -1,4 +1,11 @@
#ifndef TIMEMGRCTRL_H
/*!
*FileName: timemgrctrl.h
*Author: Pan Yingdong
*Email: bob.pan@hzleaper.com
*Created:2021/2/10 16:00
*Note:
*/
#ifndef TIMEMGRCTRL_H
#define TIMEMGRCTRL_H
#include <QObject>
@ -9,7 +16,6 @@ class DetectDataDB;
class TimeMgrCtrl
{
public:
//TimeMgrCtrl(QSqliteApplication *p);
TimeMgrCtrl(DetectDataDB *p);
~TimeMgrCtrl();
QMap<QString, TimeStruct> getAllTime();
@ -19,8 +25,7 @@ public:
QString GetCurrentBan();
QMap<QString, TimeStruct>* getAllTimePtr();
private:
//QSqliteApplication *m_DB;
DetectDataDB* m_DB;
DetectDataDB* m_DB{ nullptr };
QMap<QString, TimeStruct> m_MapTime;
};

Binary file not shown.

@ -0,0 +1,11 @@
#include "QCamSettingDlg.h"
QCamSettingDlg::QCamSettingDlg(QWidget *parent)
: QWidget(parent)
{
ui.setupUi(this);
}
QCamSettingDlg::~QCamSettingDlg()
{
}

@ -0,0 +1,21 @@
#ifndef _H_QCAMSETTINGDLG_H_
#define _H_QCAMSETTINGDLG_H_
#include <QWidget>
#include "ui_QCamSettingDlg.h"
#include "iCoreCtrl.h"
class QCamSettingDlg : public QWidget
{
Q_OBJECT
public:
QCamSettingDlg(QWidget *parent = Q_NULLPTR);
~QCamSettingDlg();
void setCoreCtrlPtr(ICoreCtrl* ptr) { m_pCoreCtl = ptr; };
private:
Ui::QCamSettingDlg ui;
ICoreCtrl* m_pCoreCtl{ nullptr };
};
#endif

@ -0,0 +1,190 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>QCamSettingDlg</class>
<widget class="QWidget" name="QCamSettingDlg">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>857</width>
<height>466</height>
</rect>
</property>
<property name="windowTitle">
<string>相机配置</string>
</property>
<layout class="QGridLayout" name="gridLayout_3">
<item row="0" column="0">
<widget class="QWidget" name="widget" native="true">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Preferred">
<horstretch>6</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgb(130, 136, 255);</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QFrame" name="frame">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>2</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="frameShape">
<enum>QFrame::StyledPanel</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Raised</enum>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0">
<widget class="QLabel" name="label">
<property name="text">
<string>序列号:</string>
</property>
</widget>
</item>
<item row="0" column="1" colspan="4">
<widget class="QLineEdit" name="lineEdit"/>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_2">
<property name="text">
<string>显示名称:</string>
</property>
</widget>
</item>
<item row="1" column="1" colspan="4">
<widget class="QLineEdit" name="lineEdit_2"/>
</item>
<item row="2" column="0">
<widget class="QLabel" name="label_3">
<property name="text">
<string>相机类型:</string>
</property>
</widget>
</item>
<item row="2" column="1" colspan="2">
<widget class="QComboBox" name="comboBox"/>
</item>
<item row="3" column="0">
<widget class="QLabel" name="label_4">
<property name="text">
<string>路径:</string>
</property>
</widget>
</item>
<item row="3" column="1" colspan="2">
<widget class="QLineEdit" name="lineEdit_3"/>
</item>
<item row="3" column="3" colspan="2">
<widget class="QPushButton" name="pushButton_2">
<property name="text">
<string>设置</string>
</property>
</widget>
</item>
<item row="4" column="0">
<widget class="QLabel" name="label_5">
<property name="text">
<string>图像高度:</string>
</property>
</widget>
</item>
<item row="4" column="1" colspan="4">
<widget class="QLineEdit" name="lineEdit_4"/>
</item>
<item row="5" column="0">
<widget class="QLabel" name="label_6">
<property name="text">
<string>图像宽度:</string>
</property>
</widget>
</item>
<item row="5" column="1" colspan="4">
<widget class="QLineEdit" name="lineEdit_5"/>
</item>
<item row="6" column="0">
<widget class="QLabel" name="label_7">
<property name="text">
<string>图像格式:</string>
</property>
</widget>
</item>
<item row="7" column="0">
<widget class="QLabel" name="label_8">
<property name="text">
<string>增益:</string>
</property>
</widget>
</item>
<item row="8" column="0">
<widget class="QLabel" name="label_9">
<property name="text">
<string>曝光:</string>
</property>
</widget>
</item>
<item row="9" column="5">
<widget class="QPushButton" name="pushButton">
<property name="text">
<string>应用</string>
</property>
</widget>
</item>
<item row="10" column="0" colspan="2">
<widget class="QComboBox" name="comboBox_3">
<item>
<property name="text">
<string>内触发</string>
</property>
</item>
<item>
<property name="text">
<string>外触发</string>
</property>
</item>
<item>
<property name="text">
<string>软触发</string>
</property>
</item>
</widget>
</item>
<item row="10" column="2" colspan="2">
<widget class="QPushButton" name="pushButton_3">
<property name="text">
<string>打开</string>
</property>
</widget>
</item>
<item row="10" column="4" colspan="2">
<widget class="QPushButton" name="pushButton_4">
<property name="text">
<string>触发</string>
</property>
</widget>
</item>
<item row="6" column="2">
<widget class="QComboBox" name="comboBox_2"/>
</item>
<item row="7" column="2" colspan="2">
<widget class="QLineEdit" name="lineEdit_6"/>
</item>
<item row="8" column="2" colspan="2">
<widget class="QLineEdit" name="lineEdit_7"/>
</item>
</layout>
</widget>
</item>
</layout>
</widget>
<layoutdefault spacing="6" margin="11"/>
<resources/>
<connections/>
</ui>

@ -1,4 +1,5 @@
#pragma once
#ifndef _H_QCHANNELMGRDLG_H_
#define _H_QCHANNELMGRDLG_H_
#include <QWidget>
#include "ui_QChannelMgrDlg.h"
@ -14,3 +15,5 @@ public:
private:
Ui::QChannelMgrDlg ui;
};
#endif

File diff suppressed because it is too large Load Diff

@ -0,0 +1,83 @@
#ifndef _H_QSYSTEMSETTINGUI_H_
#define _H_QSYSTEMSETTINGUI_H_
#include <QWidget>
#include "ui_QSystemSettingUI.h"
#include "QDiskCleanThread.h"
#include <QSettings.h>
#include <QPushButton>
#include <QComboBox>
class QSystemSettingDlg : public QWidget
{
Q_OBJECT
public:
QSystemSettingDlg(QWidget *parent = Q_NULLPTR);
~QSystemSettingDlg();
void onShowWidget(int level);
private:
bool InitTreeWidget(QTreeWidget* pTreewidget);
void addComRoot(class QTreeWidget *pTreewidget, QString strName /*= QString()*/);
QStringList getDirNames(QString strPath);
void addPicRoot(QTreeWidget *pTreewidget, QString strName);
void addPLCRoot(QTreeWidget *pTreewidget, QString strName);
void addLightRoot(QTreeWidget *pTreewidget, QString strName);
void addSuperRoot(class QTreeWidget *pTreewidget, QString strName);
void HidPLCUI(bool nflag);
void HidDevelopUI(bool nflag);
void InitDebugTree(void);
void readSettingFile();
void writeSettingFile();
Q_SLOT void onChangeBG();
Q_SLOT void onTreeWidgetButton();
Q_SLOT void oncurrentChanged(const QString &str);
Q_SLOT void onChangeBackground();
Q_SLOT void onOpenDataPath();
Q_SLOT void onLightTest();
Q_SLOT void onCheckstateChanged(int state);
Q_SLOT void onSetCurrentIndex(int nIndex);
Q_SLOT void onSavePLCPara();
protected:
virtual void showEvent(QShowEvent *event);
private:
Ui::QSystemSettingUI ui;
QList<QObject*> m_listObj;
QMap<QString, class QTreeWidgetItem*> m_TreeItemMap;
class QComboBox *m_Language{ nullptr };
//debug
class QComboBox *m_pCameraTrgType{ nullptr };
class QSpinBox *m_pCameraTrgTimes{ nullptr };
class QComboBox *m_pDebugModel{ nullptr };
class QComboBox *m_pSystype{ nullptr };
QList<class QTreeWidgetItem *> developitems;
QList<class QTreeWidgetItem *> comitems;
QList<class QTreeWidgetItem *> camitems;
QList<class QTreeWidgetItem *> picitems;
QList<class QTreeWidgetItem *> PLCitems;
QList<class QTreeWidgetItem *> lightitems;
class QSpinBox *m_PLCTrigerFilter{ nullptr };
class QSpinBox *m_PLCCameraDelay{ nullptr };
class QSpinBox *m_PLCCameraPulse{ nullptr };
class QSpinBox *m_PLCLightDelay{ nullptr };
class QSpinBox *m_PLCResHoldTime{ nullptr };
class QComboBox *m_PLCTrigerType{ nullptr };
class QSpinBox *m_PLC_RestartSeverCount{ nullptr };
QStringList m_listwidgetItemStr;
QDiskCleanThread *pDiskCleanThread{ nullptr };
QSettings *m_setting{ nullptr };
int nCheckDays{ 7 };
bool nCheckThreadEable{ false };
class QLabel* m_pLbShowPath{ nullptr };
};
#endif

@ -0,0 +1,57 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>QSystemSettingUI</class>
<widget class="QWidget" name="QSystemSettingUI">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>685</width>
<height>492</height>
</rect>
</property>
<property name="windowTitle">
<string>系统设置</string>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0">
<widget class="QListWidget" name="listWidget">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>2</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="font">
<font>
<pointsize>12</pointsize>
</font>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QTreeWidget" name="treeWidget">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>6</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="font">
<font>
<pointsize>12</pointsize>
</font>
</property>
<column>
<property name="text">
<string notr="true">1</string>
</property>
</column>
</widget>
</item>
</layout>
</widget>
<layoutdefault spacing="6" margin="11"/>
<resources/>
<connections/>
</ui>

@ -1,12 +1,208 @@
#include "QTimeMgrDlg.h"
#include <QStandardItemModel>
#include "timemgrctrl.h"
#include "qaddtimedlg.h"
#include <QMessageBox>
#pragma execution_character_set("utf-8")
struct CmpByValueTime {
bool operator()(const TimeStruct & lhs, const TimeStruct & rhs)
{
return lhs.m_startTime < rhs.m_startTime;
}
};
QTimeMgrDlg::QTimeMgrDlg(QWidget *parent)
: QDialog(parent)
{
ui.setupUi(this);
tablemodel = new QStandardItemModel();
QStringList stringList;
stringList << tr("班次") << tr("起始时间") << tr("结束时间");
tablemodel->setHorizontalHeaderLabels(stringList);
connect(ui.TimeMgr_tableView, SIGNAL(clicked(const QModelIndex &)), this, SLOT(SlotcellClicked(const QModelIndex &)));
connect(ui.TimeMgr_ADD_Button, SIGNAL(clicked()), this, SLOT(onButtonClicked()));
connect(ui.TimeMgr_Del_Button, SIGNAL(clicked()), this, SLOT(onButtonClicked()));
connect(ui.TimeMgr_Mod_Button, SIGNAL(clicked()), this, SLOT(onButtonClicked()));
}
QTimeMgrDlg::~QTimeMgrDlg()
{
if (tablemodel) {
while (tablemodel->rowCount())
{
QList<QStandardItem*> lptr = tablemodel->takeRow(0);
for (int n = 0; n < lptr.size(); n++)
{
delete lptr.at(n);
}
}
tablemodel->clear();
delete tablemodel;
tablemodel = NULL;
}
}
Q_SLOT void QTimeMgrDlg::onButtonClicked()
{
QObject *obj = sender();
QString str_name = obj->objectName();
if (str_name == "TimeMgr_ADD_Button") {
QAddTimeDlg dlg(this);
dlg.setWindowTitle(tr("设置参数"));
dlg.setWindowIcon(QIcon(":/image/leaper"));
dlg.setFocus();
dlg.setWindowFlags(Qt::Dialog | Qt::WindowCloseButtonHint);
dlg.setWindowModality(Qt::ApplicationModal);
dlg.setAttribute(Qt::WA_ShowModal, true);
if (dlg.exec() == QDialog::Accepted)
{
TimeStruct m_Timestruct;
dlg.GetInfo(m_Timestruct);
if (m_MapTime.contains(m_Timestruct.m_name))
{
return;
}
int nIndex = tablemodel->rowCount();
tablemodel->setItem(nIndex, 0, new QStandardItem(m_Timestruct.m_name));
QString strStart = QString("%1 %2").arg(m_Timestruct.time_start == AM ? tr("当天") : tr("隔天")).arg(m_Timestruct.m_startTime.toString("hh:mm"));
QString strEnd = QString("%1 %2").arg(m_Timestruct.time_end == AM ? tr("当天") : tr("隔天")).arg(m_Timestruct.m_endTime.toString("hh:mm"));
tablemodel->setItem(nIndex, 1, new QStandardItem(strStart));
tablemodel->setItem(nIndex, 2, new QStandardItem(strEnd));
m_Timestruct.m_Index = nIndex;
m_MapTime.insert(m_Timestruct.m_name, m_Timestruct);
TimeMgrCtrl *m_pTimeMgr = m_pCtrl->getTimeMgr();
m_pTimeMgr->AddNewTime(m_Timestruct);
ui.TimeMgr_label->setText("");
}
}
else if (str_name == "TimeMgr_Del_Button") {
QString str_name = ui.TimeMgr_label->text();
if (str_name.isEmpty() || str_name == tr("未选中"))
{
//QMessageBox::information(NULL, QString("提示"), QString("未选择班次,请选择进行修改。"), QMessageBox::Ok);
QMessageBox infobox(QMessageBox::Information, tr("提示"), tr("未选择班次,请选择进行修改。"), QMessageBox::Yes, this);
infobox.setWindowIcon(QIcon(":/image/leaper"));
infobox.setButtonText(QMessageBox::Yes, tr("确认"));
infobox.exec();
return;
}
QString str = tr("您确定要删除 %1 班次?").arg(str_name);
if (str_name.isEmpty())
return;
QMessageBox infobox(QMessageBox::Information, tr("提示"), str, QMessageBox::Ok | QMessageBox::Cancel, this);
infobox.setWindowIcon(QIcon(":/image/leaper"));
infobox.setButtonText(QMessageBox::Ok, tr("确认"));
infobox.setButtonText(QMessageBox::Cancel, tr("取消"));
if (infobox.exec() == QMessageBox::Ok)
{
if (str_name.isEmpty())
return;
QModelIndex nIndex = ui.TimeMgr_tableView->currentIndex();
int row = nIndex.row();
if (tablemodel->removeRow(nIndex.row()))
int a = 0;
else
int b = 0;
TimeStruct m_TimeStruct;
m_TimeStruct.m_name = str_name;
m_MapTime.remove(str_name);
TimeMgrCtrl *m_pTimeMgr = m_pCtrl->getTimeMgr();
m_pTimeMgr->DelOldTime(m_TimeStruct);
ui.TimeMgr_label->setText("");
}
}
else if (str_name == "TimeMgr_Mod_Button") {
QString str_name = ui.TimeMgr_label->text();
if (str_name.isEmpty() || str_name == tr("未选中"))
{
QMessageBox infobox(QMessageBox::Information, tr("提示"), tr("未选择班次,请选择进行修改。"), QMessageBox::Yes, this);
infobox.setWindowIcon(QIcon(":/image/leaper"));
infobox.setButtonText(QMessageBox::Yes, tr("确认"));
infobox.exec();
return;
}
QAddTimeDlg dlg;
dlg.SetInfo(m_MapTime.value(str_name));
if (dlg.exec() == QDialog::Accepted)
{
TimeStruct m_tempTime, m_newTime;
m_tempTime.m_name = str_name;
m_MapTime.remove(str_name);
dlg.GetInfo(m_newTime);
TimeMgrCtrl *m_pTimeMgr = m_pCtrl->getTimeMgr();
m_pTimeMgr->ModTime(m_tempTime, m_newTime);
m_MapTime.insert(m_newTime.m_name, m_newTime);
int nIndex = 0;
std::vector<TimeStruct> vec(m_MapTime.begin(), m_MapTime.end());
std::sort(vec.begin(), vec.end(), CmpByValueTime());
for (int n = 0; n < vec.size(); n++)
{
TimeStruct tiItem = vec.at(n);
tablemodel->setItem(nIndex, 0, new QStandardItem(tiItem.m_name));
QString strStart = QString("%1 %2").arg(tiItem.time_start == AM ? tr("当天") : tr("隔天")).arg(tiItem.m_startTime.toString("hh:mm"));
QString strEnd = QString("%1 %2").arg(tiItem.time_end == AM ? tr("当天") : tr("隔天")).arg(tiItem.m_endTime.toString("hh:mm"));
tablemodel->setItem(nIndex, 1, new QStandardItem(strStart));
tablemodel->setItem(nIndex, 2, new QStandardItem(strEnd));
nIndex++;
}
ui.TimeMgr_label->setText("");
}
}
else if (str_name == "TimeMgr_OK_Button") {
//QDialog::accept();
}
}
Q_SLOT void QTimeMgrDlg::onSlotCellClicked(const QModelIndex& index)
{
if (m_MapTime.size() > 0)
{
QModelIndex nindex = tablemodel->index(index.row(), 0);
QString str = nindex.data().toString();
ui.TimeMgr_label->setText(str);
}
}
void QTimeMgrDlg::showEvent(QShowEvent *)
{
TimeMgrCtrl *m_pTimeMgr = m_pCtrl->getTimeMgr();
this->m_MapTime = m_pTimeMgr->getAllTime();
ui.TimeMgr_tableView->setModel(tablemodel);
ui.TimeMgr_tableView->setColumnWidth(0, 100);
ui.TimeMgr_tableView->setColumnWidth(1, 100);
ui.TimeMgr_tableView->setColumnWidth(2, 100);
//默认显示行头,如果你觉得不美观的话,我们可以将隐藏
//m_tableView->verticalHeader()->hide();
ui.TimeMgr_tableView->setSelectionBehavior(QAbstractItemView::SelectRows);
ui.TimeMgr_tableView->setEditTriggers(QAbstractItemView::NoEditTriggers);
//tableView->resizeColumnsToContents();
//如果你用在QTableView中使用右键菜单需启用该属性
//tableView->setContextMenuPolicy(Qt::CustomContextMenu);
ui.TimeMgr_tableView->setWordWrap(false);
//tableView->setShowGrid(false);//显示表格线
ui.TimeMgr_tableView->setAlternatingRowColors(true);
int nIndex = 0;
if (m_MapTime.size() <= 0)
return;
std::vector<TimeStruct> vec(m_MapTime.begin(), m_MapTime.end());
std::sort(vec.begin(), vec.end(), CmpByValueTime());
for (int n = 0; n < vec.size(); n++)
{
TimeStruct tiItem = vec.at(n);
tablemodel->setItem(nIndex, 0, new QStandardItem(tiItem.m_name));
QString strStart = QString("%1 %2").arg(tiItem.time_start == AM ? tr("当天") : tr("隔天")).arg(tiItem.m_startTime.toString("hh:mm"));
QString strEnd = QString("%1 %2").arg(tiItem.time_end == AM ? tr("当天") : tr("隔天")).arg(tiItem.m_endTime.toString("hh:mm"));
tablemodel->setItem(nIndex, 1, new QStandardItem(strStart));
tablemodel->setItem(nIndex, 2, new QStandardItem(strEnd));
nIndex++;
}
}

@ -3,6 +3,9 @@
#include <QDialog>
#include "ui_QTimeMgrDlg.h"
#include "InfoFile.h"
#include "IWheelCtrl.h"
class TimeMgrCtrl;
/*班次管理窗口页面*/
class QTimeMgrDlg : public QDialog
{
@ -11,9 +14,16 @@ class QTimeMgrDlg : public QDialog
public:
QTimeMgrDlg(QWidget *parent = Q_NULLPTR);
~QTimeMgrDlg();
void onSetCtrlPtr(IWheelCtrl *p) { m_pCtrl = p; };
Q_SLOT void onButtonClicked();
Q_SLOT void onSlotCellClicked(const QModelIndex&index);
protected:
virtual void showEvent(QShowEvent *);
private:
Ui::QTimeMgrDlg ui;
QMap<QString, TimeStruct> m_MapTime;
class QStandardItemModel *tablemodel;
IWheelCtrl *m_pCtrl{ nullptr };
};
#endif

@ -0,0 +1,10 @@
#include "lpGlobalData.h"
lpGlobalData::lpGlobalData(QObject *parent)
: QObject(parent)
{
}
lpGlobalData::~lpGlobalData()
{
}

@ -0,0 +1,27 @@
/*!
*FileName: lpGlobalData.h
*Author: Pan Yingdong
*Email: bob.pan@hzleaper.com
*Created:2021/2/10 16:17
*Note:
*/
#ifndef _H_LPGLOBALDATA_H_
#define _H_LPGLOBALDATA_H_
#include <QObject>
#include "lpsingleton.h"
class lpGlobalData : public QObject,public lpsingleton<lpGlobalData>
{
Q_OBJECT
public:
lpGlobalData(QObject *parent = nullptr);
~lpGlobalData();
int m_level{ 0 };
QString m_curUser{ "" };
};
#endif

@ -15,6 +15,8 @@
#include "HubBase.h"
#include <QToolButton>
#include <QMenu>
#include "saveimgthread.h"
#include "lpGlobalData.h"
#pragma execution_character_set("utf-8")
lpMainWin::lpMainWin(QWidget *parent)
@ -94,7 +96,6 @@ lpMainWin::lpMainWin(QWidget *parent)
m_pLbCurrentTime->setMinimumWidth(200);
m_pLbCurrentTime->setAlignment(Qt::AlignHCenter | Qt::AlignVCenter);
m_pLbBanci->setMinimumWidth(200);
m_pLbBanci->setFont(m_font);
m_pLbBanci->setAlignment(Qt::AlignHCenter | Qt::AlignVCenter);
@ -125,13 +126,19 @@ lpMainWin::lpMainWin(QWidget *parent)
m_pworkUI->InitUI();
connect(m_pworkUI, SIGNAL(sgUpdatedefect()), this, SLOT(onUpdateDefect()));
m_pModelMgrDlg = new QModelMgrDlg(m_pCtrl);
m_pDebugDlg = new QDebugDlg();
m_pTimerMgrDlg = new QTimeMgrDlg();
m_pModelMgrDlg = new QModelMgrDlg(m_pCtrl);//模板管理
m_pDebugDlg = new QDebugDlg();//调试界面
connect(m_pDebugDlg, SIGNAL(sgTriggerCam()), this, SLOT(onTriggerCam()));
m_pDebugDlg->onSetCtrl(m_pCtrl);
m_pTimerMgrDlg = new QTimeMgrDlg();//班次管理
m_pTimerMgrDlg->onSetCtrlPtr(m_pCtrl);
m_pSystemSettingDlg = new QSystemSettingDlg();//系统设置
m_CamSettingDlg = new QCamSettingDlg();
m_CamSettingDlg->setCoreCtrlPtr(m_pCoreCtrl);
m_pixMapList = new QPixmapListBar(ui.tp_main_tabWidget);
ui.tp_main_tabWidget->insertTab(0, m_pixMapList, tr("历史"));
ui.tp_main_tabWidget->setCurrentIndex(0);
@ -335,6 +342,16 @@ lpMainWin::~lpMainWin()
delete m_pTimerMgrDlg;
m_pTimerMgrDlg = nullptr;
}
if (m_pSystemSettingDlg)
{
delete m_pSystemSettingDlg;
m_pSystemSettingDlg = nullptr;
}
if (m_CamSettingDlg)
{
delete m_CamSettingDlg;
m_CamSettingDlg = nullptr;
}
if (m_ImgViewer) {
delete m_ImgViewer;
m_ImgViewer = nullptr;
@ -538,6 +555,8 @@ void lpMainWin::IVariantMapToUI(const QString& camKey, const QVariantMap& vMap)
SendResultChannel2PLC(pResult);//发送检测结果通道到PLC
m_pCtrl->saveResult(pResult);
saveImage(pResult);
delete pResult;
@ -598,19 +617,18 @@ QVariant lpMainWin::IGetVariantById(int id)
Q_SLOT void lpMainWin::onLogInOut(QString strName, int level, int state)
{
// if (state == 0) {
// m_pCtrl->setUser(strName, level);
// if (main_loginIn)
// main_loginIn->setText(tr("×¢ Ïú"));
// m_pUi->onUserRole();
// }
// else
// {
// m_pCtrl->setUser(strName, level);
// if (main_loginIn)
// main_loginIn->setText(tr("µÇ ¼"));
// m_pUi->onUserRole();
// }
lpGlobalData::instance()->m_curUser = strName;
lpGlobalData::instance()->m_level = level;
if (state == 0) {
m_pCtrl->setUser(strName, level);
ui.action_Login->setText(tr("注 销"));
}
else
{
m_pCtrl->setUser(strName, level);
ui.action_Login->setText(tr("登 录"));
}
onUpdateByLevel(level);
}
Q_SLOT void lpMainWin::onActionClicked()
@ -695,10 +713,30 @@ Q_SLOT void lpMainWin::onActionClicked()
}
}
else if ("actionSystemSeting" == strObj) {
if (m_pSystemSettingDlg)
{
m_pSystemSettingDlg->setParent(this);
m_pSystemSettingDlg->onShowWidget(lpGlobalData::instance()->m_level);
m_pSystemSettingDlg->setWindowTitle(tr("系统参数设置"));
m_pSystemSettingDlg->setWindowFlags(Qt::Dialog | Qt::WindowCloseButtonHint);
m_pSystemSettingDlg->setWindowIcon(QIcon(":/resource/logo-8.png"));
m_pSystemSettingDlg->setWindowModality(Qt::ApplicationModal);
m_pSystemSettingDlg->setAttribute(Qt::WA_ShowModal, true);
m_pSystemSettingDlg->show();
}
}
else if ("actioncamSetting" == strObj) {
if (m_CamSettingDlg)
{
m_CamSettingDlg->setParent(this);
//m_CamSettingDlg->onShowWidget(lpGlobalData::instance()->m_level);
m_CamSettingDlg->setWindowTitle(tr("相机配置"));
m_CamSettingDlg->setWindowFlags(Qt::Dialog | Qt::WindowCloseButtonHint);
m_CamSettingDlg->setWindowIcon(QIcon(":/resource/logo-8.png"));
m_CamSettingDlg->setWindowModality(Qt::ApplicationModal);
m_CamSettingDlg->setAttribute(Qt::WA_ShowModal, true);
m_CamSettingDlg->show();
}
}
}
@ -1378,3 +1416,74 @@ void lpMainWin::SendResultChannelCOM(Result2Ui* m_Res)
// SendDataToCom(0x47, frame);
//}
}
void lpMainWin::saveImage(Result2Ui* pRes)
{
if (pRes == nullptr)
return;
qDebug() << "satrt tread save Image";
QDir testDir;
bool IsTestDir = testDir.exists(DetectState::instance()->m_SaveImgDirPath);
if (!IsTestDir)
DetectState::instance()->m_SaveImgDirPath = DetectState::instance()->m_applicationDirPath;
QString baseSavePath = DetectState::instance()->m_SaveImgDirPath + "\\Data\\";
QString dataTime = QDateTime::currentDateTime().toString("yyyy-MM-dd");
QString fileSavePath = baseSavePath + "\\" + dataTime;
QString filename = pRes->m_strModel;
if (pRes->m_strModel != "NG")
{
QString goodsourceDir = fileSavePath + "\\Good";
filename += QString("_%1_%2_").arg((int)pRes->m_dThickness).arg((int)pRes->m_dDiameter);
filename += QDateTime::currentDateTime().toString("hhmmsszzz");
if (DetectState::instance()->saveGood == 1) {
goodsourceDir += "\\Source";
goodsourceDir += "\\";
goodsourceDir += pRes->m_strModel;
QString resultpath = goodsourceDir + "\\" + filename + ".png";
saveImage(pRes->m_pixSrc, goodsourceDir + "\\", filename + ".png");
}
QString goodtargetDir = fileSavePath + "\\Good";
if (DetectState::instance()->saveCutGood == 1) {
goodtargetDir += "\\Target";
goodtargetDir += "\\";
goodtargetDir += pRes->m_strModel;
QString resultpath = goodtargetDir + "\\" + filename + "Res.png";
saveImage(pRes->m_pixResult, goodtargetDir + "\\", filename + "Res.png");
}
}
else
{
QString errorSourceDir = fileSavePath + "\\Error";
filename += QString("_%1_%2_").arg((int)pRes->m_dThickness).arg((int)pRes->m_dDiameter);
filename += QDateTime::currentDateTime().toString("hhmmsszzz");
if (DetectState::instance()->saveBad == 1) {
errorSourceDir += "\\Source";
QString resultpath = errorSourceDir + "\\" + filename + ".png";
saveImage(pRes->m_pixSrc, errorSourceDir + "\\", filename + ".png");
}
QString errortargetDir = fileSavePath + "\\Error";
if (DetectState::instance()->saveCutBad == 1) {
errortargetDir += "\\Target";
QString resultpath = errortargetDir + "\\" + filename + "Res.png";
if (pRes->m_pixResult.isNull())
saveImage(pRes->m_pixSrc, errortargetDir + "\\", filename + "Res.png");
else
saveImage(pRes->m_pixResult, errortargetDir + "\\", filename + "Res.png");
}
}
}
void lpMainWin::saveImage(const QPixmap& m_pixmap, QString m_path, QString filename)
{//启动多线程保存图像
SaveImgThread *workTread = new SaveImgThread(this);
workTread->setPixmap(m_pixmap, m_path, filename);
connect(workTread, &SaveImgThread::finished, workTread, &QObject::deleteLater);
workTread->start();
}
void lpMainWin::onUpdateByLevel(int nlevel)
{
}

@ -19,6 +19,8 @@
#include "RoiImgViewer.h"
#include "InfoFile.h"
#include "qpixmapbar.h"
#include "QSystemSettingDlg.h"
#include "QCamSettingDlg.h"
class lpMainWin : public QMainWindow
{
@ -103,7 +105,6 @@ protected:
Q_SLOT void onSendDisLib(int nIndex, QString strModel);
Q_SLOT void onSendDisLibDone();
Q_SLOT void onShowChannel(QString str);
Q_SLOT void onTriggerCam();
void onInitAbout();
@ -114,6 +115,9 @@ private:
void SendResultStr2PLC(Result2Ui* m_Res);
void SendResultChannel2PLC(Result2Ui* m_Res);
void SendResultChannelCOM(Result2Ui* m_Res);
void saveImage(Result2Ui* pRes);
void saveImage(const QPixmap& m_pixmap, QString m_path, QString filename);
void onUpdateByLevel(int nlevel);
protected:
virtual void timerEvent(QTimerEvent *event);
virtual void closeEvent(QCloseEvent *event);
@ -167,6 +171,8 @@ private:
QWidget m_aboutDlg;//关于
QTimeMgrDlg* m_pTimerMgrDlg{ nullptr };
QPixmapListBar* m_pixMapList{ nullptr };//展示历史检测结果
QSystemSettingDlg* m_pSystemSettingDlg{ nullptr };
QCamSettingDlg* m_CamSettingDlg{ nullptr };
private:
IUserCtrl *m_pUserCtrl{ nullptr };//用户管理模块

@ -81,6 +81,9 @@
<ClCompile Include="GeneratedFiles\Debug\moc_IWheelCtrl.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="GeneratedFiles\Debug\moc_lpGlobalData.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="GeneratedFiles\Debug\moc_lpImgViewer.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile>
@ -108,6 +111,9 @@
<ClCompile Include="GeneratedFiles\Debug\moc_qaddtimedlg.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="GeneratedFiles\Debug\moc_QCamSettingDlg.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="GeneratedFiles\Debug\moc_qchannelmanager.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile>
@ -162,6 +168,9 @@
<ClCompile Include="GeneratedFiles\Debug\moc_qshowimg.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="GeneratedFiles\Debug\moc_QSystemSettingDlg.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="GeneratedFiles\Debug\moc_QTimeMgrDlg.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile>
@ -210,6 +219,9 @@
<ClCompile Include="GeneratedFiles\Release\moc_IWheelCtrl.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="GeneratedFiles\Release\moc_lpGlobalData.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="GeneratedFiles\Release\moc_lpImgViewer.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
</ClCompile>
@ -237,6 +249,9 @@
<ClCompile Include="GeneratedFiles\Release\moc_qaddtimedlg.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="GeneratedFiles\Release\moc_QCamSettingDlg.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="GeneratedFiles\Release\moc_qchannelmanager.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
</ClCompile>
@ -291,6 +306,9 @@
<ClCompile Include="GeneratedFiles\Release\moc_qshowimg.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="GeneratedFiles\Release\moc_QSystemSettingDlg.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="GeneratedFiles\Release\moc_QTimeMgrDlg.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
</ClCompile>
@ -315,15 +333,48 @@
<ClCompile Include="GeneratedFiles\Release\moc_WheelNet.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="lpGlobalData.cpp" />
<ClCompile Include="lpMain.cpp" />
<ClCompile Include="lpMainWin.cpp" />
<ClCompile Include="QCamSettingDlg.cpp" />
<ClCompile Include="QChannelMgrDlg.cpp" />
<ClCompile Include="QDebugDlg.cpp" />
<ClCompile Include="QModelMgrDlg.cpp" />
<ClCompile Include="QSettingDlg.cpp" />
<ClCompile Include="QSystemSettingDlg.cpp" />
<ClCompile Include="QTimeMgrDlg.cpp" />
</ItemGroup>
<ItemGroup>
<CustomBuild Include="QCamSettingDlg.h">
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Moc%27ing %(Identity)...</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_CORE_LIB -DTPMAIN_LIB -DTPMAIN_EXPORTS -DQT_GUI_LIB -DQT_WIDGETS_LIB -DQT_SQL_LIB -DQT_PRINTSUPPORT_LIB -DQT_NETWORK_LIB -DQT_SERIALPORT_LIB -D_WINDOWS -D%(PreprocessorDefinitions) "-I." "-I.\GeneratedFiles" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\ActiveQt" "-I$(QTDIR)\include\QtSerialPort" "-I$(QTDIR)\include\QtANGLE" "-I$(QTDIR)\include\QtPrintSupport" "-I$(QTDIR)\include\QtSql" "-I$(QTDIR)\include\QtNetwork" "-I.\..\..\src\algorithm" "-I.\..\..\src\tpMain" "-I.\..\..\src\tpMain\thread" "-I.\..\..\src\tpMain\splashScreen" "-I.\..\..\src\tpMain\LightBoxwidget" "-I.\..\..\src\tpMain\QDiskCleanThread" "-I.\..\..\src\tpMain\QPixmapListBar" "-I.\..\..\src\userCtrl" "-I.\..\..\src\NetWheel" "-I.\..\..\src\RasterSDG20" "-I.\..\..\src\ReportModel" "-I.\..\..\3part\libzkq\include" "-I.\..\..\3part\tadpole\include\tpBase" "-I.\..\..\3part\opencv3.4.1\include" "-I.\..\..\3part\opencv3.4.1\include\opencv" "-I.\..\..\3part\opencv3.4.1\include\opencv2" "-I.\..\..\3part\lpCoreCtrl\include" "-I.\..\..\src\tpMain\algela" "-I.\..\..\src\ImageCompare" "-I.\..\..\src\interface"</Command>
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Moc%27ing %(Identity)...</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DTPMAIN_LIB -DTPMAIN_EXPORTS -DQT_GUI_LIB -DQT_WIDGETS_LIB -DQT_SQL_LIB -DQT_PRINTSUPPORT_LIB -DQT_NETWORK_LIB -DQT_SERIALPORT_LIB -D%(PreprocessorDefinitions) "-I." "-I.\GeneratedFiles" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\ActiveQt" "-I$(QTDIR)\include\QtSerialPort" "-I$(QTDIR)\include\QtANGLE" "-I$(QTDIR)\include\QtPrintSupport" "-I$(QTDIR)\include\QtSql" "-I$(QTDIR)\include\QtNetwork" "-I.\..\..\src\algorithm" "-I.\..\..\src\tpMain" "-I.\..\..\src\tpMain\thread" "-I.\..\..\src\tpMain\splashScreen" "-I.\..\..\src\tpMain\LightBoxwidget" "-I.\..\..\src\tpMain\QDiskCleanThread" "-I.\..\..\src\tpMain\QPixmapListBar" "-I.\..\..\src\userCtrl" "-I.\..\..\src\NetWheel" "-I.\..\..\src\RasterSDG20" "-I.\..\..\src\ReportModel" "-I.\..\..\3part\libzkq\include" "-I.\..\..\3part\tadpole\include\tpBase" "-I.\..\..\3part\opencv3.4.1\include" "-I.\..\..\3part\opencv3.4.1\include\opencv" "-I.\..\..\3part\opencv3.4.1\include\opencv2" "-I.\..\..\3part\lpCoreCtrl\include" "-I.\..\..\src\tpMain\algela" "-I.\..\..\src\ImageCompare" "-I.\..\..\src\interface"</Command>
</CustomBuild>
<CustomBuild Include="lpGlobalData.h">
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Moc%27ing %(Identity)...</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_CORE_LIB -DTPMAIN_LIB -DTPMAIN_EXPORTS -DQT_GUI_LIB -DQT_WIDGETS_LIB -DQT_SQL_LIB -DQT_PRINTSUPPORT_LIB -DQT_NETWORK_LIB -DQT_SERIALPORT_LIB -D_WINDOWS -D%(PreprocessorDefinitions) "-I." "-I.\GeneratedFiles" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\ActiveQt" "-I$(QTDIR)\include\QtSerialPort" "-I$(QTDIR)\include\QtANGLE" "-I$(QTDIR)\include\QtPrintSupport" "-I$(QTDIR)\include\QtSql" "-I$(QTDIR)\include\QtNetwork" "-I.\..\..\src\algorithm" "-I.\..\..\src\tpMain" "-I.\..\..\src\tpMain\thread" "-I.\..\..\src\tpMain\splashScreen" "-I.\..\..\src\tpMain\LightBoxwidget" "-I.\..\..\src\tpMain\QDiskCleanThread" "-I.\..\..\src\tpMain\QPixmapListBar" "-I.\..\..\src\userCtrl" "-I.\..\..\src\NetWheel" "-I.\..\..\src\RasterSDG20" "-I.\..\..\src\ReportModel" "-I.\..\..\3part\libzkq\include" "-I.\..\..\3part\tadpole\include\tpBase" "-I.\..\..\3part\opencv3.4.1\include" "-I.\..\..\3part\opencv3.4.1\include\opencv" "-I.\..\..\3part\opencv3.4.1\include\opencv2" "-I.\..\..\3part\lpCoreCtrl\include" "-I.\..\..\src\tpMain\algela" "-I.\..\..\src\ImageCompare" "-I.\..\..\src\interface"</Command>
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Moc%27ing %(Identity)...</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DTPMAIN_LIB -DTPMAIN_EXPORTS -DQT_GUI_LIB -DQT_WIDGETS_LIB -DQT_SQL_LIB -DQT_PRINTSUPPORT_LIB -DQT_NETWORK_LIB -DQT_SERIALPORT_LIB -D%(PreprocessorDefinitions) "-I." "-I.\GeneratedFiles" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\ActiveQt" "-I$(QTDIR)\include\QtSerialPort" "-I$(QTDIR)\include\QtANGLE" "-I$(QTDIR)\include\QtPrintSupport" "-I$(QTDIR)\include\QtSql" "-I$(QTDIR)\include\QtNetwork" "-I.\..\..\src\algorithm" "-I.\..\..\src\tpMain" "-I.\..\..\src\tpMain\thread" "-I.\..\..\src\tpMain\splashScreen" "-I.\..\..\src\tpMain\LightBoxwidget" "-I.\..\..\src\tpMain\QDiskCleanThread" "-I.\..\..\src\tpMain\QPixmapListBar" "-I.\..\..\src\userCtrl" "-I.\..\..\src\NetWheel" "-I.\..\..\src\RasterSDG20" "-I.\..\..\src\ReportModel" "-I.\..\..\3part\libzkq\include" "-I.\..\..\3part\tadpole\include\tpBase" "-I.\..\..\3part\opencv3.4.1\include" "-I.\..\..\3part\opencv3.4.1\include\opencv" "-I.\..\..\3part\opencv3.4.1\include\opencv2" "-I.\..\..\3part\lpCoreCtrl\include" "-I.\..\..\src\tpMain\algela" "-I.\..\..\src\ImageCompare" "-I.\..\..\src\interface"</Command>
</CustomBuild>
<CustomBuild Include="QSystemSettingDlg.h">
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(QTDIR)\bin\moc.exe;%(FullPath);$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Moc%27ing %(Identity)...</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_CORE_LIB -DTPMAIN_LIB -DTPMAIN_EXPORTS -DQT_GUI_LIB -DQT_WIDGETS_LIB -DQT_SQL_LIB -DQT_PRINTSUPPORT_LIB -DQT_NETWORK_LIB -DQT_SERIALPORT_LIB -D_WINDOWS -D%(PreprocessorDefinitions) "-I." "-I.\GeneratedFiles" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\ActiveQt" "-I$(QTDIR)\include\QtSerialPort" "-I$(QTDIR)\include\QtANGLE" "-I$(QTDIR)\include\QtPrintSupport" "-I$(QTDIR)\include\QtSql" "-I$(QTDIR)\include\QtNetwork" "-I.\..\..\src\algorithm" "-I.\..\..\src\tpMain" "-I.\..\..\src\tpMain\thread" "-I.\..\..\src\tpMain\splashScreen" "-I.\..\..\src\tpMain\LightBoxwidget" "-I.\..\..\src\tpMain\QDiskCleanThread" "-I.\..\..\src\tpMain\QPixmapListBar" "-I.\..\..\src\userCtrl" "-I.\..\..\src\NetWheel" "-I.\..\..\src\RasterSDG20" "-I.\..\..\src\ReportModel" "-I.\..\..\3part\libzkq\include" "-I.\..\..\3part\tadpole\include\tpBase" "-I.\..\..\3part\opencv3.4.1\include" "-I.\..\..\3part\opencv3.4.1\include\opencv" "-I.\..\..\3part\opencv3.4.1\include\opencv2" "-I.\..\..\3part\lpCoreCtrl\include" "-I.\..\..\src\tpMain\algela" "-I.\..\..\src\ImageCompare" "-I.\..\..\src\interface"</Command>
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(QTDIR)\bin\moc.exe;%(FullPath);$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Moc%27ing %(Identity)...</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DTPMAIN_LIB -DTPMAIN_EXPORTS -DQT_GUI_LIB -DQT_WIDGETS_LIB -DQT_SQL_LIB -DQT_PRINTSUPPORT_LIB -DQT_NETWORK_LIB -DQT_SERIALPORT_LIB -D%(PreprocessorDefinitions) "-I." "-I.\GeneratedFiles" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\ActiveQt" "-I$(QTDIR)\include\QtSerialPort" "-I$(QTDIR)\include\QtANGLE" "-I$(QTDIR)\include\QtPrintSupport" "-I$(QTDIR)\include\QtSql" "-I$(QTDIR)\include\QtNetwork" "-I.\..\..\src\algorithm" "-I.\..\..\src\tpMain" "-I.\..\..\src\tpMain\thread" "-I.\..\..\src\tpMain\splashScreen" "-I.\..\..\src\tpMain\LightBoxwidget" "-I.\..\..\src\tpMain\QDiskCleanThread" "-I.\..\..\src\tpMain\QPixmapListBar" "-I.\..\..\src\userCtrl" "-I.\..\..\src\NetWheel" "-I.\..\..\src\RasterSDG20" "-I.\..\..\src\ReportModel" "-I.\..\..\3part\libzkq\include" "-I.\..\..\3part\tadpole\include\tpBase" "-I.\..\..\3part\opencv3.4.1\include" "-I.\..\..\3part\opencv3.4.1\include\opencv" "-I.\..\..\3part\opencv3.4.1\include\opencv2" "-I.\..\..\3part\lpCoreCtrl\include" "-I.\..\..\src\tpMain\algela" "-I.\..\..\src\ImageCompare" "-I.\..\..\src\interface"</Command>
</CustomBuild>
<CustomBuild Include="QSettingDlg.h">
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Moc%27ing %(Identity)...</Message>
@ -367,6 +418,7 @@
<ClInclude Include="GeneratedFiles\ui_qaddchanneldlg.h" />
<ClInclude Include="GeneratedFiles\ui_qaddmodel.h" />
<ClInclude Include="GeneratedFiles\ui_qaddtimedlg.h" />
<ClInclude Include="GeneratedFiles\ui_QCamSettingDlg.h" />
<ClInclude Include="GeneratedFiles\ui_qchannelmanager.h" />
<ClInclude Include="GeneratedFiles\ui_QChannelMgrDlg.h" />
<ClInclude Include="GeneratedFiles\ui_QDebugDlg.h" />
@ -376,6 +428,7 @@
<ClInclude Include="GeneratedFiles\ui_qmodnamedlg.h" />
<ClInclude Include="GeneratedFiles\ui_QSettingDlg.h" />
<ClInclude Include="GeneratedFiles\ui_qshowimg.h" />
<ClInclude Include="GeneratedFiles\ui_QSystemSettingUI.h" />
<ClInclude Include="GeneratedFiles\ui_QTimeMgrDlg.h" />
<ClInclude Include="GeneratedFiles\ui_qworkItemdlg.h" />
<ClInclude Include="GeneratedFiles\ui_qworkmgrui.h" />
@ -1210,6 +1263,30 @@
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\uic.exe" -o ".\GeneratedFiles\ui_%(Filename).h" "%(FullPath)"</Command>
</CustomBuild>
</ItemGroup>
<ItemGroup>
<CustomBuild Include="QSystemSettingUI.ui">
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(QTDIR)\bin\uic.exe;%(AdditionalInputs)</AdditionalInputs>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Uic%27ing %(Identity)...</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\GeneratedFiles\ui_%(Filename).h;%(Outputs)</Outputs>
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\uic.exe" -o ".\GeneratedFiles\ui_%(Filename).h" "%(FullPath)"</Command>
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(QTDIR)\bin\uic.exe;%(AdditionalInputs)</AdditionalInputs>
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Uic%27ing %(Identity)...</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\GeneratedFiles\ui_%(Filename).h;%(Outputs)</Outputs>
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\uic.exe" -o ".\GeneratedFiles\ui_%(Filename).h" "%(FullPath)"</Command>
</CustomBuild>
</ItemGroup>
<ItemGroup>
<CustomBuild Include="QCamSettingDlg.ui">
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(QTDIR)\bin\uic.exe;%(AdditionalInputs)</AdditionalInputs>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Uic%27ing %(Identity)...</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\GeneratedFiles\ui_%(Filename).h;%(Outputs)</Outputs>
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\uic.exe" -o ".\GeneratedFiles\ui_%(Filename).h" "%(FullPath)"</Command>
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(QTDIR)\bin\uic.exe;%(AdditionalInputs)</AdditionalInputs>
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Uic%27ing %(Identity)...</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\GeneratedFiles\ui_%(Filename).h;%(Outputs)</Outputs>
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\uic.exe" -o ".\GeneratedFiles\ui_%(Filename).h" "%(FullPath)"</Command>
</CustomBuild>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{A229CF5C-81EF-4909-AB6E-49C746F1ED4C}</ProjectGuid>
<Keyword>Qt4VSv1.0</Keyword>
@ -1278,9 +1355,9 @@
<Link>
<SubSystem>Console</SubSystem>
<OutputFile>$(SolutionDir)..\runner13\$(TargetName)$(TargetExt)</OutputFile>
<AdditionalLibraryDirectories>$(QTDIR)\lib;$(OutDir);..\..\..\frogs\win32\lib;..\..\..\lpopencv\openCV2.4.9\build\x86\vc12\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<AdditionalLibraryDirectories>$(QTDIR)\lib;$(OutDir);..\..\3part\opencv3.4.1\x64\vc15\lib;..\..\3part\Cyclops\lib;..\..\3part\libzkq\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalDependencies>qtmain.lib;Qt5Core.lib;Qt5Gui.lib;Qt5Widgets.lib;Qt5AxContainer.lib;Qt5AxBase.lib;Qt5Sql.lib;opencv_core249.lib;opencv_highgui249.lib;opencv_imgproc249.lib;opencv_features2d249.lib;opencv_calib3d249.lib;luffy.lib;Cyclops.lib;Qt5PrintSupport.lib;Qt5Network.lib;libzkq.lib;Qt5SerialPort.lib;tpGui.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalDependencies>qtmain.lib;Qt5Core.lib;Qt5Gui.lib;Qt5Widgets.lib;Qt5AxContainer.lib;Qt5AxBase.lib;Qt5Sql.lib;Qt5PrintSupport.lib;Qt5Network.lib;Qt5SerialPort.lib;libzkq.lib;luffy.lib;Cyclops.lib;opencv_world341.lib;%(AdditionalDependencies)</AdditionalDependencies>
<GenerateMapFile>true</GenerateMapFile>
<Profile>true</Profile>
</Link>

@ -81,9 +81,6 @@
<Filter Include="BaseUILib\pulpewidget">
<UniqueIdentifier>{e1b50e51-3618-4ac6-a2f1-9bd69105122b}</UniqueIdentifier>
</Filter>
<Filter Include="ToolLib">
<UniqueIdentifier>{c18cd373-aa9a-40f9-b311-780dcdfee81e}</UniqueIdentifier>
</Filter>
<Filter Include="CustomUILib">
<UniqueIdentifier>{9e4e103a-8a97-4330-a5cd-552944505af4}</UniqueIdentifier>
</Filter>
@ -518,6 +515,33 @@
<ClCompile Include="..\..\src\tpMain\qpulpewidget.cpp">
<Filter>BaseUILib\pulpewidget</Filter>
</ClCompile>
<ClCompile Include="QSystemSettingDlg.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="GeneratedFiles\Debug\moc_QSystemSettingDlg.cpp">
<Filter>Generated Files\Debug</Filter>
</ClCompile>
<ClCompile Include="GeneratedFiles\Release\moc_QSystemSettingDlg.cpp">
<Filter>Generated Files\Release</Filter>
</ClCompile>
<ClCompile Include="GeneratedFiles\Debug\moc_lpGlobalData.cpp">
<Filter>Generated Files\Debug</Filter>
</ClCompile>
<ClCompile Include="GeneratedFiles\Release\moc_lpGlobalData.cpp">
<Filter>Generated Files\Release</Filter>
</ClCompile>
<ClCompile Include="lpGlobalData.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="GeneratedFiles\Debug\moc_QCamSettingDlg.cpp">
<Filter>Generated Files\Debug</Filter>
</ClCompile>
<ClCompile Include="GeneratedFiles\Release\moc_QCamSettingDlg.cpp">
<Filter>Generated Files\Release</Filter>
</ClCompile>
<ClCompile Include="QCamSettingDlg.cpp">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\..\src\algorithm\ImageProcess.h">
@ -658,6 +682,12 @@
<ClInclude Include="..\..\src\ImageCompare\TransSolver.h">
<Filter>ImageCompare</Filter>
</ClInclude>
<ClInclude Include="GeneratedFiles\ui_QSystemSettingUI.h">
<Filter>Generated Files</Filter>
</ClInclude>
<ClInclude Include="GeneratedFiles\ui_QCamSettingDlg.h">
<Filter>Generated Files</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<CustomBuild Include="..\..\src\tpMain\QDiskCleanThread\QDiskCleanThread.h">
@ -834,6 +864,21 @@
<CustomBuild Include="..\..\src\tpMain\qpulpewidget.h">
<Filter>BaseUILib\pulpewidget</Filter>
</CustomBuild>
<CustomBuild Include="QSystemSettingUI.ui">
<Filter>Form Files</Filter>
</CustomBuild>
<CustomBuild Include="QSystemSettingDlg.h">
<Filter>Header Files</Filter>
</CustomBuild>
<CustomBuild Include="lpGlobalData.h">
<Filter>Header Files</Filter>
</CustomBuild>
<CustomBuild Include="QCamSettingDlg.h">
<Filter>Header Files</Filter>
</CustomBuild>
<CustomBuild Include="QCamSettingDlg.ui">
<Filter>Form Files</Filter>
</CustomBuild>
</ItemGroup>
<ItemGroup>
<Image Include="..\..\src\tpMain\none.jpg">

@ -9,8 +9,8 @@
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<QTDIR>D:\Qt\Qt5.9.4\5.9.4\msvc2017_64</QTDIR>
<LocalDebuggerCommand>E:\LeaperProject\hubDetect\runner13\tpShell.exe</LocalDebuggerCommand>
<LocalDebuggerWorkingDirectory>E:\LeaperProject\hubDetect\runner13\</LocalDebuggerWorkingDirectory>
<LocalDebuggerCommand>$(SolutionDir)..\runner17\Enchanter.exe</LocalDebuggerCommand>
<LocalDebuggerWorkingDirectory>$(SolutionDir)..\runner17\</LocalDebuggerWorkingDirectory>
<DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
<LocalDebuggerEnvironment>PATH=$(QTDIR)\bin%3b"$(QTDIR)\bin%3b$(QTDIR)\bin%3b"$(QTDIR)\bin%3b$(QTDIR)\bin%3b"$(QTDIR)\bin%3b$(QTDIR)\bin%3b"$(QTDIR)\bin%3b$(QTDIR)\bin%3b"$(QTDIR)\bin%3b$(QTDIR)\bin%3b"$(QTDIR)\bin%3b$(QTDIR)\bin%3b"$(QTDIR)\bin%3b$(QTDIR)\bin%3b"$(QTDIR)\bin%3b$(QTDIR)\bin%3b"$(QTDIR)\bin%3b$(QTDIR)\bin%3b"$(QTDIR)\bin%3b$(QTDIR)\bin%3b"$(QTDIR)\bin%3b$(QTDIR)\bin%3b"$(QTDIR)\bin%3b$(QTDIR)\bin%3b"$(QTDIR)\bin%3b$(QTDIR)\bin%3b"$(QTDIR)\bin%3b$(QTDIR)\bin%3b"$(QTDIR)\bin%3b$(QTDIR)\bin%3b"$(QTDIR)\bin%3b$(QTDIR)\bin%3b"$(QTDIR)\bin%3b$(QTDIR)\bin%3b"$(QTDIR)\bin%3b$(QTDIR)\bin%3b"$(QTDIR)\bin%3b$(QTDIR)\bin%3b"$(QTDIR)\bin%3b$(QTDIR)\bin%3b"$(QTDIR)\bin%3b$(QTDIR)\bin%3b"$(QTDIR)\bin%3b$(QTDIR)\bin%3b"$(QTDIR)\bin%3b$(QTDIR)\bin%3b"$(QTDIR)\bin%3b$(QTDIR)\bin%3b"$(QTDIR)\bin%3b$(QTDIR)\bin%3b"$(QTDIR)\bin%3b$(QTDIR)\bin%3b"$(QTDIR)\bin%3b$(QTDIR)\bin%3b"$(QTDIR)\bin%3b$(QTDIR)\bin%3b"$(QTDIR)\bin%3b$(QTDIR)\bin%3b"$(QTDIR)\bin%3b$(QTDIR)\bin%3b"$(QTDIR)\bin%3b$(QTDIR)\bin%3b"$(QTDIR)\bin%3b$(QTDIR)\bin%3b"$(QTDIR)\bin%3b$(PATH)</LocalDebuggerEnvironment>
</PropertyGroup>

@ -9,6 +9,8 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tpAlgorithmQt", "tpAlgorith
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "QUserInfo", "QUserInfo\QUserInfo.vcxproj", "{D7AF8AA1-0F2C-407F-B135-FBDA4448EE16}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "RasterSDG20", "RasterSDG20\RasterSDG20.vcxproj", "{CE765894-2106-48FE-99C3-D8D7624889A0}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|x64 = Debug|x64
@ -27,12 +29,16 @@ Global
{D7AF8AA1-0F2C-407F-B135-FBDA4448EE16}.Debug|x64.Build.0 = Debug|x64
{D7AF8AA1-0F2C-407F-B135-FBDA4448EE16}.Release|x64.ActiveCfg = Release|x64
{D7AF8AA1-0F2C-407F-B135-FBDA4448EE16}.Release|x64.Build.0 = Release|x64
{CE765894-2106-48FE-99C3-D8D7624889A0}.Debug|x64.ActiveCfg = Debug|x64
{CE765894-2106-48FE-99C3-D8D7624889A0}.Debug|x64.Build.0 = Debug|x64
{CE765894-2106-48FE-99C3-D8D7624889A0}.Release|x64.ActiveCfg = Release|x64
{CE765894-2106-48FE-99C3-D8D7624889A0}.Release|x64.Build.0 = Release|x64
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

Loading…
Cancel
Save