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
MeshGenerationDialog::PipelineInputs Struct Reference

All inputs needed by the pipeline worker. Collected on the main thread by collectInputs() so the worker never touches Qt widgets or SWMMModelLayer. More...

#include <meshgenerationdialog.h>

Collaboration diagram for MeshGenerationDialog::PipelineInputs:

Classes

struct  AuxLine
 
struct  AuxPoint
 
struct  CandidateNode
 
struct  QuadRegionLayerSpec
 
struct  RegionHydraulics
 

Public Types

enum class  BoundaryKind {
  AutoBBox ,
  Subcatchments ,
  VectorFile
}
 

Public Attributes

QString inpPath
 
QString dtmPath
 
QVector< QPolygonF > domains
 
QVector< QVector< QPointF > > holeRings
 
BoundaryKind boundaryKind = BoundaryKind::AutoBBox
 
QString boundaryPath
 VectorFile: datasource path.
 
QString boundaryLayerName
 VectorFile: OGR layer name ("" = first)
 
QString boundaryCRSWkt
 VectorFile: source SRS WKT ("" = mesh CRS)
 
QVector< QVector< QPointF > > subcatchPolys
 Subcatchments: raw rings (mesh CRS)
 
MapExtent modelExtent
 AutoBBox fallback frame.
 
QVector< CandidateNodecandidateNodes
 
QVector< QPair< QString, QVector< QPointF > > > candidateLinks
 
QVector< AuxPointauxPoints
 
QVector< AuxLineauxLines
 
QVector< QPair< QString, QPointF > > subcatchSeeds
 
bool includeJunctions = false
 
bool includeConduits = false
 
bool includeSubcatch = false
 
QVector< mesh::SteinerPointsteinerPoints
 
QVector< mesh::ConstraintSegmentconstraintSegs
 
QVector< mesh::RegionMarkerregionMarkers
 
QHash< int, QString > nodeMarkerToTag
 
QHash< int, QString > edgeMarkerToTag
 
QVector< QPair< QString, QPointF > > couplingNodes
 
bool mapNodesAfterGen = true
 
QString meshCRSWkt
 
double pslgSimplifyEps = 0.0
 
double pslgSnapEps = 0.0
 
double terrainBoundaryBuffer = -1.0
 
double maxBoundaryEdgeLen = 0.0
 
mesh::GenerationOptions genOpts
 
QVector< mesh::PatchMeshpatches
 
QVector< mesh::QuadRegionquadRegions
 
QVector< QuadRegionLayerSpecquadRegionLayers
 
bool quadEverywhere = false
 
double quadEverywhereSpacing = 0.0
 
mesh::QuadRegion quadRegionDefaults
 
mesh::QuadQualityBounds quadBounds
 
mesh::pslg::MinSizePolicy minSizePolicy
 
bool minSizeCleanup = true
 
bool minSizeEnforce = false
 
double sizeGradation = 0.0
 
bool doThinning = false
 
mesh::DTMThinnerOptions thinnerOpts
 
double zConversionFactor = 1.0
 
QString meshCRSTag
 
QString meshLinearUnitName
 
QVector< QPointF > featureZSeedXY
 
QVector< doublefeatureZSeedZ
 
QVector< QPointF > nodeRimXY
 
QVector< doublenodeRimZ
 
double nodeFlattenRadius = 0.0
 
bool nodesUseRim = false
 
double nodeMinSeparation = 0.0
 
ElevInterpMethod elevInterpMethod = ElevInterpMethod::IDW
 
NNVariant nnVariant = NNVariant::Sibson
 
double idwPower = 2.0
 
mesh::MeshOutputMode outputMode = mesh::MeshOutputMode::External
 
QString meshOutputPath
 
double manningsN = 0.035
 
double initDepth = 0.0
 
QVector< mesh::InfilDefaultRowinfilDefaults
 
QHash< QString, RegionHydraulicsregionHydraulics
 

Detailed Description

All inputs needed by the pipeline worker. Collected on the main thread by collectInputs() so the worker never touches Qt widgets or SWMMModelLayer.

Member Enumeration Documentation

