A142_Desktop/windowchannel.cpp

903 lines
23 KiB
C++
Raw Normal View History

2023-11-30 12:58:49 +03:00
#include "windowchannel.h"
#include "ui_windowchannel.h"
#include "customlabel.h"
//#include "customcombobox.h"
2023-11-30 12:58:49 +03:00
windowChannel::windowChannel(QWidget *parent) :
QWidget(parent),
ui(new Ui::windowChannel)
{
ui->setupUi(this);
//ДЕЛАЕМ ФОН ЧЕРНЫМ
2023-12-14 17:04:09 +03:00
QPalette pal = QPalette();
// set black background
// Qt::black / "#000000" / "black"
pal.setColor(QPalette::Window, Qt::black);
2023-11-30 12:58:49 +03:00
this->setAutoFillBackground(true);
2023-12-14 17:04:09 +03:00
this->setPalette(pal);
2023-11-30 12:58:49 +03:00
this->show();
2023-12-14 17:04:09 +03:00
ui->comboBoxVCH->addItem("0.2Гц"); //индекс 0
ui->comboBoxVCH->addItem("0.3Гц");//индекс 1
ui->comboBoxVCH->addItem("1Гц"); //индекс 2
ui->comboBoxVCH->addItem("2Гц");//индекс 3
ui->comboBoxVCH->addItem("10Гц"); //индекс 4
ui->comboBoxNCH->addItem("200Гц"); //индекс 0
ui->comboBoxNCH->addItem("500Гц");//индекс 1
ui->comboBoxNCH->addItem("1кГц"); //индекс 2
ui->comboBoxNCH->addItem("5кГц");//индекс 3
ui->comboBoxNCH->addItem("10кГц"); //индекс 4
ui->comboBoxNCH->addItem("20кГц");//индекс 5
ui->comboBoxNCH->addItem("50кГц"); //индекс 6
ui->comboBoxNCH->addItem("100кГц");//индекс 7
// QStringList stringList;
// ui->comboBoxOUT->addItems(stringList);
// ui->comboBoxOUT->insertItems(1,stringList);
thisData.IFN=Lp200; //инициализирую по умолчанию, что бы когда прилетит первый сэнс не было вылета из за расчетов портированных с прибора
2023-11-30 12:58:49 +03:00
thisData.IFV=Hp1;
thisData.IIN=ICP;
thisData.IKU=Ku1;
thisData.SENS=1.0;
thisData.VALUE=Accel;
2023-12-14 17:04:09 +03:00
hideValue();
2023-11-30 12:58:49 +03:00
}
windowChannel::~windowChannel()
{
delete ui;
}
void windowChannel::sendSens()
{
Set dataToSend=thisData;
bool ok;
dataToSend.SENS = QInputDialog::getDouble(this, tr("Введите значение"),
tr("Введите значение чувствительности датчика"), thisData.SENS, 0.0001, 99999, 4, &ok,
Qt::WindowFlags(), 1);
if (ok){emit ReadyToSend(dataToSend, SENS);}
if(thisData.IKU!=VerifyGainA142(thisData)){
thisData.IKU=VerifyGainA142(thisData);
emit ReadyToSend(thisData, IKU);
};
}
2023-11-30 12:58:49 +03:00
void windowChannel::setSens(Set data)
{
if(data.channel==this->channel){
thisData.SENS=data.SENS;
reDraw();
}
}
void windowChannel::setState(Set data)
{
if(data.channel==this->channel){
thisData.IKU=data.IKU;
thisData.IIN=data.IIN;
thisData.IFV=data.IFV;
thisData.IFN=data.IFN;
thisData.VALUE=data.VALUE;
reDraw();
}
}
void windowChannel::reDraw()
{
2023-12-14 17:04:09 +03:00
2023-11-30 12:58:49 +03:00
if(thisData.SENS<100000&&thisData.SENS>=10000) { ui->labelSENS->setText(QString::number(thisData.SENS,'f', 0));}
else if(thisData.SENS<10000&&thisData.SENS>=1000) { ui->labelSENS->setText(QString::number(thisData.SENS,'f', 1));}
else if(thisData.SENS<1000&&thisData.SENS>=100) {ui->labelSENS->setText(QString::number(thisData.SENS,'f', 2));}
else if(thisData.SENS<100&&thisData.SENS>=10){ui->labelSENS->setText(QString::number(thisData.SENS,'f', 3));}
else {ui->labelSENS->setText(QString::number(thisData.SENS,'f', 4));}
2023-12-14 17:04:09 +03:00
if(thisData.IIN==CHARGE&&thisData.VALUE==Accel)
ui->labelUNITS->setText("пКл/м/с2");
if(thisData.IIN==1&&thisData.VALUE==Accel)
ui->labelUNITS->setText("мВ/м/с2");
if(thisData.IIN==CHARGE&thisData.VALUE==Velocity)
ui->labelUNITS->setText("пКл/мм/с");
if(thisData.IIN==ICP&&thisData.VALUE==Velocity)
ui->labelUNITS->setText("мВ/мм/с");
if(thisData.IIN==CHARGE&&thisData.VALUE==Pascal)
ui->labelUNITS->setText("пКл/Па");
if(thisData.IIN==ICP&&thisData.VALUE==Pascal)
ui->labelUNITS->setText("мВ/Па");
if(thisData.IIN==CHARGE&&thisData.VALUE==k_Pascal)
ui->labelUNITS->setText("пКл/кПа");
if(thisData.IIN==ICP&&thisData.VALUE==k_Pascal)
ui->labelUNITS->setText("мВ/кПа");
if(thisData.IIN==CHARGE&&thisData.VALUE==M_Pascal)
ui->labelUNITS->setText("пКл/МПа");
if(thisData.IIN==ICP&&thisData.VALUE==M_Pascal)
ui->labelUNITS->setText("мВ/МПа");
if(thisData.IIN==CHARGE&&thisData.VALUE==Nython)
ui->labelUNITS->setText("пКл/Н");
if(thisData.IIN==ICP&&thisData.VALUE==Nython)
ui->labelUNITS->setText("мВ/Н");
if(thisData.IIN==CHARGE&&thisData.VALUE==k_Nuthon)
ui->labelUNITS->setText("пКл/кН");
if(thisData.IIN==ICP&&thisData.VALUE==k_Nuthon)
ui->labelUNITS->setText("мВ/кН");
if(thisData.IIN==CHARGE&&thisData.VALUE==pQ)
ui->labelUNITS->setText("пКл/мВ");
if(thisData.IIN==ICP&&thisData.VALUE==pQ)
ui->labelUNITS->setText("мВ/мВ");
if(thisData.IIN==CHARGE&&thisData.VALUE==mV)
ui->labelUNITS->setText("пКл/пКл");
if(thisData.IIN==ICP&&thisData.VALUE==mV)
ui->labelUNITS->setText("мВ/пКл");
//выставляем значение комбобоксов
2023-11-30 12:58:49 +03:00
switch (thisData.IIN) {
case ICP:{
2023-12-14 17:04:09 +03:00
ui->labelIIN->setText("IEPE");
2023-11-30 12:58:49 +03:00
break;
}
case CHARGE:{
2023-12-14 17:04:09 +03:00
ui->labelIIN->setText("IE");
2023-11-30 12:58:49 +03:00
break;
}
}//end switch
switch (thisData.IFV) {
case Hp0_2:{
ui->comboBoxVCH->setCurrentIndex(0);
2023-11-30 12:58:49 +03:00
break;
}
case Hp0_3:{
ui->comboBoxVCH->setCurrentIndex(1);
2023-11-30 12:58:49 +03:00
break;
}
case Hp1:{
ui->comboBoxVCH->setCurrentIndex(2);
2023-11-30 12:58:49 +03:00
break;
}
case Hp2:{
ui->comboBoxVCH->setCurrentIndex(3);
2023-11-30 12:58:49 +03:00
break;
}
case Hp10:{
ui->comboBoxVCH->setCurrentIndex(4);
2023-11-30 12:58:49 +03:00
break;
}
}//end switch
switch (thisData.IFN) {
case Lp200:{
ui->comboBoxNCH->setCurrentIndex(0);
2023-11-30 12:58:49 +03:00
break;
}
case Lp500:{
ui->comboBoxNCH->setCurrentIndex(1);
2023-11-30 12:58:49 +03:00
break;
}
case Lp1000:{
ui->comboBoxNCH->setCurrentIndex(2);
2023-11-30 12:58:49 +03:00
break;
}
case Lp5000:{
ui->comboBoxNCH->setCurrentIndex(3);
2023-11-30 12:58:49 +03:00
break;
}
case Lp10000:{
ui->comboBoxNCH->setCurrentIndex(4);
2023-11-30 12:58:49 +03:00
break;
}
case Lp20000:{
ui->comboBoxNCH->setCurrentIndex(5);
2023-11-30 12:58:49 +03:00
break;
}
case Lp50000:{
ui->comboBoxNCH->setCurrentIndex(6);
2023-11-30 12:58:49 +03:00
break;
}
case Lp100000:{
ui->comboBoxNCH->setCurrentIndex(7);
2023-11-30 12:58:49 +03:00
break;
}
}//end switch
2023-11-30 12:58:49 +03:00
2023-12-14 17:04:09 +03:00
ui->comboBoxOUT->setCurrentText(DisplayIKUA142(thisData.SENS, thisData.IKU, thisData.VALUE));
2023-11-30 12:58:49 +03:00
showValue();
2023-12-14 17:04:09 +03:00
2023-11-30 12:58:49 +03:00
}
void windowChannel::hideValue()
{
2023-12-14 17:04:09 +03:00
ui->comboBoxNCH->hide();
ui->comboBoxOUT->hide();
ui->comboBoxVCH->hide();
ui->labelSENS->hide();
2023-12-14 17:04:09 +03:00
ui->labelIIN->hide();
ui->labelUNITS->hide();
}
void windowChannel::showValue()
{
2023-12-14 17:04:09 +03:00
ui->comboBoxNCH->show();
ui->comboBoxOUT->show();
ui->comboBoxVCH->show();
ui->labelSENS->show();
2023-12-14 17:04:09 +03:00
ui->labelIIN->show();
ui->labelUNITS->show();
}
2023-11-30 12:58:49 +03:00
void windowChannel::setWindowsChannel(typeCHANNEL channel)
{
this->channel = channel;
thisData.channel=channel;
ui->labelChanel->setNum((int)(channel+1)); //потому что енам с 0
2023-11-30 12:58:49 +03:00
}
typeCHANNEL windowChannel::getWindowsChannel()
{
return channel;
}
typeIKU windowChannel::maxGain(Set Data) //сверяет гейн на допусимый прибора при установке сенс
2023-11-30 12:58:49 +03:00
{
typeIKU maxGain;
if(Data.SENS <= 0.0010f) //0.001
maxGain= Ku1000;
else
if(/*sens >= 0.0011f && */Data.SENS <= 10.000f) //0.002
maxGain= Ku1000;
else
if(/*sens >= 10.001f && */Data.SENS <= 20.000f) //20
maxGain= Ku500;
else
if(/*sens >= 20.001f && */Data.SENS <= 50.000f) //50
maxGain= Ku200;
else
if(/*sens >= 50.001f && */Data.SENS <= 100.00f) //100
maxGain= Ku100;
else
if(/*sens >= 100.01f && */Data.SENS <= 200.00f) //200
maxGain= Ku50;
else
if(/*sens >= 200.01f && */Data.SENS <= 500.00f) //500
maxGain= Ku20;
else
if(/*sens >= 500.01f && */Data.SENS <= 1000.0f) //1000
maxGain= Ku10;
else
if(/*sens >= 1000.01f && */Data.SENS <= 2000.0f) //2000
maxGain= Ku5;
else
if(/*sens >= 2000.01f && */Data.SENS <= 5000.0f) //5000
maxGain= Ku2;
else
if(/*sens >= 5000.01f && */Data.SENS <= 10000.0f) //10000
maxGain= Ku1;
else
if(/*sens >= 10001.0f && */Data.SENS <= 20000.0f) //20000
maxGain= Ku0_5;
else
if(/*sens >= 20001.0f && */Data.SENS <= 50000.0f) //50000
maxGain= Ku0_2;
else
if(Data.SENS < 100000.0f) //99999
maxGain= Ku0_1;
return maxGain;
}
2023-11-30 12:58:49 +03:00
typeIKU windowChannel::VerifyGainA142(Set Data) //сверяет гейн на допусимый прибора при установке сенс
{
if(Data.SENS <= 0.0010f) //0.001
2023-11-30 12:58:49 +03:00
{
if(Data.IKU > Ku1000)
2023-11-30 12:58:49 +03:00
{
Data.IKU = Ku1000;
2023-11-30 12:58:49 +03:00
}
}
else
if(/*sens >= 0.0011f && */Data.SENS <= 10.000f) //0.002
2023-11-30 12:58:49 +03:00
{
if(Data.IKU > Ku1000)
2023-11-30 12:58:49 +03:00
{
Data.IKU = Ku1000;
2023-11-30 12:58:49 +03:00
}
}
else
if(/*sens >= 10.001f && */Data.SENS <= 20.000f) //20
2023-11-30 12:58:49 +03:00
{
if(Data.IKU > Ku500)
2023-11-30 12:58:49 +03:00
{
Data.IKU = Ku500;
2023-11-30 12:58:49 +03:00
}
}
else
if(/*sens >= 20.001f && */Data.SENS <= 50.000f) //50
2023-11-30 12:58:49 +03:00
{
if(Data.IKU > Ku200)
2023-11-30 12:58:49 +03:00
{
Data.IKU = Ku200;
2023-11-30 12:58:49 +03:00
}
}
else
if(/*sens >= 50.001f && */Data.SENS <= 100.00f) //100
2023-11-30 12:58:49 +03:00
{
if(Data.IKU > Ku100)
2023-11-30 12:58:49 +03:00
{
Data.IKU = Ku100;
2023-11-30 12:58:49 +03:00
}
}
else
if(/*sens >= 100.01f && */Data.SENS <= 200.00f) //200
2023-11-30 12:58:49 +03:00
{
if(Data.IKU > Ku50)
2023-11-30 12:58:49 +03:00
{
Data.IKU = Ku50;
2023-11-30 12:58:49 +03:00
}
}
else
if(/*sens >= 200.01f && */Data.SENS <= 500.00f) //500
2023-11-30 12:58:49 +03:00
{
if(Data.IKU > Ku20)
2023-11-30 12:58:49 +03:00
{
Data.IKU = Ku20;
2023-11-30 12:58:49 +03:00
}
}
else
if(/*sens >= 500.01f && */Data.SENS <= 1000.0f) //1000
2023-11-30 12:58:49 +03:00
{
if(Data.IKU > Ku10)
2023-11-30 12:58:49 +03:00
{
Data.IKU = Ku10;
2023-11-30 12:58:49 +03:00
}
}
else
if(/*sens >= 1000.01f && */Data.SENS <= 2000.0f) //2000
2023-11-30 12:58:49 +03:00
{
if(Data.IKU > Ku5)
2023-11-30 12:58:49 +03:00
{
Data.IKU = Ku5;
2023-11-30 12:58:49 +03:00
}
}
else
if(/*sens >= 2000.01f && */Data.SENS <= 5000.0f) //5000
2023-11-30 12:58:49 +03:00
{
if(Data.IKU > Ku2)
2023-11-30 12:58:49 +03:00
{
Data.IKU = Ku2;
2023-11-30 12:58:49 +03:00
}
}
else
if(/*sens >= 5000.01f && */Data.SENS <= 10000.0f) //10000
2023-11-30 12:58:49 +03:00
{
if(Data.IKU > Ku1)
2023-11-30 12:58:49 +03:00
{
Data.IKU = Ku1;
2023-11-30 12:58:49 +03:00
}
}
else
if(/*sens >= 10001.0f && */Data.SENS <= 20000.0f) //20000
2023-11-30 12:58:49 +03:00
{
if(Data.IKU > Ku0_5)
2023-11-30 12:58:49 +03:00
{
Data.IKU = Ku0_5;
2023-11-30 12:58:49 +03:00
}
}
else
if(/*sens >= 20001.0f && */Data.SENS <= 50000.0f) //50000
2023-11-30 12:58:49 +03:00
{
if(Data.IKU > Ku0_2)
2023-11-30 12:58:49 +03:00
{
Data.IKU = Ku0_2;
2023-11-30 12:58:49 +03:00
}
}
else
if(Data.SENS < 100000.0f) //99999
2023-11-30 12:58:49 +03:00
{
if(Data.IKU > Ku0_1)
2023-11-30 12:58:49 +03:00
{
Data.IKU = Ku0_1;
2023-11-30 12:58:49 +03:00
}
}
return Data.IKU;
2023-11-30 12:58:49 +03:00
}
QString windowChannel::DisplayIKUA142(float sens, typeIKU iku ,typeVALUE value)
{uint out;
uint offset;
2023-11-30 12:58:49 +03:00
//вбычку обьявлю тут
2023-12-14 17:04:09 +03:00
const char *pOUTUNITS[20]={
"В/м/c2",
"В/мм/с",
"В/Па",
"В/кПа",
"В/МПа",
"В/Н",
"В/кН",
"В/мВ",
"В/пКл",
};
2023-11-30 12:58:49 +03:00
2023-12-14 17:04:09 +03:00
const char *pOUT[35] =
2023-11-30 12:58:49 +03:00
{
2023-12-14 17:04:09 +03:00
"0.0001 м",
"0.0002 м",
"0.0005 м",
"0.001 м",
"0.002 м",
"0.005 м",
"0.01 м",
"0.02 м",
"0.05 м",
"0.1 м",
"0.2 м",
"0.5 м",
"1 м",
"2 м",
"5 м",
"10 м",
"20 м",
"50 м",
"100 м",
"200 м",
"500 м",
"1 ",
"2 ",
"5 ",
"10 ",
"20 ",
"50 ",
"100 ",
"200 ",
"500 ",
"1000 ",
"2000 ",
"5000 ",
"10000 ",
2023-11-30 12:58:49 +03:00
};
if((sens>=0.0001f)&&(sens<0.001f)) //0.001
{
out = iku;
offset=0;
}
else
if((sens >= 0.0010f)&&(sens < 0.010f)) //0.01
{
out = iku;
offset=0;
}
else
if((sens>=0.01f)&&(sens<0.1f)) //0.01
{
out = iku + 3;
offset=3;
}
else
if((sens>=0.1f)&&(sens<1.0f)) //0.1
{
out = iku + 6;
offset=6;
}
else
if((sens>=1.0f)&&(sens<10.0f)) //1
{
out = iku + 9;
offset=9;
}
else
if((sens>=10.0f)&&(sens<100.0f)) //10
{
out = iku + 12;
offset=12;
}
else
if((sens>=100.0f)&&(sens<1000.0f)) //100
{
out = iku + 15;
offset=15;
}
else
if((sens >= 1000.0f)&&(sens<10000.0f)) //1000
{
out = iku + 18;
offset=18;
}
if((sens >= 10000.0f)&&(sens < 100000.0f)) //1000
2023-11-30 12:58:49 +03:00
{
out = iku + 21;
offset=21;
2023-11-30 12:58:49 +03:00
}
// qDebug()<<"текущяя строка Ку по списку"<<out;
//qDebug()<<"смещение"<<offset;
2023-12-14 17:04:09 +03:00
qDebug()<<"валуе"<<value;
//этот кусочек смотрит на чувствительность и
//пытается заполнить комбобобокс значениями строк соответствующим индексам КУ
//todo: добавить проверку verify Gain!!!!
ui->comboBoxOUT->clear();
uint16_t maxPlannedOut = offset+13;
2023-12-13 14:36:44 +03:00
//qDebug()<< "max gain"<< thisData.channel<< maxGain(thisData);
for (uint offsetToWork=offset;((offsetToWork<34)&&
(offsetToWork<maxPlannedOut)&&
((maxGain(thisData)+offset)>=offsetToWork)); //проверяем на максиимально возможный для данного сенса
offsetToWork++) {
2023-12-14 17:04:09 +03:00
QString stringToComboBox;
stringToComboBox.append(pOUT[offsetToWork]);
stringToComboBox.append(pOUTUNITS[thisData.VALUE]);
ui->comboBoxOUT->addItem(stringToComboBox);
// ui->comboBoxOUT->addItem(pOUT[(uint16_t)value][offsetToWork]);
ui->comboBoxOUT->setCurrentIndex(iku);
//qDebug()<<"добавлено смещние"<<offsetToWork;
2023-11-30 12:58:49 +03:00
}
//давай попробуем влоб запретить индексы 0-2 для IEPE
// Get the index of the value to disable
if(thisData.IIN==ICP){
//todo: сделать функцию для отключения пунктов меню
QModelIndex index0 = ui->comboBoxOUT->model()->index(0,0);
QVariant v0(0);
ui->comboBoxOUT->model()->setData( index0, v0, Qt::UserRole -1);
QModelIndex index1 = ui->comboBoxOUT->model()->index(1,0);
QVariant v1(0);
ui->comboBoxOUT->model()->setData( index1, v1, Qt::UserRole -1);
QModelIndex index2 = ui->comboBoxOUT->model()->index(2,0);
QVariant v2(0);
ui->comboBoxOUT->model()->setData( index2, v2, Qt::UserRole -1);
}
2023-12-14 17:04:09 +03:00
return QString::fromStdString(pOUT[out]);
2023-11-30 12:58:49 +03:00
}
void windowChannel::on_comboBoxVCH_activated(int index)
{
if(index==0) thisData.IFV=Hp0_2;
else if(index==1) thisData.IFV=Hp0_3;
else if(index==2) thisData.IFV=Hp1;
else if(index==3) thisData.IFV=Hp2;
else if(index==4) thisData.IFV=Hp10;
emit ReadyToSend(thisData, IFV);
}
void windowChannel::on_comboBoxNCH_activated(int index)
{
if(index==0) thisData.IFN=Lp200;
else if(index==1) thisData.IFN=Lp500;
else if(index==2) thisData.IFN=Lp1000;
else if(index==3) thisData.IFN=Lp5000;
else if(index==4) thisData.IFN=Lp10000;
else if(index==5) thisData.IFN=Lp20000;
else if(index==6) thisData.IFN=Lp50000;
else if(index==7) thisData.IFN=Lp100000;
emit ReadyToSend(thisData, IFN);
}
QStringList windowChannel::avalibleKuList(Set thisData)
{
QStringList result;
uint startIndex;
//вбычку обьявлю тут
const char *pOUT[3][25] =
{
{
"0.0001 мВ/м/c2",
"0.0002 мВ/м/c2",
"0.0005 мВ/м/c2",
"0.001 мВ/м/c2",
"0.002 мВ/м/c2",
"0.005 мВ/м/c2",
"0.01 мВ/м/c2",
"0.02 мВ/м/c2",
"0.05 мВ/м/c2",
"0.1 мВ/м/c2",
"0.2 мВ/м/c2",
"0.5 мВ/м/c2",
"1 мВ/м/c2",
"2 мВ/м/c2",
"5 мВ/м/c2",
"10 мВ/м/c2",
"20 мВ/м/c2",
"50 мВ/м/c2",
"100 мВ/м/c2",
"200 мВ/м/c2",
"500 мВ/м/c2",
"1 В/м/c2",
"2 В/м/c2",
"5 В/м/c2",
"10 В/м/c2"
},
{
"0.0001 мВ/Па",
"0.0002 мВ/Па",
"0.0005 мВ/Па",
"0.001 мВ/Па",
"0.002 мВ/Па",
"0.005 мВ/Па",
"0.01 мВ/Па",
"0.02 мВ/Па",
"0.05 мВ/Па",
"0.1 мВ/Па",
"0.2 мВ/Па",
"0.5 мВ/Па",
"1 мВ/Па",
"2 мВ/Па",
"5 мВ/Па",
"10 мВ/Па",
"20 мВ/Па",
"50 мВ/Па",
"100 мВ/Па",
"200 мВ/Па",
"500 мВ/Па",
"1 В/Па",
"2 В/Па",
"5 В/Па",
"10 В/Па"
},
{
"0.0001 мВ/Н",
"0.0002 мВ/Н",
"0.0005 мВ/Н",
"0.001 мВ/Н",
"0.002 мВ/Н",
"0.005 мВ/Н",
"0.01 мВ/Н",
"0.02 мВ/Н",
"0.05 мВ/Н",
"0.1 мВ/Н",
"0.2 мВ/Н",
"0.5 мВ/Н",
"1 мВ/Н",
"2 мВ/Н",
"5 мВ/Н",
"10 мВ/Н",
"20 мВ/Н",
"50 мВ/Н",
"100 мВ/Н",
"200 мВ/Н",
"500 мВ/Н",
"1 В/Н",
"2 В/Н",
"5 В/Н",
"10 В/Н"
}
};
if(thisData.SENS <= 0.0010f) //0.001
{
startIndex = thisData.IKU;
}
else
if(/*thisData.SENS >= 0.0011f && */thisData.SENS <= 0.0020f) //0.002
{
startIndex = (uint16_t)thisData.IKU + 1;
}
else
if(/*thisData.SENS >= 0.0021f && */thisData.SENS <= 0.0050f) //0.005
{
startIndex = (uint16_t)thisData.IKU + 2;
}
else
if(/*thisData.SENS >= 0.0051f && */thisData.SENS <= 0.0100f) //0.01
{
startIndex = (uint16_t)thisData.IKU + 3;
}
else
if(/*thisData.SENS >= 0.0101f && */thisData.SENS <= 0.0200f) //0.02
{
startIndex = (uint16_t)thisData.IKU + 4;
}
else
if(/*thisData.SENS >= 0.0201f && */thisData.SENS <= 0.0500f) //0.05
{
startIndex = (uint16_t)thisData.IKU + 5;
}
else
if(/*thisData.SENS >= 0.0501f && */thisData.SENS <= 0.1000f) //0.1
{
startIndex = (uint16_t)thisData.IKU + 6;
}
else
if(/*thisData.SENS >= 0.1001f && */thisData.SENS <= 0.2000f) //0.2
{
startIndex = (uint16_t)thisData.IKU + 7;
}
else
if(/*thisData.SENS >= 0.2001f && */thisData.SENS <= 0.5000f) //0.5
{
startIndex = (uint16_t)thisData.IKU + 8;
}
else
if(/*thisData.SENS >= 0.5001f && */thisData.SENS <= 1.0000f) //1
{
startIndex = (uint16_t)thisData.IKU + 9;
}
else
if(/*thisData.SENS >= 1.0001f && */thisData.SENS <= 2.0000f) //2
{
startIndex = (uint16_t)thisData.IKU + 10;
}
else
if(/*thisData.SENS >= 2.0001f && */thisData.SENS <= 5.0000f) //5
{
startIndex = (uint16_t)thisData.IKU + 11;
}
else
if(/*thisData.SENS >= 5.0001f && */thisData.SENS <= 10.000f) //10
{
startIndex = (uint16_t)thisData.IKU + 12;
}
else
if(/*thisData.SENS >= 10.001f && */thisData.SENS <= 20.000f) //20
{
startIndex = (uint16_t)thisData.IKU + 13;
}
else
if(/*thisData.SENS >= 20.001f && */thisData.SENS <= 50.000f) //50
{
startIndex = (uint16_t)thisData.IKU + 14;
}
else
if(/*thisData.SENS >= 50.001f && */thisData.SENS <= 100.00f) //100
{
startIndex = (uint16_t)thisData.IKU + 15;
}
else
if(/*thisData.SENS >= 100.01f && */thisData.SENS <= 200.00f) //200
{
startIndex = (uint16_t)thisData.IKU + 16;
}
else
if(/*thisData.SENS >= 200.01f && */thisData.SENS <= 500.00f) //500
{
startIndex = (uint16_t)thisData.IKU + 17;
}
else
if(/*thisData.SENS >= 500.01f && */thisData.SENS <= 1000.0f) //1000
{
startIndex = (uint16_t)thisData.IKU + 18;
}
else
if(/*thisData.SENS >= 1000.1f && */thisData.SENS <= 2000.0f) //2000
{
startIndex = (uint16_t)thisData.IKU + 19;
}
else
if(/*thisData.SENS >= 2000.1f && */thisData.SENS <= 5000.0f) //2000
{
startIndex = (uint16_t)thisData.IKU + 20;
}
else
if(/*thisData.SENS >= 5000.1f && */thisData.SENS <= 10000.0f) //10000
{
startIndex = (uint16_t)thisData.IKU + 21;
}
else
if(/*thisData.SENS >= 10001 && */thisData.SENS <= 20000.0f) //20000
{
startIndex = (uint16_t)thisData.IKU + 22;
}
else
if(/*thisData.SENS >= 20001 && */thisData.SENS <= 50000.0f) //50000
{
startIndex = (uint16_t)thisData.IKU + 23;
}
else
if(/*thisData.SENS >= 50001 && */thisData.SENS <= 100000) //100000
{
startIndex = (uint16_t)thisData.IKU + 24;
}
qDebug()<<"стартовый индекс для расчета "<<startIndex;
}
void windowChannel::on_comboBoxOUT_activated(int index)
{
thisData.IKU=(typeIKU)index;
emit ReadyToSend(thisData, IKU);
}