SWMMVis  6.0.0-alpha.4
Qt6/C++ GIS-based graphical user interface for the SWMMVis engine (6.0.0-alpha.4)
Loading...
Searching...
No Matches
rasterprofileplotdialog.h
Go to the documentation of this file.
1
23#ifndef RASTER_PROFILE_PLOT_DIALOG_H
24#define RASTER_PROFILE_PLOT_DIALOG_H
25
26#include "plot/profilesection.h"
27
28#include <QDialog>
29#include <QPointer>
30#include <QPointF>
31#include <QVector>
32
33class GISRasterLayer;
40
41class RasterProfilePlotDialog : public QDialog
42{
43 Q_OBJECT
44public:
53 double vertFactor,
54 const QVector<QPointF> &scenePolyline,
55 SWMMVisProjectWindow *projectWindow,
56 QWidget *parent = nullptr);
57 ~RasterProfilePlotDialog() override;
58
61 void setVerticalFactor(double vertFactor);
62
63private:
64 void buildLayout();
65 void rebuildProfile();
66
67 // Persistent map overlay (profile line + position arrow) + the map-drag
68 // tool that scrubs the arrow. Lifetime tied to this dialog.
69 void setupMapOverlay();
70 void removeOverlay();
71 void setMarkerToolActive(bool on); // toggle map-side dragging
72 void openDisplayOptions();
73
74 QPointer<GISRasterLayer> m_raster;
75 QPointer<SWMMVisProjectWindow> m_projectWindow;
76 QVector<QPointF> m_scenePolyline;
77 double m_vertFactor = 1.0;
78
79 MeshProfilePlotWidget *m_plot = nullptr;
80 MeshProfilePlotOptions *m_options = nullptr;
81
82 MeshProfileOverlay *m_overlay = nullptr; // owned by map scene
83 MapToolProfileMarker *m_markerTool = nullptr; // parented to dialog
84 QPointer<OpenSWMMVisMapTool> m_prevTool; // restore on toggle-off/close
85
87};
88
89#endif // RASTER_PROFILE_PLOT_DIALOG_H
A map layer backed by a GDAL raster dataset.
Definition gisrasterlayer.h:61
Definition maptoolprofilemarker.h:29
Definition meshprofileoverlay.h:31
Definition meshprofileplotoptions.h:28
Definition meshprofileplotwidget.h:41
Abstract base class for interactive map tools used in the MapCanvas.
Definition maptool.h:43
Definition rasterprofileplotdialog.h:42
~RasterProfilePlotDialog() override
Definition rasterprofileplotdialog.cpp:83
void setVerticalFactor(double vertFactor)
Re-sample the DEM with a new raw-Z → model-units factor (the terrain toolbar's unit / factor controls...
Definition rasterprofileplotdialog.cpp:88
MDI sub-window owning a MapCanvas, SWMMModelLayer, and map tools.
Definition swmmvisprojectwindow.h:58
The value type every longitudinal cross-section shares, regardless of which surface it was sampled fr...
QVector< int > parent
union-find
Definition pslgminsize.cpp:176
The assembled cross-section: ordered samples + a results flag.
Definition profilesection.h:70