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
profilesection.h File Reference

The value type every longitudinal cross-section shares, regardless of which surface it was sampled from. More...

#include <QPointF>
#include <QVector>
Include dependency graph for profilesection.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  ProfileSection::Sample
 One point along the traced cross-section. More...
 
struct  ProfileSection::CellCrossing
 A point where the traced line crosses a mesh-cell (triangle) edge. Plotted as a dot on the ground line so the per-cell interpolation basis (constant-per-cell depth → stepped WSE) is visible: each dot marks a cell boundary; the span between two dots is one cell. Unused by raster sections (a DEM has no cells to cross). More...
 
struct  ProfileSection::Section
 The assembled cross-section: ordered samples + a results flag. More...
 

Namespaces

namespace  ProfileSection
 

Variables

constexpr int ProfileSection::kMaxSamples = 2000
 

Detailed Description

The value type every longitudinal cross-section shares, regardless of which surface it was sampled from.

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

Originally the MeshProfileSampler::MeshProfile struct; extracted here so the DEM-raster sampler (RasterProfileSampler) can feed the same MeshProfilePlotWidget chart. MeshProfileSampler's names are aliases of these, so every existing mesh call site is untouched.

A raster (ground-only) section leaves depthNow / maxDepth at 0, triIdx at -1, crossings empty and hasResults false — the chart's water passes are already gated on hasResults, so it renders ground + soil fill only.