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
swmm2dresultslayer.h File Reference
#include "io/mesh2dh5reader.h"
#include "layers/openswmmvislayer.h"
#include "layers/meshspatialgrid.h"
#include "layers/vertexdepthreconstruct.h"
#include "map/mapextent.h"
#include <ogr_spatialref.h>
#include <QDateTime>
#include <QLineF>
#include <QPointF>
#include <QPolygonF>
#include <QRectF>
#include <QSet>
#include <QTimer>
#include <QString>
#include <QVector>
#include <array>
#include <memory>
#include <vector>
#include "render/iattributeprovider.h"
#include "render/isublayerhost.h"
#include "render/legendsymbolitem.h"
#include "render/sublayers/contourbandsublayer.h"
#include "render/sublayers/isolinesublayer.h"
#include "render/sublayers/meshedgesublayer.h"
#include "render/sublayers/meshfillsublayer.h"
#include "render/sublayers/meshnodesublayer.h"
#include "render/sublayers/scalarfillsublayer.h"
#include "render/sublayers/velocityvectorsublayer.h"
Include dependency graph for swmm2dresultslayer.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  IMesh2DSource
 Abstract source of mesh geometry + per-triangle depth time series. More...
 
class  EngineMesh2DSource
 
class  HDF5Mesh2DSource
 
class  SWMM2DResultsLayer
 
struct  SWMM2DResultsLayer::SceneTri
 
struct  SWMM2DResultsLayer::SceneEdge
 

Namespaces

namespace  openswmmvis
 
namespace  openswmmvis::io
 
namespace  OpenSWMM
 
namespace  OpenSWMM::Render
 

Detailed Description

Author
Caleb Buahin caleb.nosp@m..bua.nosp@m.hin@g.nosp@m.mail.nosp@m..com
Date
2026
License\n GPL-3.0-or-later

Slice CF.MVP — renders 2D surface-routing depth as a colour-mapped overlay on the canvas. The layer is data-source agnostic: during a run the source is an EngineMesh2DSource driven by SimulationRunner ticks; after the run the source swaps to an HDF5Mesh2DSource reading the engine's CF/UGRID HDF5 file so the user can scrub a time slider back to peak inundation.

Rendering reuses the SceneTri paint pattern from SWMM2DMeshLayer (Slice AU). The only differences:

  • Per-triangle colour comes from depth, not elevation, via the inundation colour ramp.
  • Dry cells (depth < DRY_DEPTH) draw with alpha = 0 so the underlying SWMM2DMeshLayer terrain shows through.
  • No hillshade pass — the wet "sheen" is intentionally flat colour.