根据需求修改使用数据源

This commit is contained in:
hm
2022-12-27 17:05:06 +08:00
parent 6c4f0d9705
commit 8701e87ce5
3 changed files with 47 additions and 14 deletions
+3 -1
View File
@@ -36,7 +36,9 @@ StatusUI::StatusUI(QWidget *parent) :
install(base,0,"滚转角[°]",0,QMap<QVariant, StateWidget::state>{{-45,StateWidget::state::red},{45,StateWidget::state::green}});
install(base,0,"俯仰角[°]",0,QMap<QVariant, StateWidget::state>{{-20,StateWidget::state::red},{20,StateWidget::state::green}});
install(base,0,"爬升角[°]",0,QMap<QVariant, StateWidget::state>{{-45.0,StateWidget::state::red},{45,StateWidget::state::green}});
install(base,0,"海拔[m]",0,QMap<QVariant, StateWidget::state>{{970,StateWidget::state::red},{1800,StateWidget::state::orange},{999000,StateWidget::state::green}});
install(base,0,"GPS高度[m]",0,QMap<QVariant, StateWidget::state>{{970,StateWidget::state::red},{1800,StateWidget::state::orange},{999000,StateWidget::state::green}});
install(base,0,"气压高度[m]",0,QMap<QVariant, StateWidget::state>{{970,StateWidget::state::red},{1800,StateWidget::state::orange},{999000,StateWidget::state::green}});
install(base,0,"表速[m/s]",0,QMap<QVariant, StateWidget::state>{{65,StateWidget::state::red},{160,StateWidget::state::green}});
install(base,0,"真空速[m/s]",0,QMap<QVariant, StateWidget::state>{{50,StateWidget::state::red},{290,StateWidget::state::green}});
install(base,0,"地速[m/s]",0,QMap<QVariant, StateWidget::state>{{50,StateWidget::state::red},{290,StateWidget::state::green}});
+43 -12
View File
@@ -1605,7 +1605,7 @@ void MainWindow::updateVehicle(MavLinkNode::_vehicle vehicle)//事件驱动式
break;
case 2://气压
copk->setHeight(vehicle.vfr_hud.alt);
//copk->setHeight(vehicle.vfr_hud.alt);
break;
@@ -1614,7 +1614,7 @@ void MainWindow::updateVehicle(MavLinkNode::_vehicle vehicle)//事件驱动式
copk->setOL(vehicle.ins1.az/(-9.8));
//copk->setOL(vehicle.ins1.az/(-9.8));
copk->setVerticalSpeed(vehicle.vfr_hud.climb);//朝上为正
@@ -1998,26 +1998,31 @@ void MainWindow::updateVehicle(MavLinkNode::_vehicle vehicle)//事件驱动式
}
statusui->setValue(0,0,5,QString::number(vehicle.global_position_int.alt * 10e-4,'f',1));
statusui->setValue(0,0,6,QString::number(vehicle.vfr_hud.airspeed,'f',1));
//statusui->setValue(0,0,7,QString::number(vehicle.emb_atom_com.Airspeed,'f',1));
//GPS高度
statusui->setValue(0,0,5,QString::number(vehicle.vfr_hud.alt,'f',1));
statusui->setValue(0,0,7,QString::number(vehicle.vfr_hud.airspeed,'f',1));
//statusui->setValue(0,0,8,QString::number(vehicle.emb_atom_com.Airspeed,'f',1));
if(vehicle.vfr_hud.groundspeed < 1)
{
statusui->setValue(0,0,8,QString::number(vehicle.vfr_hud.groundspeed,'f',3));
statusui->setValue(0,0,9,QString::number(vehicle.vfr_hud.groundspeed,'f',3));
}
else if(vehicle.vfr_hud.groundspeed < 10)
{
statusui->setValue(0,0,8,QString::number(vehicle.vfr_hud.groundspeed,'f',1));
statusui->setValue(0,0,9,QString::number(vehicle.vfr_hud.groundspeed,'f',1));
}
else
{
statusui->setValue(0,0,8,QString::number(vehicle.vfr_hud.groundspeed,'f',0));
statusui->setValue(0,0,9,QString::number(vehicle.vfr_hud.groundspeed,'f',0));
}
//statusui->setValue(0,0,9,QString::number(vehicle.emb_atom_com.mach,'f',2));
//statusui->setValue(0,0,10,QString::number(vehicle.emb_atom_com.mach,'f',2));
/*
@@ -2435,7 +2440,10 @@ void MainWindow::TotalDistance(double value)
void MainWindow::INS_Info(Parse::_ins info)
{
if(copk)
{
copk->setOL(info.az/(9.8));
}
}
void MainWindow::NAV_Info(Parse::_nav info)
@@ -2592,8 +2600,8 @@ void MainWindow::EADC_Info(Parse::_eadc info)
statusui->setValue(0,0,0,QString::number(info.aoat1,'f',1));
statusui->setValue(0,0,1,QString::number(info.aost1,'f',1));
statusui->setValue(0,0,7,QString::number(info.vt,'f',1));
statusui->setValue(0,0,9,QString::number(info.mi,'f',3));
statusui->setValue(0,0,8,QString::number(info.vt,'f',1));
statusui->setValue(0,0,10,QString::number(info.mi,'f',3));
}
@@ -2614,6 +2622,29 @@ void MainWindow::EADC_Info(Parse::_eadc info)
}
switch (copk->AltitudeFlag()) {
default:
case 0://绝对
//copk->setHeight(vehicle.global_position_int.alt * 10e-4);
break;
case 1://相对
//copk->setHeight(vehicle.global_position_int.relative_alt * 10e-4);
break;
case 2://气压
copk->setHeight(info.hp);
break;
}
//气压高度
statusui->setValue(0,0,6,QString::number(info.hp,'f',1));
Ma = info.mi;
copk->setAOA(info.aoai1);
+1 -1
View File
@@ -1405,7 +1405,7 @@ void Cockpit::drawRightScale(QPainter *painter)
painter->drawRect(0,600,550,150);
painter->drawText(QRect(10,600,530,150),Qt::AlignLeft|Qt::AlignVCenter,QString::number(m_State.height,'f',0));
painter->drawText(QRect(10,600,530,150),Qt::AlignLeft|Qt::AlignVCenter,QString::number(m_State.height,'f',1));
QString alt_str;
switch (m_State.AltitudeFlag) {