![]() |
SWMMVis
6.0.0-alpha.4
Qt6/C++ GIS-based graphical user interface for the SWMMVis engine (6.0.0-alpha.4)
|
Go to the source code of this file.
Classes | |
| struct | mesh::QuadMergeOptions |
| Acceptance thresholds for a merged quad. More... | |
Namespaces | |
| namespace | mesh |
Functions | |
| QPair< int, int > | mesh::edgeKey (int a, int b) noexcept |
| Unordered vertex-pair key used for locked edges: (min, max). | |
| int | mesh::mergeTrianglePairs (MeshResult &mesh, const QuadMergeOptions &opts, const QSet< QPair< int, int > > &lockedEdges, QVector< int > *oldToNew=nullptr) |
Greedily merge adjacent triangle pairs of mesh into convex quads. | |
Tri-pair merge (workplans/TRI_QUAD_MESHING_PLAN_2026-09-06.md §3.1, phase G2). Post-processes a triangle mesh into a quad-dominant mixed mesh by greedily pairing adjacent triangles into convex quadrilaterals, best quality first. Unmatched triangles remain, so the output is mixed by nature. Never merges across a locked edge (breaklines, boundary segments, BC-carrying edges), across different region tags, or between cells whose hydraulic attributes differ.
Result cells follow the engine order — every remaining triangle first, then every quad — and the caller receives the old→new cell index map so any per-cell array it holds can be remapped.