32#ifndef OPENSWMM_RENDER_MESHRENDERCHUNKINDEX_H
33#define OPENSWMM_RENDER_MESHRENDERCHUNKINDEX_H
66 [[nodiscard]]
bool isEmpty()
const {
return m_chunks.isEmpty(); }
77 void build(
const QVector<QRectF> &cellBBoxes,
78 const QVector<QRectF> &edgeBBoxes,
79 int targetCellsPerChunk = 4096);
83 [[nodiscard]] QueryResult
query(
const QRectF &rect)
const;
85 [[nodiscard]]
const QVector<Chunk> &
chunks()
const {
return m_chunks; }
87 [[nodiscard]]
int chunkCount()
const {
return int(m_chunks.size()); }
90 QVector<Chunk> m_chunks;
Definition meshrenderchunkindex.h:43
QueryResult query(const QRectF &rect) const
Definition meshrenderchunkindex.cpp:108
const QVector< Chunk > & chunks() const
Definition meshrenderchunkindex.h:85
QVector< Chunk > & chunksMutable()
Definition meshrenderchunkindex.h:86
void clear()
Definition meshrenderchunkindex.cpp:36
bool isEmpty() const
Definition meshrenderchunkindex.h:66
void build(const QVector< QRectF > &cellBBoxes, const QVector< QRectF > &edgeBBoxes, int targetCellsPerChunk=4096)
Definition meshrenderchunkindex.cpp:41
int chunkCount() const
Definition meshrenderchunkindex.h:87
Definition gisrasterlayer.h:40
Definition meshrenderchunkindex.h:46
double aggregate
Definition meshrenderchunkindex.h:54
QRectF bbox
union of member bboxes (superset)
Definition meshrenderchunkindex.h:48
int cellCount() const
Definition meshrenderchunkindex.h:56
QVector< int > edgeIds
member edge indices (input order)
Definition meshrenderchunkindex.h:50
QVector< int > cellIds
member cell indices (input order)
Definition meshrenderchunkindex.h:49
Definition meshrenderchunkindex.h:60
QVector< int > boundary
chunk ids intersecting the rect edge
Definition meshrenderchunkindex.h:62
QVector< int > fullyInside
chunk ids fully contained in the rect
Definition meshrenderchunkindex.h:61