QGIS API Documentation 3.99.0-Master (21b3aa880ba)
Loading...
Searching...
No Matches
qgsmeshspatialindex.h
Go to the documentation of this file.
1/***************************************************************************
2 qgsmeshspatialindex.h
3 ---------------------
4 begin : January 2019
5 copyright : (C) 2019 by Peter Petrik
6 email : zilolv at gmail dot com
7 ***************************************************************************
8 * *
9 * This program is free software; you can redistribute it and/or modify *
10 * it under the terms of the GNU General Public License as published by *
11 * the Free Software Foundation; either version 2 of the License, or *
12 * (at your option) any later version. *
13 * *
14 ***************************************************************************/
15
16#ifndef QGSMESHSPATIALINDEX_H
17#define QGSMESHSPATIALINDEX_H
18
19#include "qgis_sip.h"
20
21class QgsRectangle;
22class QgsPointXY;
23class QgsFeedback;
24struct QgsMesh;
25
26#include "qgis_core.h"
27#include <QList>
28#include <QSharedDataPointer>
29#include "qgsmeshdataprovider.h"
30
31class QgsMeshSpatialIndexData;
32
49class CORE_EXPORT QgsMeshSpatialIndex
50{
51 public:
52
57
69
72
75
78
85 QList<int> intersects( const QgsRectangle &rectangle ) const;
86
94 QList<int> nearestNeighbor( const QgsPointXY &point, int neighbors ) const;
95
102
106 void addFace( int faceIndex, const QgsMesh &mesh );
107
111 void removeFace( int faceIndex, const QgsMesh &mesh );
112
113
114 private:
116 QSharedDataPointer<QgsMeshSpatialIndexData> d;
117};
118
119#endif //QGSMESHSPATIALINDEX_H
Base class for feedback objects to be used for cancellation of something running in a worker thread.
Definition qgsfeedback.h:44
QList< int > intersects(const QgsRectangle &rectangle) const
Returns a list of face ids with a bounding box which intersects the specified rectangle.
QgsMesh::ElementType elementType() const
Returns the type of mesh elements that are indexed.
QgsMeshSpatialIndex()
Constructor for QgsSpatialIndex.
void addFace(int faceIndex, const QgsMesh &mesh)
Adds a face with faceIndex from the mesh in the spatial index.
void removeFace(int faceIndex, const QgsMesh &mesh)
Removes a face with faceIndex from the mesh in the spatial index.
QgsMeshSpatialIndex & operator=(const QgsMeshSpatialIndex &other)
QList< int > nearestNeighbor(const QgsPointXY &point, int neighbors) const
Returns nearest neighbors to a point.
~QgsMeshSpatialIndex()
Destructor finalizes work with spatial index.
Represents a 2D point.
Definition qgspointxy.h:60
A rectangle specified with double values.
#define SIP_SKIP
Definition qgis_sip.h:134
Mesh - vertices, edges and faces.
ElementType
Defines type of mesh elements.