A spatial index for QgsMeshFace or QgsMeshEdge objects.
More...
#include <qgsmeshspatialindex.h>
A spatial index for QgsMeshFace or QgsMeshEdge objects.
QgsMeshSpatialIndex objects are implicitly shared and can be inexpensively copied.
- Note
- While the underlying libspatialindex is not thread safe on some platforms, the QgsMeshSpatialIndex class implements its own locks and accordingly, a single QgsMeshSpatialIndex object can safely be used across multiple threads
- See also
- QgsSpatialIndex, which is for vector features
- Since
- QGIS 3.6
Definition at line 49 of file qgsmeshspatialindex.h.
◆ QgsMeshSpatialIndex() [1/3]
QgsMeshSpatialIndex::QgsMeshSpatialIndex |
( |
| ) |
|
◆ QgsMeshSpatialIndex() [2/3]
Constructor - creates R-tree and bulk loads faces or edges from the specified mesh.
Not implemented to construct R-tree for vertices Since QGIS 3.14 possibility to create R-tree for edges
The optional feedback object can be used to allow cancellation of bulk face loading. Ownership of feedback is not transferred, and callers must take care that the lifetime of feedback exceeds that of the spatial index construction.
Definition at line 350 of file qgsmeshspatialindex.cpp.
◆ QgsMeshSpatialIndex() [3/3]
◆ ~QgsMeshSpatialIndex()
QgsMeshSpatialIndex::~QgsMeshSpatialIndex |
( |
| ) |
|
|
default |
Destructor finalizes work with spatial index.
◆ addFace()
void QgsMeshSpatialIndex::addFace |
( |
int |
faceIndex, |
|
|
const QgsMesh & |
mesh |
|
) |
| |
◆ elementType()
◆ intersects()
QList< int > QgsMeshSpatialIndex::intersects |
( |
const QgsRectangle & |
rectangle | ) |
const |
Returns a list of face ids with a bounding box which intersects the specified rectangle.
- Note
- The intersection test is performed based on the face bounding boxes only, so it is necessary to manually test the returned faces for exact geometry intersection when required.
Definition at line 370 of file qgsmeshspatialindex.cpp.
◆ nearestNeighbor()
QList< int > QgsMeshSpatialIndex::nearestNeighbor |
( |
const QgsPointXY & |
point, |
|
|
int |
neighbors |
|
) |
| const |
Returns nearest neighbors to a point.
The number of neighbours returned is specified by the neighbours argument.
- Note
- The nearest neighbour test is performed based on the face bounding boxes only, so this method is not guaranteed to return the actual closest neighbours.
Definition at line 383 of file qgsmeshspatialindex.cpp.
◆ operator=()
◆ removeFace()
void QgsMeshSpatialIndex::removeFace |
( |
int |
faceIndex, |
|
|
const QgsMesh & |
mesh |
|
) |
| |
The documentation for this class was generated from the following files: