![]() |
SWMMVis
6.0.0-alpha.4
Qt6/C++ GIS-based graphical user interface for the SWMMVis engine (6.0.0-alpha.4)
|
#include "map/swmm2dmeshqsgrenderer.h"#include "contour/marchingtriangles.h"#include "layers/swmm2dmeshlayer.h"#include "mesh/meshcellgeom.h"#include "render/sublayers/contourbandsublayer.h"#include "render/sublayers/couplednodesublayer.h"#include "render/sublayers/isolinesublayer.h"#include "render/sublayers/meshbcsublayer.h"#include "render/sublayers/meshedgesublayer.h"#include "render/sublayers/meshfillsublayer.h"#include "render/sublayers/meshnodesublayer.h"#include "render/colorramp.h"#include "render/qsg2drenderstats.h"#include "render/qsgpremultiply.h"#include "render/rastersymbollayers.h"#include <QFont>#include <QFontMetricsF>#include <QImage>#include <QMatrix4x4>#include <QPainter>#include <QPainterPath>#include <QQuickWindow>#include <QSGFlatColorMaterial>#include <QSGGeometry>#include <QSGGeometryNode>#include <QSGSimpleTextureNode>#include <QSGTexture>#include <QSGTransformNode>#include <QSGVertexColorMaterial>#include <QtMath>#include <algorithm>#include <cmath>#include <limits>#include <vector>Replaces the per-triangle QPainter path in MeshGraphicsItem::paint() (O(N) setBrush+drawPolygon calls) with a single GPU draw call per pass. All colour and width computations happen in CPU once per dirty frame and are then stable across pans.