显示滚轴计数详细情况,调整显示畸变值流程

This commit is contained in:
yangjiaxuan 2023-02-11 09:55:12 +08:00
parent 5d15738fef
commit b87d8ed0a9
6 changed files with 190 additions and 108 deletions

View File

@ -219,12 +219,12 @@
<translation></translation>
</message>
<message>
<location filename="dialog_userinput.cpp" line="90"/>
<location filename="dialog_userinput.cpp" line="96"/>
<source>tips</source>
<translation></translation>
</message>
<message>
<location filename="dialog_userinput.cpp" line="90"/>
<location filename="dialog_userinput.cpp" line="96"/>
<source>please input valid contents</source>
<translation></translation>
</message>
@ -656,14 +656,14 @@
<translation type="vanished"></translation>
</message>
<message>
<location filename="form_burnmode.cpp" line="147"/>
<location filename="form_burnmode.cpp" line="324"/>
<location filename="form_burnmode.cpp" line="155"/>
<location filename="form_burnmode.cpp" line="332"/>
<source>tips</source>
<translation></translation>
</message>
<message>
<location filename="form_burnmode.cpp" line="147"/>
<location filename="form_burnmode.cpp" line="324"/>
<location filename="form_burnmode.cpp" line="155"/>
<location filename="form_burnmode.cpp" line="332"/>
<source>Please check a devices at least</source>
<translation></translation>
</message>
@ -764,28 +764,28 @@
<translation></translation>
</message>
<message>
<location filename="form_maininterface.cpp" line="57"/>
<location filename="form_maininterface.cpp" line="60"/>
<source>Device has connected</source>
<translation></translation>
</message>
<message>
<location filename="form_maininterface.cpp" line="61"/>
<location filename="form_maininterface.cpp" line="64"/>
<source>Device hasnot connected</source>
<translation></translation>
</message>
<message>
<location filename="form_maininterface.cpp" line="62"/>
<location filename="form_maininterface.cpp" line="65"/>
<source>Device type:</source>
<translation></translation>
</message>
<message>
<location filename="form_maininterface.cpp" line="62"/>
<location filename="form_maininterface.cpp" line="65"/>
<source> SerialNum:</source>
<translation> </translation>
</message>
<message>
<location filename="form_maininterface.cpp" line="63"/>
<location filename="form_maininterface.cpp" line="149"/>
<location filename="form_maininterface.cpp" line="66"/>
<location filename="form_maininterface.cpp" line="146"/>
<source> connect status:</source>
<translation> </translation>
</message>
@ -798,22 +798,23 @@
<translation type="vanished"> </translation>
</message>
<message>
<location filename="form_maininterface.cpp" line="87"/>
<location filename="form_maininterface.cpp" line="84"/>
<source>load last image which uploaded last time</source>
<translation></translation>
</message>
<message>
<location filename="form_maininterface.cpp" line="148"/>
<location filename="form_maininterface.cpp" line="145"/>
<source>Device has disconnected</source>
<translation></translation>
</message>
<message>
<location filename="form_maininterface.cpp" line="165"/>
<location filename="form_maininterface.cpp" line="162"/>
<source>tips</source>
<translation></translation>
</message>
<message>
<location filename="form_maininterface.cpp" line="209"/>
<location filename="form_maininterface.cpp" line="204"/>
<location filename="form_maininterface.cpp" line="214"/>
<source>destortion value: </source>
<translation> </translation>
</message>
@ -831,63 +832,90 @@
<translation> </translation>
</message>
<message>
<location filename="form_maininterface.cpp" line="73"/>
<location filename="form_maininterface.cpp" line="69"/>
<source> sleep time:</source>
<translation> </translation>
</message>
<message>
<location filename="form_maininterface.cpp" line="343"/>
<location filename="form_maininterface.cpp" line="354"/>
<source>ID</source>
<translation></translation>
</message>
<message>
<location filename="form_maininterface.cpp" line="343"/>
<location filename="form_maininterface.cpp" line="354"/>
<source>Test items</source>
<translation></translation>
</message>
<message>
<location filename="form_maininterface.cpp" line="343"/>
<location filename="form_maininterface.cpp" line="354"/>
<source>status</source>
<translation></translation>
</message>
<message>
<location filename="form_maininterface.cpp" line="425"/>
<location filename="form_maininterface.cpp" line="436"/>
<source>not test</source>
<translation></translation>
</message>
<message>
<location filename="form_maininterface.cpp" line="425"/>
<location filename="form_maininterface.cpp" line="436"/>
<source>not pass</source>
<translation></translation>
</message>
<message>
<location filename="form_maininterface.cpp" line="425"/>
<location filename="form_maininterface.cpp" line="436"/>
<source>not support</source>
<translation></translation>
</message>
<message>
<location filename="form_maininterface.cpp" line="425"/>
<location filename="form_maininterface.cpp" line="436"/>
<source>pass</source>
<translation></translation>
</message>
<message>
<location filename="form_maininterface.cpp" line="208"/>
<location filename="form_maininterface.cpp" line="490"/>
<source>target configuration:
</source>
<translation type="vanished">\n\t</translation>
</message>
<message>
<source>speed mode:</source>
<translation type="vanished"></translation>
</message>
<message>
<source>sleep time:</source>
<translation type="vanished"></translation>
</message>
<message>
<source>Vid:</source>
<translation type="vanished">Vid</translation>
</message>
<message>
<source>Pid:</source>
<translation type="vanished">Pid</translation>
</message>
<message>
<location filename="form_maininterface.cpp" line="631"/>
<location filename="form_maininterface.cpp" line="680"/>
<source>device roller count:</source>
<translation></translation>
</message>
<message>
<location filename="form_maininterface.cpp" line="200"/>
<location filename="form_maininterface.cpp" line="502"/>
<source>image pixel: </source>
<translation>标准圆: * : </translation>
</message>
<message>
<location filename="form_maininterface.cpp" line="519"/>
<location filename="form_maininterface.cpp" line="539"/>
<source> minute</source>
<translation> </translation>
</message>
<message>
<location filename="form_maininterface.cpp" line="535"/>
<location filename="form_maininterface.cpp" line="71"/>
<source> VID:</source>
<translation> VID</translation>
</message>
<message>
<location filename="form_maininterface.cpp" line="535"/>
<location filename="form_maininterface.cpp" line="71"/>
<source> PID:</source>
<translation> PID</translation>
</message>
@ -962,7 +990,7 @@
<translation></translation>
</message>
<message>
<location filename="mainwindow.cpp" line="497"/>
<location filename="mainwindow.cpp" line="505"/>
<source>Account login elsewhere</source>
<translation></translation>
</message>
@ -971,53 +999,51 @@
<translation type="vanished"></translation>
</message>
<message>
<location filename="mainwindow.cpp" line="500"/>
<location filename="mainwindow.cpp" line="508"/>
<source>You have been forced offline by the administrator account</source>
<translation>线</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="503"/>
<location filename="mainwindow.cpp" line="511"/>
<source>Data base error</source>
<translation></translation>
</message>
<message>
<location filename="mainwindow.cpp" line="310"/>
<location filename="mainwindow.cpp" line="433"/>
<location filename="mainwindow.cpp" line="451"/>
<location filename="mainwindow.cpp" line="513"/>
<location filename="mainwindow.cpp" line="532"/>
<location filename="mainwindow.cpp" line="559"/>
<location filename="mainwindow.cpp" line="563"/>
<location filename="mainwindow.cpp" line="572"/>
<location filename="mainwindow.cpp" line="584"/>
<location filename="mainwindow.cpp" line="644"/>
<location filename="mainwindow.cpp" line="312"/>
<location filename="mainwindow.cpp" line="521"/>
<location filename="mainwindow.cpp" line="540"/>
<location filename="mainwindow.cpp" line="567"/>
<location filename="mainwindow.cpp" line="571"/>
<location filename="mainwindow.cpp" line="580"/>
<location filename="mainwindow.cpp" line="592"/>
<location filename="mainwindow.cpp" line="668"/>
<source>tips</source>
<translation></translation>
</message>
<message>
<location filename="mainwindow.cpp" line="44"/>
<location filename="mainwindow.cpp" line="47"/>
<source>production tool-burn station</source>
<translation>-</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="90"/>
<location filename="mainwindow.cpp" line="92"/>
<source>production tool-init test station</source>
<translation>-</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="92"/>
<location filename="mainwindow.cpp" line="94"/>
<source>production tool-image test station</source>
<translation>-</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="94"/>
<location filename="mainwindow.cpp" line="96"/>
<source>production tool-pressure test station</source>
<translation>-</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="310"/>
<location filename="mainwindow.cpp" line="572"/>
<location filename="mainwindow.cpp" line="584"/>
<location filename="mainwindow.cpp" line="312"/>
<location filename="mainwindow.cpp" line="580"/>
<location filename="mainwindow.cpp" line="592"/>
<source>Is testing, do not close!</source>
<translation></translation>
</message>
@ -1026,10 +1052,9 @@
<translation type="vanished"></translation>
</message>
<message>
<location filename="mainwindow.cpp" line="421"/>
<source>Confirm whether the device is reset</source>
<oldsource>Are you sure to connect the new device</oldsource>
<translation></translation>
<translation type="vanished"></translation>
</message>
<message>
<source>yes</source>
@ -1040,9 +1065,8 @@
<translation type="vanished"></translation>
</message>
<message>
<location filename="mainwindow.cpp" line="451"/>
<location filename="mainwindow.cpp" line="532"/>
<location filename="mainwindow.cpp" line="644"/>
<location filename="mainwindow.cpp" line="540"/>
<location filename="mainwindow.cpp" line="668"/>
<source>cannot create more table</source>
<translation></translation>
</message>
@ -1055,52 +1079,51 @@
<translation type="vanished"></translation>
</message>
<message>
<location filename="mainwindow.cpp" line="433"/>
<source>Open device failed</source>
<translation></translation>
<translation type="vanished"></translation>
</message>
<message>
<location filename="mainwindow.cpp" line="554"/>
<location filename="mainwindow.cpp" line="562"/>
<source>save</source>
<translation></translation>
</message>
<message>
<location filename="mainwindow.cpp" line="554"/>
<location filename="mainwindow.cpp" line="562"/>
<source>xls(*.xls)</source>
<translation>xls表格(*.xls)</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="559"/>
<location filename="mainwindow.cpp" line="567"/>
<source>export succeed</source>
<translation></translation>
</message>
<message>
<location filename="mainwindow.cpp" line="563"/>
<location filename="mainwindow.cpp" line="571"/>
<source>export failed</source>
<translation></translation>
</message>
<message>
<location filename="mainwindow.cpp" line="596"/>
<location filename="mainwindow.cpp" line="604"/>
<source>Illegal user</source>
<translation></translation>
</message>
<message>
<location filename="mainwindow.cpp" line="600"/>
<location filename="mainwindow.cpp" line="608"/>
<source>Wrong password</source>
<translation></translation>
</message>
<message>
<location filename="mainwindow.cpp" line="604"/>
<location filename="mainwindow.cpp" line="612"/>
<source>Database error</source>
<translation></translation>
</message>
<message>
<location filename="mainwindow.cpp" line="608"/>
<location filename="mainwindow.cpp" line="616"/>
<source>connect error</source>
<translation></translation>
</message>
<message>
<location filename="mainwindow.cpp" line="612"/>
<location filename="mainwindow.cpp" line="620"/>
<source>Failed</source>
<translation></translation>
</message>
@ -1108,19 +1131,19 @@
<context>
<name>QObject</name>
<message>
<location filename="hgscanner.cpp" line="86"/>
<location filename="hgscanner.cpp" line="91"/>
<source>success: </source>
<oldsource>success</oldsource>
<translation>: </translation>
</message>
<message>
<location filename="hgscanner.cpp" line="60"/>
<location filename="hgscanner.cpp" line="88"/>
<location filename="hgscanner.cpp" line="65"/>
<location filename="hgscanner.cpp" line="93"/>
<source>failed: </source>
<translation> </translation>
</message>
<message>
<location filename="hgscanner.cpp" line="44"/>
<location filename="hgscanner.cpp" line="49"/>
<source>Not find test item</source>
<translation></translation>
</message>

