![]() |
SWMMVis
6.0.0-alpha.4
Qt6/C++ GIS-based graphical user interface for the SWMMVis engine (6.0.0-alpha.4)
|
y-banded odd-even point-in-rings index. More...
#include <pslgprep.h>
Public Member Functions | |
| void | build (const QVector< QPolygonF > &domains, const QVector< QVector< QPointF > > &holes={}, int nBands=1024) |
| bool | contains (const QPointF &p) const |
| QRectF | boundingBox () const |
| bool | isEmpty () const |
y-banded odd-even point-in-rings index.
All rings share one crossing parity, so building with domains only answers "inside any domain ring", and building with domains + holes answers "inside a domain minus its (disjoint) hole rings" — the semantics the worker's terrain filter has always used. Queries visit only the edges whose y-span overlaps the query's band: ~O(edges / nBands) per point instead of O(total ring vertices).
| QRectF mesh::pslg::PointInRingsIndex::boundingBox | ( | ) | const |
| void mesh::pslg::PointInRingsIndex::build | ( | const QVector< QPolygonF > & | domains, |
| const QVector< QVector< QPointF > > & | holes = {}, |
||
| int | nBands = 1024 |
||
| ) |
| bool mesh::pslg::PointInRingsIndex::contains | ( | const QPointF & | p | ) | const |
|
inline |