Real/imag option for Y axis

This commit is contained in:
Jan Käberich 2021-10-11 15:22:08 +02:00
parent b15084032a
commit d9000903dc
4 changed files with 21 additions and 0 deletions

View File

@ -19,6 +19,12 @@ const set<TraceXYPlot::YAxisType> TraceXYPlot::YAxisTypes = {TraceXYPlot::YAxisT
TraceXYPlot::YAxisType::Magnitude, TraceXYPlot::YAxisType::Magnitude,
TraceXYPlot::YAxisType::Phase, TraceXYPlot::YAxisType::Phase,
TraceXYPlot::YAxisType::VSWR, TraceXYPlot::YAxisType::VSWR,
TraceXYPlot::YAxisType::Real,
TraceXYPlot::YAxisType::Imaginary,
TraceXYPlot::YAxisType::SeriesR,
TraceXYPlot::YAxisType::Capacitance,
TraceXYPlot::YAxisType::Inductance,
TraceXYPlot::YAxisType::QualityFactor,
TraceXYPlot::YAxisType::ImpulseReal, TraceXYPlot::YAxisType::ImpulseReal,
TraceXYPlot::YAxisType::ImpulseMag, TraceXYPlot::YAxisType::ImpulseMag,
TraceXYPlot::YAxisType::Step, TraceXYPlot::YAxisType::Step,
@ -782,6 +788,8 @@ QString TraceXYPlot::AxisTypeToName(TraceXYPlot::YAxisType type)
case YAxisType::Magnitude: return "Magnitude"; case YAxisType::Magnitude: return "Magnitude";
case YAxisType::Phase: return "Phase"; case YAxisType::Phase: return "Phase";
case YAxisType::VSWR: return "VSWR"; case YAxisType::VSWR: return "VSWR";
case YAxisType::Real: return "Real (R)";
case YAxisType::Imaginary: return "Imaginary (X)";
case YAxisType::SeriesR: return "Resistance"; case YAxisType::SeriesR: return "Resistance";
case YAxisType::Capacitance: return "Capacitance"; case YAxisType::Capacitance: return "Capacitance";
case YAxisType::Inductance: return "Inductance"; case YAxisType::Inductance: return "Inductance";
@ -887,6 +895,12 @@ QPointF TraceXYPlot::traceToCoordinate(Trace *t, unsigned int sample, TraceXYPlo
case YAxisType::VSWR: case YAxisType::VSWR:
ret.setY(Util::SparamToVSWR(data.y)); ret.setY(Util::SparamToVSWR(data.y));
break; break;
case YAxisType::Real:
ret.setY(data.y.real());
break;
case YAxisType::Imaginary:
ret.setY(data.y.imag());
break;
case YAxisType::SeriesR: case YAxisType::SeriesR:
ret.setY(Util::SparamToResistance(data.y)); ret.setY(Util::SparamToResistance(data.y));
break; break;

View File

@ -17,6 +17,8 @@ public:
Magnitude, Magnitude,
Phase, Phase,
VSWR, VSWR,
Real,
Imaginary,
// derived parameter options // derived parameter options
SeriesR, SeriesR,
Capacitance, Capacitance,

View File

@ -12,6 +12,8 @@ XYplotAxisDialog::XYplotAxisDialog(TraceXYPlot *plot) :
ui->setupUi(this); ui->setupUi(this);
ui->Y1type->clear(); ui->Y1type->clear();
ui->Y2type->clear(); ui->Y2type->clear();
ui->Y1type->setMaxVisibleItems(20);
ui->Y2type->setMaxVisibleItems(20);
for(int i=0;i<(int) TraceXYPlot::YAxisType::Last;i++) { for(int i=0;i<(int) TraceXYPlot::YAxisType::Last;i++) {
ui->Y1type->addItem(TraceXYPlot::AxisTypeToName((TraceXYPlot::YAxisType) i)); ui->Y1type->addItem(TraceXYPlot::AxisTypeToName((TraceXYPlot::YAxisType) i));
@ -186,6 +188,8 @@ std::set<TraceXYPlot::YAxisType> XYplotAxisDialog::supportedYAxis(TraceXYPlot::X
ret.insert(TraceXYPlot::YAxisType::Magnitude); ret.insert(TraceXYPlot::YAxisType::Magnitude);
ret.insert(TraceXYPlot::YAxisType::Phase); ret.insert(TraceXYPlot::YAxisType::Phase);
ret.insert(TraceXYPlot::YAxisType::VSWR); ret.insert(TraceXYPlot::YAxisType::VSWR);
ret.insert(TraceXYPlot::YAxisType::Real);
ret.insert(TraceXYPlot::YAxisType::Imaginary);
ret.insert(TraceXYPlot::YAxisType::SeriesR); ret.insert(TraceXYPlot::YAxisType::SeriesR);
ret.insert(TraceXYPlot::YAxisType::Capacitance); ret.insert(TraceXYPlot::YAxisType::Capacitance);
ret.insert(TraceXYPlot::YAxisType::Inductance); ret.insert(TraceXYPlot::YAxisType::Inductance);

View File

@ -495,6 +495,7 @@ VNA::VNA(AppWindow *window)
} }
cbSweepType->setCurrentIndex((int) sw); cbSweepType->setCurrentIndex((int) sw);
}); });
configureToolbarForFrequencySweep();
// initial setup is frequency sweep // initial setup is frequency sweep
configureToolbarForFrequencySweep(); configureToolbarForFrequencySweep();
SetSweepType(SweepType::Frequency); SetSweepType(SweepType::Frequency);