8#ifndef POLARPLOTWIDGET_H
9#define POLARPLOTWIDGET_H
11#include "UI/PlotWidgets/QCustomPlot/qcustomplot.h"
87 void addTrace(
const QString& name,
const Trace& trace);
104 void setTracePen(
const QString& traceName,
const QPen& pen);
114 double getRmax() {
return rAxisMax->value(); }
118 double getRmin() {
return rAxisMin->value(); }
122 double getRdiv() {
return rAxisDiv->value(); }
127 return displayModeCombo->currentIndex();
138 bool addMarker(
const QString& markerId,
double frequency,
139 const QPen& pen = QPen(Qt::red, 2));
171 void updateAngleAxis() {
176 void toggleDisplayMode() { updatePlot(); }
180 void onFMinChanged(
double value){
181 fMin = value * getFrequencyMultiplier();
187 void onFMaxChanged(
double value) {
188 fMax = value * getFrequencyMultiplier();
194 void onFUnitChanged() {
195 fMin = fMinSpinBox->value() * getFrequencyMultiplier();
196 fMax = fMaxSpinBox->value() * getFrequencyMultiplier();
204 void checkAxisRanges();
209 void checkAxisRanges(QMouseEvent* event) {
218 void onRadialRangeChanged(
const QCPRange& newRange);
228 QComboBox* displayModeCombo;
232 QComboBox* fUnitComboBox;
235 QStringList frequencyUnits;
237 QMap<QString, Trace> traces;
238 QMap<QString, Marker> markers;
239 QMap<QString, QList<QCPPolarGraph*>>
243 QList<QCPItemEllipse*> markerItems;
244 QList<QCPItemText*> markerLabels;
249 void updateFrequencyRange();
253 QGridLayout* setupAxisSettings();
262 void clearGraphicsItems();
267 void drawCustomMarkers();
271 double getFrequencyMultiplier()
const;
278 std::complex<double> getComplexValueAtFrequency(
const Trace& trace,
Custom QDoubleSpinBox. It includes a context menu (right-click) for setting the minimum,...
A QDoubleSpinBox subclass that provides a context menu for configuring range and step.
Definition CustomDoubleSpinBox.h:28
The main container for polar plots, representing the angular axis as a circle.
Definition qcustomplot.h:8291
The radial axis inside a radial plot.
Definition qcustomplot.h:8017
Represents the range an axis is encompassing.
Definition qcustomplot.h:986
The central class of the library. This is the QWidget which displays the plot and interacts with the ...
Definition qcustomplot.h:4305