27#ifndef OPENSWMMVIS_PLOT_PROFILEATTRIBUTETRACKSWIDGET_H
28#define OPENSWMMVIS_PLOT_PROFILEATTRIBUTETRACKSWIDGET_H
57 std::shared_ptr<const ProfileAttributeSampler::AttributeProfile>
data;
86 void setTracks(
const QVector<Track> &tracks);
87 [[nodiscard]]
int trackCount()
const {
return m_tracks.size(); }
128 [[nodiscard]]
int preferredTrackHeight()
const;
131 [[nodiscard]]
int trackHeight()
const;
132 [[nodiscard]]
int bottomAxisHeight()
const;
133 [[nodiscard]] QRectF trackRect(
int trackIdx)
const;
134 void updateSizeHint();
135 void paintTrack(QPainter &
p,
int trackIdx)
const;
136 void paintBottomAxis(QPainter &
p)
const;
140 struct YRange {
double lo = 0.0;
double hi = 1.0; };
141 [[nodiscard]] YRange yRangeFor(
const Track &
t)
const;
143 QVector<Track> m_tracks;
144 QVector<YRange> m_yRanges;
145 QVector<double> m_vx;
146 std::function<
double(
double)> m_toRealChainage;
147 QPointer<ProfileAttributeTrackOptions> m_options;
150 int m_marginLeft = 64;
151 int m_marginRight = 16;
152 double m_vxMin = 0.0;
153 double m_vxMax = 1.0;
154 int m_currentPeriod = -1;
156 bool m_panActive =
false;
157 QPoint m_lastMousePos;
Definition profileattributetrackoptions.h:35
DiagramType t
Definition diagramspec.cpp:20
const char * label
Human label for the filter entry.
Definition gdaldrivers.cpp:22
ArrowPlacement p
Definition linesymbollayer.cpp:27
PlotAttribute
What a series plots. One row per attribute in the Nx2 grid.
Definition plotattribute.h:38
Slice BL — canonical enumeration of plottable result attributes.
Attribute-tracks feature — fetches an along-the-path profile of one generic result attribute (node de...
QVector< int > parent
union-find
Definition pslgminsize.cpp:176
double
Definition swmmpollutantpropertyadapter.cpp:50