38 QList<std::complex<double>>
40 QList<double> frequencies;
60 QString marker_format;
70 void addTrace(
const QString& name,
const Trace& trace);
71 void removeTrace(
const QString& name);
73 QPen getTracePen(
const QString& traceName)
const;
74 void setTracePen(
const QString& traceName,
const QPen& pen);
75 QMap<QString, QPen> getTracesInfo()
const;
81 int getDisplayMode()
const;
84 bool addMarker(
const QString& markerId,
double frequency,
85 const QPen& pen = QPen(Qt::red, 2));
86 bool removeMarker(
const QString& markerId);
87 bool updateMarkerFrequency(
const QString& markerId,
double newFrequency);
90 QMap<QString, double> getMarkers()
const;
93 QCustomPlot* customPlot()
const {
return plot; }
97 void updateAngleAxis();
98 void toggleDisplayMode();
100 void onFMinChanged(
double value);
101 void onFMaxChanged(
double value);
102 void onFUnitChanged();
105 void checkAxisRanges();
106 void checkAxisRanges(QMouseEvent* event);
107 void onRadialRangeChanged(
const QCPRange& newRange);
111 QCPPolarAxisAngular* angularAxis;
112 QCPPolarAxisRadial* radialAxis;
114 QDoubleSpinBox* rAxisMin;
115 QDoubleSpinBox* rAxisMax;
116 QDoubleSpinBox* rAxisDiv;
117 QComboBox* displayModeCombo;
119 QDoubleSpinBox* fMinSpinBox;
120 QDoubleSpinBox* fMaxSpinBox;
121 QComboBox* fUnitComboBox;
124 QStringList frequencyUnits;
126 QMap<QString, Trace> traces;
127 QMap<QString, Marker> markers;
128 QMap<QString, QList<QCPPolarGraph*>>
132 QList<QCPItemEllipse*> markerItems;
133 QList<QCPItemText*> markerLabels;
135 void updateFrequencyRange();
136 QGridLayout* setupAxisSettings();
138 void clearGraphicsItems();
139 void drawCustomMarkers();
140 double getFrequencyMultiplier()
const;
143 std::complex<double> getComplexValueAtFrequency(
const Trace& trace,
147 std::complex<double> convertToDisplayFormat(
const std::complex<double>& value,