View File

@ -33,6 +33,9 @@ Form_mainInterface::Form_mainInterface(class MainWindow *mainwnd, Dialog_logIn::
, m_isTesting(false)
, m_multiIndex(-1)
, m_curNameIndex(1)
, m_curDpi(0)
, m_distortion_200dpi(0.0)
, m_distortion_300dpi(0.0)
{
ui->setupUi(this);
@ -62,20 +65,14 @@ Form_mainInterface::Form_mainInterface(class MainWindow *mainwnd, Dialog_logIn::
ui->label_sn->setText(tr("Device type:") + m_devType + tr(" SerialNum:") + m_serialNum);
ui->label_devStatus->setText(tr(" connect status:") + str);
SANE_Int speedMode = 0;
unsigned int len = sizeof(SANE_Int);
sane_io_control(m_handle, IO_CTRL_CODE_GET_SPEED_MODE, &speedMode, &len);
ui->label_speedMode->setText(tr(" speed mode:") + getSpeedMode(speedMode));
ui->label_speedMode->setText(tr(" speed mode:") + getSpeedMode());
ui->label_sleepTime->setText(tr(" sleep time:") + getSleepTime());
int sleepTime = SANE_POWER_FIRST;
unsigned int len2 = sizeof(int);
sane_io_control(m_handle, IO_CTRL_CODE_GET_POWER_LEVEL, &sleepTime, &len2);
ui->label_sleepTime->setText(tr(" sleep time:") + getSleepTime(sleepTime));
getVidPid();
ui->label_vidpid->setText(tr(" VID:") + getDevVid() + tr(" PID:") + getDevPid());
ui->label_imgInfo->setVisible(false);
ui->label_destortionInfo->setVisible(false);
ui->label_destortionInfo_200dpi->setVisible(false);
ui->label_destortionInfo_300dpi->setVisible(false);
setMinimumWidth(500);
ui->tableWidget->setMinimumWidth(450);
@ -197,20 +194,29 @@ void Form_mainInterface::on_testResultImg(void *img)
void Form_mainInterface::on_testDistortion(SANE_DISTORTION_VAL data)
{
ui->label_imgInfo->setVisible(true);
ui->label_destortionInfo->setVisible(true);
ui->label_destortionInfo_200dpi->setVisible(true);
ui->label_destortionInfo_300dpi->setVisible(true);
// SANE_DISTORTION_VAL* val = (SANE_DISTORTION_VAL*)data;
// double width = val->w;
// double height = val->h;
// double scaleXY = val->scaleXY;
ui->label_imgInfo->setText(tr("image pixel: ") + QString::number(data.w, 'f') + " * " + QString::number(data.h, 'f'));
ui->label_destortionInfo->setText(tr("destortion value: ") + QString::number(data.scaleXY, 'f'));
if (m_hg != nullptr)
ui->label_imgInfo->setText(tr("image pixel: ") + QString::number(data.w > 0 ? data.w : 0.0, 'f') + " * " + QString::number(data.h > 0 ? data.h : 0.0, 'f'));
if (200 == m_curDpi)
{
m_hg->setDistortValue(data.scaleXY);
m_distortion_200dpi = data.scaleXY > 0 ? data.scaleXY : 0;
ui->label_destortionInfo_200dpi->setText(" 200dpi" + tr("destortion value: ") + QString::number(m_distortion_200dpi, 'f'));
if (m_hg != nullptr)
{
m_hg->setDistortValue(m_distortion_200dpi);
}
}
else if (300 == m_curDpi)
{
m_distortion_300dpi = data.scaleXY > 0 ? data.scaleXY : 0;
ui->label_destortionInfo_300dpi->setText(" 300dpi" + tr("destortion value: ") + QString::number(m_distortion_300dpi, 'f'));
if (m_hg != nullptr)
{
m_hg->setDistortValue(m_distortion_300dpi);
}
}
// updateImgPixelInfo();
@ -481,7 +487,8 @@ void Form_mainInterface::updateUiEnabled(bool enable)
void Form_mainInterface::updateImgPixelInfo()
{
ui->label_imgInfo->setVisible(true);
ui->label_destortionInfo->setVisible(true);
ui->label_destortionInfo_200dpi->setVisible(true);
ui->label_destortionInfo_300dpi->setVisible(true);
HGImage image = NULL;
m_view->getImage(&image);
@ -495,8 +502,12 @@ void Form_mainInterface::updateImgPixelInfo()
ui->label_imgInfo->setText(tr("image pixel: ") + QString::number(imgWidth) + " * " + QString::number(imgHeight) + " ");
}
QString Form_mainInterface::getSpeedMode(SANE_Int speedMode)
QString Form_mainInterface::getSpeedMode()
{
SANE_Int speedMode = 0;
unsigned int len = sizeof(SANE_Int);
sane_io_control(m_handle, IO_CTRL_CODE_GET_SPEED_MODE, &speedMode, &len);
const wchar_t G100[6] = { 70,80,90,110 };
const wchar_t G200[6] = { 100,110,120,130 };
const wchar_t G300[6] = { 40,50,60,70 };
@ -516,15 +527,19 @@ QString Form_mainInterface::getSpeedMode(SANE_Int speedMode)
return QString::number(speed) + "PPM";
}
QString Form_mainInterface::getSleepTime(int sleepTime)
QString Form_mainInterface::getSleepTime()
{
int sleepTime = SANE_POWER_FIRST;
unsigned int len2 = sizeof(int);
sane_io_control(m_handle, IO_CTRL_CODE_GET_POWER_LEVEL, &sleepTime, &len2);
if (sleepTime > 99999 || sleepTime == -1)
return QString::number(0);
return QString::number(sleepTime / 60) + tr(" minute");
}
void Form_mainInterface::getVidPid()
QString Form_mainInterface::getDevVid()
{
VIDPID vidpid;
int vidpid_val;
@ -532,12 +547,35 @@ void Form_mainInterface::getVidPid()
sane_io_control(m_handle, IO_CTRL_CODE_GET_VIDPID, &vidpid_val, &len);
vidpid.Value = vidpid_val;
int vid = vidpid.VID;
char buf[10];
sprintf(buf, "%x", vid);
return QString::fromStdString(buf);
}
QString Form_mainInterface::getDevPid()
{
VIDPID vidpid;
int vidpid_val;
unsigned int len = sizeof(int);
sane_io_control(m_handle, IO_CTRL_CODE_GET_VIDPID, &vidpid_val, &len);
vidpid.Value = vidpid_val;
int pid = vidpid.PID;
char buf[10];
char buf2[10];
sprintf(buf, "%x", vid);
sprintf(buf2, "%x", pid);
ui->label_vidpid->setText(tr(" VID:") + QString::fromStdString(buf) + tr(" PID:") + QString::fromStdString(buf2));
sprintf(buf, "%x", pid);
return QString::fromStdString(buf);
}
int Form_mainInterface::getRollerNum()
{
SANE_Int rollCount = 0;
unsigned int rollCountSize = sizeof(SANE_Int);
SANE_Status ret = sane_io_control(m_handle, IO_CTRL_CODE_GET_ROLLER_NUM, &rollCount, &rollCountSize);
if (ret == SANE_STATUS_GOOD)
return rollCount >= 0 ? rollCount : -1;
else
return -1;
}
void Form_mainInterface::on_tableWidget_currentItemChanged(QTableWidgetItem *current, QTableWidgetItem *previous)
@ -587,6 +625,12 @@ void Form_mainInterface::on_tableWidget_currentItemChanged(QTableWidgetItem *cur
// QDir dir(getCachePath());
// if (dir.exists())
// dir.removeRecursively();
if (name == "CLEAR_ROLLER_COUNT")
{
QString str(tr("device roller count:") + QString::number(getRollerNum()));
m_textTips->setViewContent(str);
}
}
}
@ -615,6 +659,7 @@ void Form_mainInterface::on_pbtn_start_clicked()
wchar_t buf[5] = {0};
if (dpi > 0)
{
m_curDpi = dpi;
swprintf(buf, L"%d", dpi);
}
@ -629,6 +674,12 @@ void Form_mainInterface::on_pbtn_start_clicked()
else
func_test_go(name.toStdWString().c_str(), L"null", m_hg);
}
if (name == "CLEAR_ROLLER_COUNT")
{
QString str(tr("device roller count:") + QString::number(getRollerNum()));
m_textTips->setViewContent(str);
}
}
}

