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
mesh::MeshResult Struct Reference

Result of MeshGenerator::generate. More...

#include <meshresult.h>

Collaboration diagram for mesh::MeshResult:

Public Member Functions

int quadCount () const noexcept
 
bool hasQuads () const noexcept
 

Public Attributes

QVector< MeshVertexvertices
 
QVector< MeshTriangletriangles
 Cells: triangles first, then quads (engine order).
 
QVector< MeshEdgeboundaryEdges
 
QVector< CellCouplingcellCouplings
 Node→cell couplings (Part C).
 
QVector< InfilDefaultRowinfilDefaults
 Tag rows; '*' = mesh-wide fallback.
 
QHash< int, InfilRowinfilOverrides
 Sparse, keyed by triangle index.
 
InfilOptions infilOptions
 [2D_INFILTRATION_OPTIONS].
 
bool ok = false
 
QString errorMsg
 

Detailed Description

Member Function Documentation

◆ hasQuads()

bool mesh::MeshResult::hasQuads ( ) const
inlinenoexcept

◆ quadCount()

int mesh::MeshResult::quadCount ( ) const
inlinenoexcept

Number of quadrilateral cells (O(n)).

Here is the caller graph for this function:

Member Data Documentation

◆ boundaryEdges

QVector<MeshEdge> mesh::MeshResult::boundaryEdges

◆ cellCouplings

QVector<CellCoupling> mesh::MeshResult::cellCouplings

Node→cell couplings (Part C).

◆ errorMsg

QString mesh::MeshResult::errorMsg

◆ infilDefaults

QVector<InfilDefaultRow> mesh::MeshResult::infilDefaults

Tag rows; '*' = mesh-wide fallback.

Per-cell infiltration (INTEGRATED2D_GW_GUI_PLAN §3.2a, phase GG0).

Follows the CellCoupling precedent above — sparse/inherited rows live on MeshResult rather than bloating the per-triangle POD. Resolution is ‘infilOverrides > tag row in infilDefaults > ’*' row > none` (engine D-I3); use mesh::resolveInfil() rather than reading these directly, so the inherited-vs-overridden distinction is preserved.

Parameters are in PROJECT units — the same numbers a user types into [INFILTRATION]. The GUI performs no unit conversion.

Written as [2D_INFILTRATION_DEFAULTS] / [2D_INFILTRATION]; these sections follow the mesh (external .2dm when one is in use, else inline). They must NOT be appended to [2D_TRIANGLES], whose columns are positional.

◆ infilOptions

InfilOptions mesh::MeshResult::infilOptions

[2D_INFILTRATION_OPTIONS].

◆ infilOverrides

QHash<int, InfilRow> mesh::MeshResult::infilOverrides

Sparse, keyed by triangle index.

◆ ok

bool mesh::MeshResult::ok = false

◆ triangles

QVector<MeshTriangle> mesh::MeshResult::triangles

Cells: triangles first, then quads (engine order).

◆ vertices

QVector<MeshVertex> mesh::MeshResult::vertices

The documentation for this struct was generated from the following file: