27#ifndef OPENSWMMVIS_MESH_MESHSTAGECACHE_H
28#define OPENSWMMVIS_MESH_MESHSTAGECACHE_H
33#include <QLoggingCategory>
42Q_DECLARE_LOGGING_CATEGORY(lcMeshPerf)
86 const QByteArray &subcatchHash,
87 const QString &layerName,
88 const QString &boundaryCRSWkt,
89 const QString &meshCRSWkt,
91 double maxBoundaryEdgeLen,
92 double minCellSize = 0.0,
93 bool minSizeEnforce =
false);
101 const QRectF &dtmBbox);
109 void prune(
int keepPerStage = 8)
const;
111 [[nodiscard]] QString
dir()
const {
return m_dir; }
114 static constexpr quint32 kMagic = 0x4D435348;
121 static constexpr quint16 kFormatVersion = 1;
123 [[nodiscard]] QString entryPath(
char stage,
const QByteArray &
key)
const;
Definition meshstagecache.h:47
QString dir() const
Definition meshstagecache.h:111
void prune(int keepPerStage=8) const
Definition meshstagecache.cpp:193
bool storeBoundary(const QByteArray &key, const BoundaryPrep &v) const
Definition meshstagecache.cpp:145
static QByteArray boundaryKey(const FileIdentity &src, const QByteArray &subcatchHash, const QString &layerName, const QString &boundaryCRSWkt, const QString &meshCRSWkt, double simplifyEps, double maxBoundaryEdgeLen, double minCellSize=0.0, bool minSizeEnforce=false)
Definition meshstagecache.cpp:60
static QByteArray terrainKey(const FileIdentity &dem, int band, const DTMThinnerOptions &opts, bool doThinning, const QRectF &dtmBbox)
Definition meshstagecache.cpp:88
bool isUsable() const
Definition meshstagecache.cpp:45
bool loadBoundary(const QByteArray &key, BoundaryPrep *out) const
Definition meshstagecache.cpp:128
bool storeTerrain(const QByteArray &key, const TerrainPoints &v) const
Definition meshstagecache.cpp:177
bool loadTerrain(const QByteArray &key, TerrainPoints *out) const
Definition meshstagecache.cpp:161
const char * key
Definition meshcellparams.cpp:24
Definition meshcommands.h:302
int src
index into the caller's vector; -1 = new
Definition pslgminsize.cpp:152
QVector< int > v
pool vertex indices
Definition pslgminsize.cpp:159
Parameters for the normal-deviation terrain thinning.
Definition dtmthinner.h:93
Definition meshstagecache.h:64
qint32 skippedRings
Definition meshstagecache.h:69
QVector< bool > holeValid
parallel: false → skip ring
Definition meshstagecache.h:68
QVector< QPolygonF > domains
simplified+densified exteriors
Definition meshstagecache.h:65
QVector< QPointF > holeSeeds
parallel: interior seed per ring
Definition meshstagecache.h:67
QVector< QVector< QPointF > > holeRings
prepared rings (ALL, in order)
Definition meshstagecache.h:66
Definition meshstagecache.h:56
QString absPath
Definition meshstagecache.h:57
qint64 sizeBytes
Definition meshstagecache.h:59
qint64 mtimeMs
Definition meshstagecache.h:58
Definition meshstagecache.h:74
QVector< QPointF > xyDtm
Definition meshstagecache.h:75
QVector< double > z
Definition meshstagecache.h:76