![]() |
SWMMVis
6.0.0-alpha.4
Qt6/C++ GIS-based graphical user interface for the SWMMVis engine (6.0.0-alpha.4)
|
#include <pslgminsize.h>
Public Member Functions | |
| QString | summary () const |
Public Attributes | |
| int | verticesWelded = 0 |
| int | segmentsSplit = 0 |
| Vertex-edge fix-ups (§4 stage 3c). | |
| int | pathsCollapsed = 0 |
| int | pathsShortened = 0 |
| Polylines that lost vertices to resampling. | |
| int | shortEdgesKept = 0 |
| Sub-minLen edges retained by the deviation cap. | |
| int | holesDropped = 0 |
| int | cornersTrimmed = 0 |
| int | cornersSkipped = 0 |
| Sharp corners left alone (policy or degree > 2). | |
| int | crossingsBefore = 0 |
| int | crossingsAfter = 0 |
| int | crossingsRepaired = 0 |
| int | iterationsUsed = 0 |
| int | duplicateSegments = 0 |
| int | identitiesMerged = 0 |
| bool | weldRadiusDominatesDomain = false |
| double | domainNarrowestExtent = 0.0 |
| double | maxDisplacement = 0.0 |
| double | domainAreaBefore = 0.0 |
| double | domainAreaAfter = 0.0 |
| double | predictedMinLfs = 0.0 |
| Worst surviving feature scale. | |
| bool | conditioningAbandoned = false |
| QString | abandonReason |
| QVector< Violation > | residuals |
| Capped at MinSizePolicy::maxResiduals. | |
What conditioning did. Every field is a count of a geometry change the user is entitled to know about; domainArea* in particular is the number a reviewer asks for, since moving boundary vertices moves the wetted domain.
| QString mesh::pslg::ConditionReport::summary | ( | ) | const |
One-line summary for the generation log.
| QString mesh::pslg::ConditionReport::abandonReason |
Why the fail-safe tripped, for the generation log. Empty unless conditioningAbandoned is set.
| bool mesh::pslg::ConditionReport::conditioningAbandoned = false |
True when the fail-safe tripped: conditioning would have left the PSLG in a worse state than it started in — more proper crossings, or any of the degeneracies that abort Triangle without being crossings at all (a segment emitted twice, a zero-length segment, two collinear segments overlapping) — so every argument was restored and generation should proceed unconditioned.
| int mesh::pslg::ConditionReport::cornersSkipped = 0 |
Sharp corners left alone (policy or degree > 2).
| int mesh::pslg::ConditionReport::cornersTrimmed = 0 |
| int mesh::pslg::ConditionReport::crossingsAfter = 0 |
| int mesh::pslg::ConditionReport::crossingsBefore = 0 |
| int mesh::pslg::ConditionReport::crossingsRepaired = 0 |
| double mesh::pslg::ConditionReport::domainAreaAfter = 0.0 |
| double mesh::pslg::ConditionReport::domainAreaBefore = 0.0 |
| double mesh::pslg::ConditionReport::domainNarrowestExtent = 0.0 |
| int mesh::pslg::ConditionReport::duplicateSegments = 0 |
Constrained segments that conditioning welded onto geometry another segment already occupied. Triangle drops the repeat, so ONE of the two alignments loses its edge marker and the tag it carried — a modelling change, not a failure, and the reason this is counted separately from the degeneracies that trip the fail-safe.
| int mesh::pslg::ConditionReport::holesDropped = 0 |
| int mesh::pslg::ConditionReport::identitiesMerged = 0 |
Coupling identities merged into another identity. Non-zero only under MinSizePolicy::allowIdentityMerge. Each one also emits an ViolationCause::IdentityMerged residual naming both tags.
| int mesh::pslg::ConditionReport::iterationsUsed = 0 |
| double mesh::pslg::ConditionReport::maxDisplacement = 0.0 |
| int mesh::pslg::ConditionReport::pathsCollapsed = 0 |
| int mesh::pslg::ConditionReport::pathsShortened = 0 |
Polylines that lost vertices to resampling.
| double mesh::pslg::ConditionReport::predictedMinLfs = 0.0 |
Worst surviving feature scale.
| QVector<Violation> mesh::pslg::ConditionReport::residuals |
Capped at MinSizePolicy::maxResiduals.
| int mesh::pslg::ConditionReport::segmentsSplit = 0 |
Vertex-edge fix-ups (§4 stage 3c).
| int mesh::pslg::ConditionReport::shortEdgesKept = 0 |
Sub-minLen edges retained by the deviation cap.
| int mesh::pslg::ConditionReport::verticesWelded = 0 |
| bool mesh::pslg::ConditionReport::weldRadiusDominatesDomain = false |
Diagnostic: the weld radius is at least half the narrowest domain extent, so a ring fold is likely. Reported BEFORE conditioning runs so the log can explain an abandon the user is about to see.