View File

@ -82,9 +82,11 @@ private:
QString getCurItemName();
void updateUiEnabled(bool enable);
void updateImgPixelInfo();
QString getSpeedMode(SANE_Int speedMode);
QString getSleepTime(int sleepTime);
void getVidPid();
QString getSpeedMode();
QString getSleepTime();
QString getDevVid();
QString getDevPid();
int getRollerNum();
private:
union VIDPID
@ -119,6 +121,9 @@ private:
bool m_isTesting;
int m_multiIndex;
int m_curNameIndex;
int m_curDpi;
double m_distortion_200dpi;
double m_distortion_300dpi;
QStringList m_list_images;
QMap<QString, AnalysisJson::json_node> m_map_title_name;

View File

@ -197,7 +197,14 @@
</widget>
</item>
<item>
<widget class="QLabel" name="label_destortionInfo">
<widget class="QLabel" name="label_destortionInfo_200dpi">
<property name="text">
<string/>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_destortionInfo_300dpi">
<property name="text">
<string/>
</property>

View File

@ -105,10 +105,6 @@ void hgscanner::test_callback(const wchar_t* name, test_event ev, void* data, si
{
if (data != nullptr)
{
// qDebug() << ((SANE_DISTORTION_VAL*)data)->w;
// qDebug() << ((SANE_DISTORTION_VAL*)data)->h;
// qDebug() << ((SANE_DISTORTION_VAL*)data)->scaleXY;
if (m_interface != nullptr)
{
emit m_interface->testDistortion(*((SANE_DISTORTION_VAL*)data));