1.0版本
@ -95,6 +95,9 @@ text-align:center;
|
||||
<height>31</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>查找</string>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">background-image: url(:/images/images/imgModelAction/Search.png);</string>
|
||||
</property>
|
||||
|
||||
@ -361,7 +361,7 @@ void BaseWgt::maximumBtnClickedSlot()
|
||||
|
||||
this->setGeometry(m_screenRect);
|
||||
m_pMaxBtn->setProperty("maxState", true);
|
||||
m_pMaxBtn->setToolTip("restore");
|
||||
m_pMaxBtn->setToolTip("最大化");
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@ -441,8 +441,8 @@ void Calculation::_Integration(QVector<double> & vecData,QVector<double>& retDat
|
||||
qDebug()<< imageshiftfft.size() << endl;
|
||||
|
||||
for(int k = 1; k < realshiftfft.size()+1;k++){
|
||||
realvalue.push_back((realshiftfft.at(k-1)/(k*2*3.14))*1000 * 2);//单位转换mm/s,*1000 *2 精度损失
|
||||
imagevalue.push_back((imageshiftfft.at(k-1)/(k*2*3.14))*1000 * 2);//单位转换mm/s,*1000
|
||||
realvalue.push_back((realshiftfft.at(k-1)/(k*2*PI))*1000 * 2);//单位转换mm/s,*1000 *2 精度损失
|
||||
imagevalue.push_back((imageshiftfft.at(k-1)/(k*2*PI))*1000 * 2);//单位转换mm/s,*1000
|
||||
}
|
||||
|
||||
_iFFT(realvalue,imagevalue,retData);
|
||||
@ -722,6 +722,51 @@ QVector<double> Calculation::filter(QVector<double>&x, QVector<double>& coeff_b,
|
||||
void Calculation::ButterWorth(QVector<double>&inData,double *FrequencyBands,QVector<double>& outData)
|
||||
{
|
||||
int FiltOrd = 4;
|
||||
// double s = inData.size();
|
||||
// double a = cos(M_PI*(FrequencyBands[0]+FrequencyBands[1])/s)/cos(M_PI*(FrequencyBands[0]-FrequencyBands[1])/s);
|
||||
// double a2 = a*a;
|
||||
// double b = tan(M_PI*(FrequencyBands[0]-FrequencyBands[1])/s);
|
||||
// double b2 = b*b;
|
||||
// double r;
|
||||
// int n = FiltOrd/4;
|
||||
// double *A = (double *)malloc(n*sizeof(double));
|
||||
// double *d1 = (double *)malloc(n*sizeof(double));
|
||||
// double *d2 = (double *)malloc(n*sizeof(double));
|
||||
// double *d3 = (double *)malloc(n*sizeof(double));
|
||||
// double *d4 = (double *)malloc(n*sizeof(double));
|
||||
// double *w0 = (double *)calloc(n, sizeof(double));
|
||||
// double *w1 = (double *)calloc(n, sizeof(double));
|
||||
// double *w2 = (double *)calloc(n, sizeof(double));
|
||||
// double *w3 = (double *)calloc(n, sizeof(double));
|
||||
// double *w4 = (double *)calloc(n, sizeof(double));
|
||||
// double x;
|
||||
|
||||
// for(int i=0; i<n; ++i){
|
||||
// r = sin(M_PI*(2.0*i+1.0)/(4.0*n));
|
||||
// s = b2 + 2.0*b*r + 1.0;
|
||||
// A[i] = 1.0/s;
|
||||
// d1[i] = 4.0*a*(1.0+b*r)/s;
|
||||
// d2[i] = 2.0*(b2-2.0*a2-1.0)/s;
|
||||
// d3[i] = 4.0*a*(1.0-b*r)/s;
|
||||
// d4[i] = -(b2 - 2.0*b*r + 1.0)/s;}
|
||||
// r = 4.0*a;
|
||||
// s = 4.0*a2+2.0;
|
||||
|
||||
// for(int j = 0; j < inData.size(); j++){
|
||||
// for(int i=0; i<n; ++i){
|
||||
// w0[i] = d1[i]*w1[i] + d2[i]*w2[i]+ d3[i]*w3[i]+ d4[i]*w4[i] + inData[j];
|
||||
// x = A[i]*(w0[i] - r*w1[i] + s*w2[i]- r*w3[i] + w4[i]);
|
||||
// w4[i] = w3[i];
|
||||
// w3[i] = w2[i];
|
||||
// w2[i] = w1[i];
|
||||
// w1[i] = w0[i];
|
||||
// }
|
||||
// outData.push_back(x);
|
||||
// //printf("%lf\n", x);
|
||||
// }
|
||||
|
||||
// free(A);free(A);free(d1);free(d2);free(d3);free(d4);
|
||||
// free(w0);free(w1);free(w2);free(w3);free(w4);
|
||||
QVector<double> a,b;
|
||||
|
||||
a = ComputeDenCoeffs(FiltOrd, FrequencyBands[0], FrequencyBands[1]);
|
||||
|
||||
@ -95,7 +95,7 @@ public:
|
||||
QVector<double> ComputeHP(int FilterOrder);
|
||||
|
||||
//vector<double> filter(int ord, vector<double> a, vector<double> b, int np, vector<double> x);
|
||||
//巴特沃斯滤波
|
||||
//巴特沃斯滤波(带通)
|
||||
QVector<double> filter(QVector<double>&x, QVector<double>& coeff_b, QVector<double>& coeff_a);
|
||||
|
||||
void ButterWorth(QVector<double>& inData,double *FrequencyBands,QVector<double>& outData);
|
||||
|
||||
@ -31,7 +31,8 @@ enum FormType
|
||||
PolarPlot, //极坐标
|
||||
BodePlot, //伯德图
|
||||
ShaftCenterline, //轴心位置图
|
||||
AllWavePlot //全谱图
|
||||
AllWavePlot , //全谱图
|
||||
TimeWavePlot //时域长波形
|
||||
};
|
||||
|
||||
|
||||
@ -58,7 +59,7 @@ class ChildForm : public BaseWgt
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit ChildForm(FormType iType,QString m_strName = "",DEVICE_INFO* DeviceInfo = NULL, QWidget *parent = nullptr);
|
||||
explicit ChildForm(FormType iType,QString m_strName = "",DEVICE_INFO* DeviceInfo = NULL,int iCurCount = 0, QWidget *parent = nullptr);
|
||||
~ChildForm();
|
||||
|
||||
void SetName(QString strName)
|
||||
@ -103,6 +104,7 @@ public:
|
||||
void EnableBtn();
|
||||
void UpdateDiffMenu();
|
||||
void InitIntegration();
|
||||
void UpdateTracerLabel();
|
||||
QVector<WAVE_DATA> childWave;
|
||||
QVector<WAVE_DATA> OrbitXWave,OrbitYWave;
|
||||
QVector<KeyPhasor> vecKeyPhasor;
|
||||
@ -126,20 +128,20 @@ signals:
|
||||
protected:
|
||||
|
||||
public slots:
|
||||
void ZoomBtnSlot_X();
|
||||
void ZoomBtnSlot_Y();
|
||||
void ZoomBtnSlot_XY();
|
||||
void ZoomBtnSlot_Hand();
|
||||
void ScalesBtnSlot_X();
|
||||
void ScalesBtnSlot_Y();
|
||||
void ScalesBtnSlot_XY();
|
||||
void ScalesBtnSlot_Hand();
|
||||
void ToRpm();
|
||||
void Btn_ZoomSlot();
|
||||
void Btn_ScalesSlot();
|
||||
void IntegrationSlot();
|
||||
void DoubleIntegrationSlot();
|
||||
void DifferentiationSlot();
|
||||
void DoubleDifferentiationSlot();
|
||||
void ScalesBox();
|
||||
void ScalesX();
|
||||
void ScalesY();
|
||||
void ScalesXY();
|
||||
void ZoomBox();
|
||||
void ZoomX();
|
||||
void ZoomY();
|
||||
void ZoomXY();
|
||||
void Cursor();
|
||||
void SetScales();
|
||||
void SetFilter();
|
||||
@ -170,7 +172,8 @@ private:
|
||||
std::condition_variable m_cv;
|
||||
std::mutex mu;
|
||||
WAVE_CSVDATA m_vecCsvData[32];
|
||||
|
||||
QString m_strFilter;
|
||||
QString m_strSacles;
|
||||
int m_nStart;
|
||||
int m_nEnd;
|
||||
QMenu *remove_menu;
|
||||
@ -180,6 +183,7 @@ private:
|
||||
QAction *Ord;
|
||||
QAction *Rad;
|
||||
|
||||
|
||||
QCPAxis *yAxis3;
|
||||
QList<QCPAxis*> Axis;
|
||||
QCPItemTracer *tracer; //游标
|
||||
|
||||
@ -17,11 +17,11 @@
|
||||
<string>Form</string>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">#Btn_ZoomMenu { border-image:url(:/images/images/imgModelAction/Zoom_xy.png) 1; }
|
||||
#Btn_ZoomMenu:hover { border-image:url(:/images/images/imgModelAction/Zoom-xy-h.png) 1; }
|
||||
#Btn_ZoomMenu:pressed { border-image:url(:/images/images/imgModelAction/Zoom-xy-p.png) 1; }
|
||||
#Btn_ZoomMenu:checked { border-image:url(:/images/images/imgModelAction/Zoom_xy.png) 1; }
|
||||
#Btn_ZoomMenu::menu-indicator{image:none;}
|
||||
<string notr="true">#Btn_ScalesMenu { border-image:url(:/images/images/imgModelAction/Zoom_xy.png) 1; }
|
||||
#Btn_ScalesMenu:hover { border-image:url(:/images/images/imgModelAction/Zoom-xy-h.png) 1; }
|
||||
#Btn_ScalesMenu:pressed { border-image:url(:/images/images/imgModelAction/Zoom-xy-p.png) 1; }
|
||||
#Btn_ScalesMenu:checked { border-image:url(:/images/images/imgModelAction/Zoom_xy.png) 1; }
|
||||
#Btn_ScalesMenu::menu-indicator{image:none;}
|
||||
|
||||
#Btn_setScales { border-image:url(:/images/images/imgModelAction/setScales.png) 5; }
|
||||
#Btn_setScales:hover { border-image:url(:/images/images/imgModelAction/setScales-h.png) 5; }
|
||||
@ -98,7 +98,7 @@
|
||||
#measureBtn:pressed {border-image:url(:/images/images/imgModelAction/measure-p.png) 5; }
|
||||
#measureBtn:checked {border-image:url(:/images/images/imgModelAction/measure-p.png) 5; }
|
||||
|
||||
#realTimeDataBtn { border-image:url(:/images/images/imgModelAction/realTime.png) 5; }
|
||||
#realTimeDataBtn { border-image:url(:/images/images/imgModelAction/realTime-d.png) 5; }
|
||||
#realTimeDataBtn:hover { border-image:url(:/images/images/imgModelAction/realTime-h.png) 5; }
|
||||
#realTimeDataBtn:pressed {border-image:url(:/images/images/imgModelAction/realTime-p.png) 5; }
|
||||
#realTimeDataBtn:checked {border-image:url(:/images/images/imgModelAction/realTime-p.png) 5; }
|
||||
@ -338,7 +338,7 @@
|
||||
<height>41</height>
|
||||
</size>
|
||||
</property>
|
||||
<widget class="QPushButton" name="Btn_ZoomMenu">
|
||||
<widget class="QPushButton" name="Btn_ScalesMenu">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>90</x>
|
||||
@ -473,7 +473,7 @@
|
||||
</widget>
|
||||
<widget class="QPushButton" name="realTimeDataBtn">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
@ -979,7 +979,7 @@
|
||||
<zorder>Btn_Cursor</zorder>
|
||||
<zorder>Btn_Zoom</zorder>
|
||||
<zorder>line_5</zorder>
|
||||
<zorder>Btn_ZoomMenu</zorder>
|
||||
<zorder>Btn_ScalesMenu</zorder>
|
||||
<zorder>Btn_setScales</zorder>
|
||||
<zorder>line_6</zorder>
|
||||
<zorder>Btn_Annotation</zorder>
|
||||
|
||||
@ -73,6 +73,18 @@ bool CreateReport::CreateWord()//创建word
|
||||
m_wordOperate->SetText("趋势图");
|
||||
if(_strImagePathList.at(i).contains("EnvChart"))
|
||||
m_wordOperate->SetText("包络图");
|
||||
if(_strImagePathList.at(i).contains("Orbit"))
|
||||
m_wordOperate->SetText("轴心轨迹图");
|
||||
if(_strImagePathList.at(i).contains("WaterFall"))
|
||||
m_wordOperate->SetText("瀑布图");
|
||||
if(_strImagePathList.at(i).contains("Polar"))
|
||||
m_wordOperate->SetText("极坐标图");
|
||||
if(_strImagePathList.at(i).contains("ShaftCenterline"))
|
||||
m_wordOperate->SetText("轴心位置图");
|
||||
if(_strImagePathList.at(i).contains("Bode"))
|
||||
m_wordOperate->SetText("伯德图");
|
||||
if(_strImagePathList.at(i).contains("AllWave"))
|
||||
m_wordOperate->SetText("全频图");
|
||||
m_wordOperate->insertEnter();
|
||||
}
|
||||
DrawTable();
|
||||
|
||||
@ -4,7 +4,7 @@
|
||||
#include <qvalidator.h>
|
||||
#include "msgbox.h"
|
||||
|
||||
FilterForm::FilterForm(QWidget *parent) :
|
||||
FilterForm::FilterForm(QString strFilter, QWidget *parent) :
|
||||
BaseWgt(parent),
|
||||
ui(new Ui::FilterForm)
|
||||
{
|
||||
@ -17,6 +17,10 @@ FilterForm::FilterForm(QWidget *parent) :
|
||||
QRegExpValidator *validator = new QRegExpValidator(rx, this);
|
||||
ui->lineEdit->setValidator(validator);
|
||||
ui->lineEdit_2->setValidator(validator);
|
||||
QStringList strList = strFilter.split(",");
|
||||
ui->lineEdit->setText(strList[0]);
|
||||
ui->lineEdit_2->setText(strList[1]);
|
||||
|
||||
}
|
||||
|
||||
FilterForm::~FilterForm()
|
||||
|
||||
@ -14,7 +14,7 @@ class FilterForm : public BaseWgt
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit FilterForm(QWidget *parent = nullptr);
|
||||
explicit FilterForm(QString strFilter,QWidget *parent = nullptr);
|
||||
~FilterForm();
|
||||
|
||||
private:
|
||||
|
||||
@ -130,6 +130,7 @@ void MainWidget::InitSignalandSlot()
|
||||
connect(ui->modelBtn_5, SIGNAL(clicked()), this, SLOT(BodePlotSlot()));
|
||||
connect(ui->modelBtn_6, SIGNAL(clicked()), this, SLOT(ShaftCenterlinePlotSlot()));
|
||||
connect(ui->modelBtn_12, SIGNAL(clicked()), this, SLOT(View3D()));
|
||||
connect(ui->modelBtn_TimeWave, SIGNAL(clicked()), this, SLOT(TimeWave()));
|
||||
connect(ui->pushButton_5, SIGNAL(clicked()), this, SLOT(Dat2Csv()));
|
||||
|
||||
connect(ui->refreshBtn, SIGNAL(clicked()), this, SLOT(RefreshBtnSlot()));//刷新终端列表
|
||||
@ -248,6 +249,11 @@ void MainWidget::SearchSlot(QString strIP,bool AutoSearch)
|
||||
}
|
||||
void MainWidget::RefreshBtnSlot()
|
||||
{
|
||||
|
||||
ui->refreshBtn->setEnabled(false);
|
||||
QTimer::singleShot(1000, this, [=]() {
|
||||
ui->refreshBtn->setEnabled(true);
|
||||
});
|
||||
ui->treeWidget->clear();
|
||||
InitDevList();
|
||||
/*QString tablename = "t_Device";
|
||||
@ -631,7 +637,6 @@ void MainWidget::addChildItem(QTreeWidgetItem *pDataItem,QTreeWidgetItem *pNoIte
|
||||
else if ("manu" == strFlag)
|
||||
{
|
||||
pManulItem = pItem;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@ -687,7 +692,7 @@ void MainWidget::addChildItem(QTreeWidgetItem *pDataItem,QTreeWidgetItem *pNoIte
|
||||
QIcon icon(":/images/images/imgTreeIcon/remove6.png");
|
||||
pNewItem->setIcon(0, icon);
|
||||
pNewItem->setData(0,FILE_ROLE,0);
|
||||
pSizeItem->addChild(pNewItem);
|
||||
pTimeItem->addChild(pNewItem);
|
||||
}else{
|
||||
QIcon icon(":/images/images/imgTreeIcon/remove2.png");
|
||||
pNewItem->setIcon(0, icon);
|
||||
@ -696,16 +701,17 @@ void MainWidget::addChildItem(QTreeWidgetItem *pDataItem,QTreeWidgetItem *pNoIte
|
||||
}
|
||||
|
||||
}
|
||||
else if (sfileName.contains("DELTA_EU") || sfileName.contains("DELTA_SPPEED"))
|
||||
else if (sfileName.contains("DELTA_EU") || sfileName.contains("DELTA_SPEED"))
|
||||
{
|
||||
datpath = QCoreApplication::applicationDirPath() + "\\Dat\\" + strNo + "\\" + "change" + "\\";
|
||||
filename = datpath + sfileName;
|
||||
QFileInfo file(filename);
|
||||
qDebug() << filename << endl;
|
||||
if(file.exists()){
|
||||
QIcon icon(":/images/images/imgTreeIcon/remove6.png");
|
||||
pNewItem->setIcon(0, icon);
|
||||
pNewItem->setData(0,FILE_ROLE,0);
|
||||
pSizeItem->addChild(pNewItem);
|
||||
pChangeItem->addChild(pNewItem);
|
||||
}else{
|
||||
QIcon icon(":/images/images/imgTreeIcon/remove2.png");
|
||||
pNewItem->setIcon(0, icon);
|
||||
@ -1028,7 +1034,7 @@ void MainWidget::OutPDF(QStringList strResult,QString filePath)
|
||||
break;
|
||||
case FormType::FrequencyDomainPlot:
|
||||
pPdfPainter->setPen(QColor(0,0,0));
|
||||
pPdfPainter->drawText(iLeft+290 + i * 610,iTop+600,"频谱图");
|
||||
pPdfPainter->drawText(iLeft+290 + i * 610,iTop+600,"频域图");
|
||||
break;
|
||||
case FormType::EnvChartPlot:
|
||||
pPdfPainter->setPen(QColor(0,0,0));
|
||||
@ -1162,7 +1168,8 @@ void MainWidget::ItemCheckStateSlot(QString strID, bool bChecked)
|
||||
|
||||
if(pChild->GetFormType() == FrequencyDomainPlot || pChild->GetFormType() == TimeDomainPlot
|
||||
|| pChild->GetFormType() == EnvChartPlot || pChild->GetFormType() == SpecChartPlot
|
||||
|| pChild->GetFormType() == TrendChartPlot || pChild->GetFormType() == WaterFallPlot)
|
||||
|| pChild->GetFormType() == TrendChartPlot || pChild->GetFormType() == WaterFallPlot
|
||||
|| pChild->GetFormType() == TimeWavePlot)
|
||||
{//频域图,时域图,包络图,频谱图
|
||||
QString strChannelID = strID;
|
||||
QMap<QString,QVector<WAVE_DATA>>::Iterator iter = mapWaveData.begin();
|
||||
@ -1217,23 +1224,27 @@ void MainWidget::ItemCheckStateSlot(QString strID, bool bChecked)
|
||||
QMap<QString,QVector<WAVE_DATA>>::Iterator iter = mapWaveData.begin();
|
||||
for (; iter != mapWaveData.end(); ++iter){
|
||||
if((iter.key() == strChannelID)){
|
||||
|
||||
qDebug() << strChannelID << endl;
|
||||
pChild->mapBodeData.insert(strID,iter.value());
|
||||
qDebug() << pChild->mapBodeData.size() << endl;
|
||||
if(pChild->mapBodeData.size() < 2){
|
||||
QString ChannelID = iter.value().at(0).speedRefChannelId;
|
||||
qDebug() << "speedRefChannelId" <<ChannelID << endl;
|
||||
if(ChannelID == "NONE" || ChannelID == ""){
|
||||
MyMsgBox(QMessageBox::Warning,"警告","当前文件中没有绑定转速通道,请手动选择另一个通道");
|
||||
//return;
|
||||
//MyMsgBox(QMessageBox::Warning,"警告","当前文件中没有绑定转速通道,请手动选择另一个通道");
|
||||
return;
|
||||
}else{
|
||||
pChild->mapBodeData.insert(strID,mapWaveData[ChannelID]);
|
||||
pChild->AddBodeSeries(strChannelID, iter.value(),mapWaveData[ChannelID]);
|
||||
return;
|
||||
}
|
||||
}else{
|
||||
qDebug() << 2 << strChannelID << endl;
|
||||
QVector<WAVE_DATA> waveSpeedData; //转速
|
||||
QVector<WAVE_DATA> waveVibrateData; //加速度
|
||||
QMap<QString,QVector<WAVE_DATA>>::Iterator iter = pChild->mapBodeData.begin();
|
||||
for (;iter != pChild->mapBodeData.end() ; iter++) {
|
||||
qDebug() << iter.value()[0].sensorType << endl;
|
||||
if(iter.value()[0].sensorType != "ACCELEROMETER" && iter.value()[0].sensorType != "TACHOMETER"){
|
||||
MyMsgBox(QMessageBox::Warning,"警告","请选择转速和振动通道进行伯德图分析");
|
||||
return;
|
||||
@ -1257,7 +1268,7 @@ void MainWidget::ItemCheckStateSlot(QString strID, bool bChecked)
|
||||
QString ChannelID = iter.value().at(0).pairChannelID;
|
||||
QString ChannelType = iter.value().at(0).sensorType;
|
||||
if((ChannelType != "PROXIMETER") /*&& (ChannelID == "NONE" || ChannelID == "")*/){
|
||||
MyMsgBox(QMessageBox::Warning,"警告","请选择径向位移通道");
|
||||
//MyMsgBox(QMessageBox::Warning,"警告","请选择径向位移通道");
|
||||
return;
|
||||
}
|
||||
pChild->AddShaftCenterlineSeries(strChannelID, iter.value(),mapWaveData[ChannelID]);
|
||||
@ -1276,7 +1287,7 @@ void MainWidget::ItemCheckStateSlot(QString strID, bool bChecked)
|
||||
if(strChannelType != "PROXIMETER")
|
||||
return;
|
||||
if(speedChannelID == "NONE" || speedChannelID == ""){
|
||||
MyMsgBox(QMessageBox::Warning,"警告","当前文件中没有转速通道数据");
|
||||
//MyMsgBox(QMessageBox::Warning,"警告","当前文件中没有转速通道数据");
|
||||
return;
|
||||
}
|
||||
|
||||
@ -1330,7 +1341,11 @@ void MainWidget::TrendChartPlotSlot()
|
||||
MyMsgBox(QMessageBox::Warning,"警告","请先打开数据文件!");
|
||||
return;
|
||||
}
|
||||
ChildForm *pChild = new ChildForm(FormType::TrendChartPlot,tr("趋势图"),&m_DeviceInfo,this);
|
||||
if( ui->tabWidget->count() == 10){
|
||||
MyMsgBox(QMessageBox::Warning,"警告","最大支持打开10张图谱");
|
||||
return;
|
||||
}
|
||||
ChildForm *pChild = new ChildForm(FormType::TrendChartPlot,tr("趋势图"),&m_DeviceInfo,m_iCurCount-1,this);
|
||||
pChild->setCloseBtnVisible(true);
|
||||
pChild->hideTopWgt();
|
||||
pChild->SetName(tr("趋势图"));
|
||||
@ -1379,7 +1394,12 @@ void MainWidget::TimeDomainPlotSlot()
|
||||
MyMsgBox(QMessageBox::Warning,"警告","请先打开数据文件!");
|
||||
return;
|
||||
}
|
||||
ChildForm *pChild = new ChildForm(FormType::TimeDomainPlot,tr("时域图"),&m_DeviceInfo,this);
|
||||
if( ui->tabWidget->count() == 10){
|
||||
MyMsgBox(QMessageBox::Warning,"警告","最大支持打开10张图谱");
|
||||
return;
|
||||
}
|
||||
|
||||
ChildForm *pChild = new ChildForm(FormType::TimeDomainPlot,tr("时域图"),&m_DeviceInfo,m_iCurCount-1,this);
|
||||
|
||||
pChild->setCloseBtnVisible(true);
|
||||
pChild->hideTopWgt();
|
||||
@ -1430,7 +1450,11 @@ void MainWidget::FrequencyDomainPlotSlot()
|
||||
MyMsgBox(QMessageBox::Warning,"警告","请先打开数据文件!");
|
||||
return;
|
||||
}
|
||||
ChildForm *pChild = new ChildForm(FormType::FrequencyDomainPlot,tr("频域图"),&m_DeviceInfo,this);
|
||||
if( ui->tabWidget->count() == 10){
|
||||
MyMsgBox(QMessageBox::Warning,"警告","最大支持打开10张图谱");
|
||||
return;
|
||||
}
|
||||
ChildForm *pChild = new ChildForm(FormType::FrequencyDomainPlot,tr("频域图"),&m_DeviceInfo,m_iCurCount-1,this);
|
||||
pChild->setCloseBtnVisible(true);
|
||||
pChild->hideTopWgt();
|
||||
pChild->SetName(tr("频域图"));
|
||||
@ -1478,7 +1502,11 @@ void MainWidget::EnvelopeAnalysisPlotSlot()
|
||||
MyMsgBox(QMessageBox::Warning,"警告","请先打开数据文件!");
|
||||
return;
|
||||
}
|
||||
ChildForm *pChild = new ChildForm(FormType::EnvChartPlot,tr("包络图"),&m_DeviceInfo,this);
|
||||
if( ui->tabWidget->count() == 10){
|
||||
MyMsgBox(QMessageBox::Warning,"警告","最大支持打开10张图谱");
|
||||
return;
|
||||
}
|
||||
ChildForm *pChild = new ChildForm(FormType::EnvChartPlot,tr("包络图"),&m_DeviceInfo,m_iCurCount-1,this);
|
||||
pChild->setCloseBtnVisible(true);
|
||||
pChild->hideTopWgt();
|
||||
pChild->SetName(tr("包络图"));
|
||||
@ -1526,7 +1554,11 @@ void MainWidget::WaterFallPlotSlot()
|
||||
MyMsgBox(QMessageBox::Warning,"警告","请先打开数据文件!");
|
||||
return;
|
||||
}
|
||||
ChildForm *pChild = new ChildForm(FormType::WaterFallPlot,tr("瀑布图"),&m_DeviceInfo,this);
|
||||
if( ui->tabWidget->count() == 10){
|
||||
MyMsgBox(QMessageBox::Warning,"警告","最大支持打开10张图谱");
|
||||
return;
|
||||
}
|
||||
ChildForm *pChild = new ChildForm(FormType::WaterFallPlot,tr("瀑布图"),&m_DeviceInfo,m_iCurCount-1,this);
|
||||
pChild->setCloseBtnVisible(true);
|
||||
pChild->hideTopWgt();
|
||||
pChild->SetName(tr("瀑布图"));
|
||||
@ -1583,7 +1615,11 @@ void MainWidget::BodePlotSlot()
|
||||
MyMsgBox(QMessageBox::Warning,"警告","请先打开数据文件!");
|
||||
return;
|
||||
}
|
||||
ChildForm *pChild = new ChildForm(FormType::BodePlot,tr("Bode"),&m_DeviceInfo,this);
|
||||
if( ui->tabWidget->count() == 10){
|
||||
MyMsgBox(QMessageBox::Warning,"警告","最大支持打开10张图谱");
|
||||
return;
|
||||
}
|
||||
ChildForm *pChild = new ChildForm(FormType::BodePlot,tr("伯德图"),&m_DeviceInfo,m_iCurCount-1,this);
|
||||
pChild->setCloseBtnVisible(true);
|
||||
pChild->hideTopWgt();
|
||||
pChild->SetName(tr("伯德图"));
|
||||
@ -1629,7 +1665,11 @@ void MainWidget::OrbitPlotSlot()
|
||||
MyMsgBox(QMessageBox::Warning,"警告","请先打开数据文件!");
|
||||
return;
|
||||
}
|
||||
ChildForm *pChild = new ChildForm(FormType::OrbitPlot,tr("轴心轨迹图"),&m_DeviceInfo,this);
|
||||
if( ui->tabWidget->count() == 10){
|
||||
MyMsgBox(QMessageBox::Warning,"警告","最大支持打开10张图谱");
|
||||
return;
|
||||
}
|
||||
ChildForm *pChild = new ChildForm(FormType::OrbitPlot,tr("轴心轨迹图"),&m_DeviceInfo,m_iCurCount-1,this);
|
||||
pChild->setCloseBtnVisible(true);
|
||||
pChild->hideTopWgt();
|
||||
pChild->SetName(tr("轴心轨迹图"));
|
||||
@ -1677,7 +1717,11 @@ void MainWidget::ShaftCenterlinePlotSlot()
|
||||
MyMsgBox(QMessageBox::Warning,"警告","请先打开数据文件!");
|
||||
return;
|
||||
}
|
||||
ChildForm *pChild = new ChildForm(FormType::ShaftCenterline,tr("轴心位置图"),&m_DeviceInfo,this);
|
||||
if( ui->tabWidget->count() == 10){
|
||||
MyMsgBox(QMessageBox::Warning,"警告","最大支持打开10张图谱");
|
||||
return;
|
||||
}
|
||||
ChildForm *pChild = new ChildForm(FormType::ShaftCenterline,tr("轴心位置图"),&m_DeviceInfo,m_iCurCount-1,this);
|
||||
pChild->setCloseBtnVisible(true);
|
||||
pChild->hideTopWgt();
|
||||
pChild->SetName(tr("轴心位置图"));
|
||||
@ -1721,7 +1765,15 @@ void MainWidget::ShaftCenterlinePlotSlot()
|
||||
}
|
||||
void MainWidget::PolarplotSlot()
|
||||
{
|
||||
ChildForm *pChild = new ChildForm(FormType::PolarPlot,tr("极坐标"),&m_DeviceInfo,this);
|
||||
if(mapWaveData.size() < 1){
|
||||
MyMsgBox(QMessageBox::Warning,"警告","请先打开数据文件!");
|
||||
return;
|
||||
}
|
||||
if( ui->tabWidget->count() == 10){
|
||||
MyMsgBox(QMessageBox::Warning,"警告","最大支持打开10张图谱");
|
||||
return;
|
||||
}
|
||||
ChildForm *pChild = new ChildForm(FormType::PolarPlot,tr("极坐标"),&m_DeviceInfo,m_iCurCount-1,this);
|
||||
pChild->setCloseBtnVisible(true);
|
||||
pChild->hideTopWgt();
|
||||
pChild->SetName(tr("极坐标"));
|
||||
@ -1763,6 +1815,58 @@ void MainWidget::PolarplotSlot()
|
||||
|
||||
ui->tabWidget->setCurrentWidget(pChild);
|
||||
}
|
||||
void MainWidget::TimeWave()
|
||||
{
|
||||
if(mapWaveData.size() < 1){
|
||||
MyMsgBox(QMessageBox::Warning,"警告","请先打开数据文件!");
|
||||
return;
|
||||
}
|
||||
if( ui->tabWidget->count() == 10){
|
||||
MyMsgBox(QMessageBox::Warning,"警告","最大支持打开10张图谱");
|
||||
return;
|
||||
}
|
||||
ChildForm *pChild = new ChildForm(FormType::TimeWavePlot,tr("时域长波形"),&m_DeviceInfo,m_iCurCount-1,this);
|
||||
pChild->setCloseBtnVisible(true);
|
||||
pChild->hideTopWgt();
|
||||
pChild->SetName(tr("时域长波形"));
|
||||
pChild->SetFormType(FormType::TimeWavePlot);
|
||||
|
||||
QIcon icon(":/images/images/imgDatamodel/wave.png");
|
||||
ui->tabWidget->addTab(pChild, icon, pChild->GetName());
|
||||
//pChild->AddPolarPlotSeries();
|
||||
QPushButton *pCustomButton = new QPushButton();
|
||||
pCustomButton->setFixedSize(14, 14);
|
||||
pCustomButton->setStyleSheet(" QPushButton { border-image:url(:/images/images/imgDatamodel/tabclose.png) 5; }\
|
||||
QPushButton:hover { border-image:url(:/images/images/imgDatamodel/tabclose-h.png) 5; }\
|
||||
QPushButton:pressed {border-image:url(:/images/images/imgDatamodel/tabclose-p.png) 5; }");
|
||||
((QTabBar*)(ui->tabWidget->tabBar()))->setTabButton(ui->tabWidget->indexOf(pChild),QTabBar::RightSide,pCustomButton);
|
||||
connect(pCustomButton, SIGNAL(clicked()), this, SLOT(TabBarCloseSlot()));
|
||||
m_mapTabBtnToForm[pCustomButton] = pChild;
|
||||
|
||||
connect(pChild, SIGNAL(OutSig()), this, SLOT(OutSlot()));
|
||||
connect(pChild, SIGNAL(ReturnSig()), this, SLOT(ReturnSlot()));
|
||||
connect(pChild, SIGNAL(ItemCheckStateSignal(QString, bool)), this, SLOT(ItemCheckStateSlot(QString, bool)));
|
||||
// connect(pChild, &ChildForm::sigRealTimeData, this, &MainWidget::slotRealTimeData);
|
||||
|
||||
m_vecChildForm.push_back(pChild);
|
||||
|
||||
QStringList strIDList,strChannleType,strChannleNameList;
|
||||
// QVector<WAVE_DATA>::Iterator iter = m_vecPushData.begin();
|
||||
QMap<QString,QVector<WAVE_DATA>>::Iterator iter = mapWaveData.begin();
|
||||
for (; iter != mapWaveData.end(); iter ++)
|
||||
{
|
||||
if(!strIDList.contains(iter.key()))
|
||||
strIDList.push_back(iter.key());
|
||||
strChannleType.push_back(iter.value()[0].sensorType);
|
||||
strChannleNameList.push_back(iter.value()[0].channelName);
|
||||
}
|
||||
if(mapWaveData.size() > 8)
|
||||
pChild->SetDataIDs(strIDList, tr("Data Watch "),strChannleType,strChannleNameList);
|
||||
else
|
||||
pChild->SetDataIDs(strIDList, tr("Data Watch "),strChannleType,strChannleNameList);
|
||||
|
||||
ui->tabWidget->setCurrentWidget(pChild);
|
||||
}
|
||||
void MainWidget::View3D()
|
||||
{
|
||||
/* Child3DFrom *pChild = new Child3DFrom(this);
|
||||
@ -1776,7 +1880,7 @@ void MainWidget::Dat2Csv()
|
||||
MyMsgBox(QMessageBox::Warning,"警告","请先打开数据文件!");
|
||||
return;
|
||||
}
|
||||
QString dirpath = QFileDialog::getExistingDirectory(this, QStringLiteral("选择目录"), "./", QFileDialog::ShowDirsOnly);
|
||||
QString dirpath = QFileDialog::getExistingDirectory(this, QStringLiteral("请选择保存CSV文件路径"), "./", QFileDialog::ShowDirsOnly);
|
||||
|
||||
if(dirpath.isEmpty()) return;
|
||||
if(mapWaveData.size() < 1){
|
||||
@ -1816,7 +1920,8 @@ void MainWidget::Dat2Csv()
|
||||
}
|
||||
QDateTime time = QDateTime::fromTime_t(m_strCollectTime.toUInt());
|
||||
QString DevicemCollectTime = time.toString("yyyy-MM-dd_hhmmss");
|
||||
QString filename = QString(dirName + "%1-%2-%3.csv").arg(iter.key()).arg(iter.value().at(0).sensorType).arg(DevicemCollectTime);
|
||||
QString filename = QString(dirName + "%1-%2-%3-%4.csv").arg(iter.key()).arg(iter.value().at(0).sensorType)\
|
||||
.arg(iter.value().at(0).SamleRate).arg(DevicemCollectTime);
|
||||
QFile file(filename);
|
||||
qDebug()<< "filename = "<<filename << endl;
|
||||
if (!file.open(QIODevice::WriteOnly))
|
||||
@ -2111,6 +2216,7 @@ void MainWidget::ReadDatData(QString strPath,QString strFileName,QString strIP)
|
||||
WAVE_INFO waveInfo;
|
||||
channelEnabled[i] = array.at(i)["isEnable"].toInt();
|
||||
channelwork[i] = array.at(i)["isWork"].toInt();
|
||||
//qDebug() << channelEnabled[i] << channelwork[i] << array.at(i)["channelId"].toString() << endl;
|
||||
if(channelEnabled[i] && channelwork[i]){
|
||||
waveInfo.channelId = array.at(i)["channelId"].toString();
|
||||
waveInfo.channelType = array.at(i)["sensorType"].toString();
|
||||
@ -2134,10 +2240,11 @@ void MainWidget::ReadDatData(QString strPath,QString strFileName,QString strIP)
|
||||
waveInfo.iKeyCount = array.at(i)["tachTriggerPerRev"].toInt();
|
||||
waveInfo.iTriggerValue = array.at(i)["tachTriggerVoltageLevel"].toDouble();
|
||||
waveInfo.iHysteresis = array.at(i)["tachTriggerHysteresis"].toDouble();
|
||||
qDebug() <<waveInfo.channelId<< "iKeyCount" << waveInfo.iKeyCount << "iTriggerValue" << waveInfo.iTriggerValue << "iHysteresis" << waveInfo.iHysteresis << endl;
|
||||
m_vecWaveInfo.push_back(waveInfo);
|
||||
channels ++ ;
|
||||
qDebug() << waveInfo.sensorGapVoltage << waveInfo.sensorSensitivity << endl;
|
||||
qDebug() << waveInfo.channelId << waveInfo.channelType <<waveInfo.channelName << waveInfo.pairChannelID << waveInfo.sensorEngineeringUnit << waveInfo.speedRefChannelId<<endl;
|
||||
qDebug() << waveInfo.channelId << waveInfo.channelType <<waveInfo.channelName << waveInfo.pairChannelID << waveInfo.sensorEngineeringUnit << waveInfo.speedRefChannelId << waveInfo.iTriggerValue<<endl;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -2281,7 +2388,7 @@ void MainWidget::ReadDatData(QString strPath,QString strFileName,QString strIP)
|
||||
}
|
||||
if(iter->sensorType == "TACHOMETER"){
|
||||
wave.TimeStamp = m_WaveChnData[i].TimeStamp;
|
||||
qDebug()<< "iCount" <<iCount<<endl;
|
||||
//qDebug()<< "iCount" <<iCount<<endl;
|
||||
ii ++;
|
||||
}
|
||||
|
||||
@ -2347,19 +2454,18 @@ void MainWidget::ReadDatData(QString strPath,QString strFileName,QString strIP)
|
||||
wave.linColor = Qt::darkYellow ;
|
||||
break;
|
||||
case 13:
|
||||
wave.linColor = Qt::gray ;
|
||||
wave.linColor = QColor(153, 51, 250);
|
||||
break;
|
||||
case 14:
|
||||
wave.linColor = QColor(255, 218, 185) ;
|
||||
break;
|
||||
case 15:
|
||||
wave.linColor = QColor(255, 20, 147) ;
|
||||
wave.linColor = QColor(0,199,140) ;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
m_vecPushData1.push_back(wave);
|
||||
//qDebug()<<"m_vecPushData1"<<m_vecPushData1.size()<<endl;
|
||||
}
|
||||
}
|
||||
linecolor++;
|
||||
@ -2838,6 +2944,12 @@ void MainWidget::EnableGraph(bool isOpen)
|
||||
QPushButton:hover { border-image:url(:/images/images/imgDatamodel/M8-h.png) 1; }\
|
||||
QPushButton:pressed {border-image:url(:/images/images/imgDatamodel/M8-p.png) 1; }\
|
||||
QPushButton:checked {border-image:url(:/images/images/imgDatamodel/M8-p.png) 1; }");
|
||||
|
||||
ui->modelBtn_TimeWave->setEnabled(false);
|
||||
ui->modelBtn_TimeWave->setStyleSheet(" QPushButton { border-image:url(:/images/images/imgDatamodel/wave-p.png) 1; }\
|
||||
QPushButton:hover { border-image:url(:/images/images/imgDatamodel/wave-h.png) 1; }\
|
||||
QPushButton:pressed {border-image:url(:/images/images/imgDatamodel/wave-p.png) 1; }\
|
||||
QPushButton:checked {border-image:url(:/images/images/imgDatamodel/wave-p.png) 1; }");
|
||||
}else{
|
||||
ui->modelBtn_TrendChart->setEnabled(true);
|
||||
ui->modelBtn_TrendChart->setStyleSheet(" QPushButton { border-image:url(:/images/images/imgDatamodel/M1.png) 1; }\
|
||||
@ -2898,6 +3010,12 @@ void MainWidget::EnableGraph(bool isOpen)
|
||||
QPushButton:hover { border-image:url(:/images/images/imgDatamodel/M8-h.png) 1; }\
|
||||
QPushButton:pressed {border-image:url(:/images/images/imgDatamodel/M8-p.png) 1; }\
|
||||
QPushButton:checked {border-image:url(:/images/images/imgDatamodel/M8-p.png) 1; }");
|
||||
|
||||
ui->modelBtn_TimeWave->setEnabled(true);
|
||||
ui->modelBtn_TimeWave->setStyleSheet(" QPushButton { border-image:url(:/images/images/imgDatamodel/wave.png) 1; }\
|
||||
QPushButton:hover { border-image:url(:/images/images/imgDatamodel/wave-h.png) 1; }\
|
||||
QPushButton:pressed {border-image:url(:/images/images/imgDatamodel/wave-p.png) 1; }\
|
||||
QPushButton:checked {border-image:url(:/images/images/imgDatamodel/wave-p.png) 1; }");
|
||||
}
|
||||
|
||||
// ui->modelBtn_11->setEnabled(true);
|
||||
|
||||
@ -56,6 +56,7 @@ public slots:
|
||||
void PolarplotSlot();
|
||||
void BodePlotSlot();
|
||||
void ShaftCenterlinePlotSlot();
|
||||
void TimeWave();
|
||||
void OutSlot();
|
||||
void ReturnSlot();
|
||||
void View3D();
|
||||
|
||||
@ -79,6 +79,7 @@
|
||||
|
||||
#modelBtn_TrendChart{border-image:url(:/images/images/imgDatamodel/M1-p.png);}
|
||||
#modelBtn_TimeDomain{border-image:url(:/images/images/imgDatamodel/M2-p.png);}
|
||||
#modelBtn_TimeWave{border-image:url(:/images/images/imgDatamodel/wave-p.png);}
|
||||
#modelBtn_FrequencyDomain{border-image:url(:/images/images/imgDatamodel/M3-p.png);}
|
||||
#modelBtn_4{border-image:url(:/images/images/imgDatamodel/M4-p.png);}
|
||||
#modelBtn_5{border-image:url(:/images/images/imgDatamodel/M5-p.png);}
|
||||
@ -92,6 +93,7 @@
|
||||
|
||||
#modelBtn_TrendChart:hover{border-image:url(:/images/images/imgDatamodel/M1-h.png);}
|
||||
#modelBtn_TimeDomain:hover{border-image:url(:/images/images/imgDatamodel/M2-h.png);}
|
||||
#modelBtn_TimeWave:hover{border-image:url(:/images/images/imgDatamodel/wave-h.png);}
|
||||
#modelBtn_FrequencyDomain:hover{border-image:url(:/images/images/imgDatamodel/M3-h.png);}
|
||||
#modelBtn_4:hover{border-image:url(:/images/images/imgDatamodel/M4-h.png);}
|
||||
#modelBtn_5:hover{border-image:url(:/images/images/imgDatamodel/M5-h.png);}
|
||||
@ -105,6 +107,7 @@
|
||||
|
||||
#modelBtn_TrendChart:pressed{border-image:url(:/images/images/imgDatamodel/M1-p.png);}
|
||||
#modelBtn_TimeDomain:pressed{border-image:url(:/images/images/imgDatamodel/M2-p.png);}
|
||||
#modelBtn_TimeWave:pressed{border-image:url(:/images/images/imgDatamodel/wave-p.png);}
|
||||
#modelBtn_FrequencyDomain:pressed{border-image:url(:/images/images/imgDatamodel/M3-p.png);}
|
||||
#modelBtn_4:pressed{border-image:url(:/images/images/imgDatamodel/M4-p.png);}
|
||||
#modelBtn_5:pressed{border-image:url(:/images/images/imgDatamodel/M5-p.png);}
|
||||
@ -289,28 +292,6 @@
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="pushButton_6">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>18</width>
|
||||
<height>18</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>18</width>
|
||||
<height>18</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>退出当前DAT文件</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="ReportButton">
|
||||
<property name="minimumSize">
|
||||
@ -333,6 +314,28 @@
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="pushButton_6">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>18</width>
|
||||
<height>18</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>18</width>
|
||||
<height>18</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>退出当前DAT文件</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="Btn_Setting">
|
||||
<property name="enabled">
|
||||
@ -668,6 +671,31 @@
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="modelBtn_TimeWave">
|
||||
<property name="enabled">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>36</width>
|
||||
<height>36</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>36</width>
|
||||
<height>36</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>时域长波形</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="modelBtn_spec">
|
||||
<property name="enabled">
|
||||
|
||||
@ -25,9 +25,9 @@
|
||||
<widget class="QLineEdit" name="lineEdit">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>170</x>
|
||||
<x>150</x>
|
||||
<y>50</y>
|
||||
<width>51</width>
|
||||
<width>91</width>
|
||||
<height>31</height>
|
||||
</rect>
|
||||
</property>
|
||||
@ -41,7 +41,7 @@ text-align:center;
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>113</x>
|
||||
<x>93</x>
|
||||
<y>50</y>
|
||||
<width>31</width>
|
||||
<height>31</height>
|
||||
@ -54,9 +54,9 @@ text-align:center;
|
||||
<widget class="QLineEdit" name="lineEdit_2">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>300</x>
|
||||
<x>280</x>
|
||||
<y>50</y>
|
||||
<width>51</width>
|
||||
<width>91</width>
|
||||
<height>31</height>
|
||||
</rect>
|
||||
</property>
|
||||
@ -70,10 +70,10 @@ text-align:center;
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>240</x>
|
||||
<x>250</x>
|
||||
<y>60</y>
|
||||
<width>54</width>
|
||||
<height>12</height>
|
||||
<width>21</width>
|
||||
<height>16</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="text">
|
||||
@ -83,9 +83,9 @@ text-align:center;
|
||||
<widget class="QLineEdit" name="lineEdit_3">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>170</x>
|
||||
<x>150</x>
|
||||
<y>100</y>
|
||||
<width>51</width>
|
||||
<width>91</width>
|
||||
<height>31</height>
|
||||
</rect>
|
||||
</property>
|
||||
@ -99,7 +99,7 @@ text-align:center;
|
||||
<widget class="QLabel" name="label_3">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>113</x>
|
||||
<x>93</x>
|
||||
<y>100</y>
|
||||
<width>31</width>
|
||||
<height>31</height>
|
||||
@ -112,9 +112,9 @@ text-align:center;
|
||||
<widget class="QLineEdit" name="lineEdit_4">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>300</x>
|
||||
<x>280</x>
|
||||
<y>100</y>
|
||||
<width>51</width>
|
||||
<width>91</width>
|
||||
<height>31</height>
|
||||
</rect>
|
||||
</property>
|
||||
@ -128,10 +128,10 @@ text-align:center;
|
||||
<widget class="QLabel" name="label_4">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>240</x>
|
||||
<x>250</x>
|
||||
<y>110</y>
|
||||
<width>54</width>
|
||||
<height>12</height>
|
||||
<width>21</width>
|
||||
<height>16</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="text">
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
#include "QMessageBox"
|
||||
#include <qvalidator.h>
|
||||
|
||||
SetScalesForm::SetScalesForm(QWidget *parent) :
|
||||
SetScalesForm::SetScalesForm(QString m_strSacles,QWidget *parent) :
|
||||
BaseWgt(parent),
|
||||
ui(new Ui::SetScalesForm)
|
||||
{
|
||||
@ -18,6 +18,11 @@ SetScalesForm::SetScalesForm(QWidget *parent) :
|
||||
ui->lineEdit_2->setValidator(validator);
|
||||
ui->lineEdit_3->setValidator(validator);
|
||||
ui->lineEdit_4->setValidator(validator);
|
||||
QStringList strList = m_strSacles.split(",");
|
||||
ui->lineEdit->setText(strList[0]);
|
||||
ui->lineEdit_2->setText(strList[1]);
|
||||
ui->lineEdit_3->setText(strList[2]);
|
||||
ui->lineEdit_4->setText(strList[3]);
|
||||
}
|
||||
|
||||
SetScalesForm::~SetScalesForm()
|
||||
|
||||
@ -15,7 +15,7 @@ class SetScalesForm : public BaseWgt
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit SetScalesForm(QWidget *parent = nullptr);
|
||||
explicit SetScalesForm(QString m_strSacles,QWidget *parent = nullptr);
|
||||
~SetScalesForm();
|
||||
private:
|
||||
Ui::SetScalesForm *ui;
|
||||
|
||||
@ -124,8 +124,8 @@ typedef struct{
|
||||
double sensorSensitivity;
|
||||
int iTrigger;
|
||||
int iKeyCount;
|
||||
int iTriggerValue;
|
||||
int iHysteresis;
|
||||
double iTriggerValue;
|
||||
double iHysteresis;
|
||||
}WAVE_INFO;
|
||||
|
||||
typedef struct tag_DEVICE_INFO{
|
||||
|
||||
BIN
ChaosDataPlayer/images/B7-h.png
Normal file
|
After Width: | Height: | Size: 381 B |
BIN
ChaosDataPlayer/images/B7.png
Normal file
|
After Width: | Height: | Size: 384 B |
BIN
ChaosDataPlayer/images/M2-h.png
Normal file
|
After Width: | Height: | Size: 608 B |
BIN
ChaosDataPlayer/images/M2-p.png
Normal file
|
After Width: | Height: | Size: 553 B |
BIN
ChaosDataPlayer/images/M2.png
Normal file
|
After Width: | Height: | Size: 614 B |
BIN
ChaosDataPlayer/images/imgDatamodel/wave-h.png
Normal file
|
After Width: | Height: | Size: 689 B |
BIN
ChaosDataPlayer/images/imgDatamodel/wave-p.png
Normal file
|
After Width: | Height: | Size: 661 B |
BIN
ChaosDataPlayer/images/imgDatamodel/wave.png
Normal file
|
After Width: | Height: | Size: 704 B |
|
Before Width: | Height: | Size: 48 KiB |
|
Before Width: | Height: | Size: 14 KiB |
@ -175,6 +175,9 @@
|
||||
<file>images/imgModelAction/realTime-d.png</file>
|
||||
<file>images/logo1.png</file>
|
||||
<file>images/loading.gif</file>
|
||||
<file>images/imgDatamodel/wave.png</file>
|
||||
<file>images/imgDatamodel/wave-h.png</file>
|
||||
<file>images/imgDatamodel/wave-p.png</file>
|
||||
</qresource>
|
||||
<qresource prefix="/qss">
|
||||
<file>mainui.css</file>
|
||||
|
||||