◆ BoundaryKind

Enumerator
AutoBBox 
Subcatchments 
VectorFile 

Member Data Documentation

◆ auxLines

QVector<AuxLine> MeshGenerationDialog::PipelineInputs::auxLines

◆ auxPoints

QVector<AuxPoint> MeshGenerationDialog::PipelineInputs::auxPoints

◆ boundaryCRSWkt

QString MeshGenerationDialog::PipelineInputs::boundaryCRSWkt

VectorFile: source SRS WKT ("" = mesh CRS)

◆ boundaryKind

BoundaryKind MeshGenerationDialog::PipelineInputs::boundaryKind = BoundaryKind::AutoBBox

◆ boundaryLayerName

QString MeshGenerationDialog::PipelineInputs::boundaryLayerName

VectorFile: OGR layer name ("" = first)

◆ boundaryPath

QString MeshGenerationDialog::PipelineInputs::boundaryPath

VectorFile: datasource path.

◆ candidateLinks

QVector<QPair<QString, QVector<QPointF> > > MeshGenerationDialog::PipelineInputs::candidateLinks

◆ candidateNodes

QVector<CandidateNode> MeshGenerationDialog::PipelineInputs::candidateNodes

◆ constraintSegs

QVector<mesh::ConstraintSegment> MeshGenerationDialog::PipelineInputs::constraintSegs

◆ couplingNodes

QVector<QPair<QString, QPointF> > MeshGenerationDialog::PipelineInputs::couplingNodes

◆ domains

QVector<QPolygonF> MeshGenerationDialog::PipelineInputs::domains

◆ doThinning

bool MeshGenerationDialog::PipelineInputs::doThinning = false

◆ dtmPath

QString MeshGenerationDialog::PipelineInputs::dtmPath

◆ edgeMarkerToTag

QHash<int, QString> MeshGenerationDialog::PipelineInputs::edgeMarkerToTag

◆ elevInterpMethod

ElevInterpMethod MeshGenerationDialog::PipelineInputs::elevInterpMethod = ElevInterpMethod::IDW

◆ featureZSeedXY

QVector<QPointF> MeshGenerationDialog::PipelineInputs::featureZSeedXY

◆ featureZSeedZ

QVector<double> MeshGenerationDialog::PipelineInputs::featureZSeedZ

◆ genOpts

mesh::GenerationOptions MeshGenerationDialog::PipelineInputs::genOpts

◆ holeRings

QVector<QVector<QPointF> > MeshGenerationDialog::PipelineInputs::holeRings

◆ idwPower

double MeshGenerationDialog::PipelineInputs::idwPower = 2.0

◆ includeConduits

bool MeshGenerationDialog::PipelineInputs::includeConduits = false

◆ includeJunctions

bool MeshGenerationDialog::PipelineInputs::includeJunctions = false

◆ includeSubcatch

bool MeshGenerationDialog::PipelineInputs::includeSubcatch = false

◆ infilDefaults

QVector<mesh::InfilDefaultRow> MeshGenerationDialog::PipelineInputs::infilDefaults

◆ initDepth

double MeshGenerationDialog::PipelineInputs::initDepth = 0.0

◆ inpPath

QString MeshGenerationDialog::PipelineInputs::inpPath

◆ manningsN

double MeshGenerationDialog::PipelineInputs::manningsN = 0.035

◆ mapNodesAfterGen

bool MeshGenerationDialog::PipelineInputs::mapNodesAfterGen = true

◆ maxBoundaryEdgeLen

double MeshGenerationDialog::PipelineInputs::maxBoundaryEdgeLen = 0.0

◆ meshCRSTag

QString MeshGenerationDialog::PipelineInputs::meshCRSTag

◆ meshCRSWkt

QString MeshGenerationDialog::PipelineInputs::meshCRSWkt

◆ meshLinearUnitName

QString MeshGenerationDialog::PipelineInputs::meshLinearUnitName

◆ meshOutputPath

QString MeshGenerationDialog::PipelineInputs::meshOutputPath

◆ minSizeCleanup

bool MeshGenerationDialog::PipelineInputs::minSizeCleanup = true

◆ minSizeEnforce

bool MeshGenerationDialog::PipelineInputs::minSizeEnforce = false

◆ minSizePolicy

mesh::pslg::MinSizePolicy MeshGenerationDialog::PipelineInputs::minSizePolicy

◆ modelExtent

MapExtent MeshGenerationDialog::PipelineInputs::modelExtent

AutoBBox fallback frame.

◆ nnVariant

NNVariant MeshGenerationDialog::PipelineInputs::nnVariant = NNVariant::Sibson

◆ nodeFlattenRadius

double MeshGenerationDialog::PipelineInputs::nodeFlattenRadius = 0.0

◆ nodeMarkerToTag

QHash<int, QString> MeshGenerationDialog::PipelineInputs::nodeMarkerToTag

◆ nodeMinSeparation

double MeshGenerationDialog::PipelineInputs::nodeMinSeparation = 0.0

◆ nodeRimXY

QVector<QPointF> MeshGenerationDialog::PipelineInputs::nodeRimXY

◆ nodeRimZ

QVector<double> MeshGenerationDialog::PipelineInputs::nodeRimZ

◆ nodesUseRim

bool MeshGenerationDialog::PipelineInputs::nodesUseRim = false

◆ outputMode

mesh::MeshOutputMode MeshGenerationDialog::PipelineInputs::outputMode = mesh::MeshOutputMode::External

◆ patches

QVector<mesh::PatchMesh> MeshGenerationDialog::PipelineInputs::patches

◆ pslgSimplifyEps

double MeshGenerationDialog::PipelineInputs::pslgSimplifyEps = 0.0

◆ pslgSnapEps

double MeshGenerationDialog::PipelineInputs::pslgSnapEps = 0.0

◆ quadBounds

mesh::QuadQualityBounds MeshGenerationDialog::PipelineInputs::quadBounds

◆ quadEverywhere

bool MeshGenerationDialog::PipelineInputs::quadEverywhere = false

"Generate quadrilateral cells" (QUAD_EVERYWHERE_PLAN_2026-09-07.md §3.5): quad-mesh the whole domain with no polygon required. Explicit regions above stay optional overrides — each is subtracted from the background and keeps its own mode / spacing.

◆ quadEverywhereSpacing

double MeshGenerationDialog::PipelineInputs::quadEverywhereSpacing = 0.0

Target quad edge for the background region; 0 = follow the size field (graded), which is the default and the efficient choice.

◆ quadRegionDefaults

mesh::QuadRegion MeshGenerationDialog::PipelineInputs::quadRegionDefaults

◆ quadRegionLayers

QVector<QuadRegionLayerSpec> MeshGenerationDialog::PipelineInputs::quadRegionLayers

◆ quadRegions

QVector<mesh::QuadRegion> MeshGenerationDialog::PipelineInputs::quadRegions

◆ regionHydraulics

QHash<QString, RegionHydraulics> MeshGenerationDialog::PipelineInputs::regionHydraulics

◆ regionMarkers

QVector<mesh::RegionMarker> MeshGenerationDialog::PipelineInputs::regionMarkers

◆ sizeGradation

double MeshGenerationDialog::PipelineInputs::sizeGradation = 0.0

◆ steinerPoints

QVector<mesh::SteinerPoint> MeshGenerationDialog::PipelineInputs::steinerPoints

◆ subcatchPolys

QVector<QVector<QPointF> > MeshGenerationDialog::PipelineInputs::subcatchPolys

Subcatchments: raw rings (mesh CRS)

◆ subcatchSeeds

QVector<QPair<QString, QPointF> > MeshGenerationDialog::PipelineInputs::subcatchSeeds

◆ terrainBoundaryBuffer

double MeshGenerationDialog::PipelineInputs::terrainBoundaryBuffer = -1.0

◆ thinnerOpts

mesh::DTMThinnerOptions MeshGenerationDialog::PipelineInputs::thinnerOpts

◆ zConversionFactor

double MeshGenerationDialog::PipelineInputs::zConversionFactor = 1.0

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