mirror of
https://github.com/qgis/QGIS.git
synced 2025-03-03 00:02:25 -05:00
* MDAL 0.5.90 : support for custom Logger and 1D meshes * [FEATURE] [MESH] Support rendering of 1D meshes, see https://github.com/qgis/QGIS-Enhancement-Proposals/issues/164 1D mesh consist of edges (edge is straight line segment with 2 vertices) and the data that is defined on either vertices or edges. Such data can be loaded by MDAL and rendered as mesh layer in QGIS.
101 lines
3.3 KiB
Plaintext
101 lines
3.3 KiB
Plaintext
/************************************************************************
|
|
* This file has been generated automatically from *
|
|
* *
|
|
* src/core/mesh/qgsmeshspatialindex.h *
|
|
* *
|
|
* Do not edit manually ! Edit header and run scripts/sipify.pl again *
|
|
************************************************************************/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class QgsMeshSpatialIndex
|
|
{
|
|
%Docstring
|
|
|
|
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
|
|
|
|
.. seealso:: :py:class:`QgsSpatialIndex`
|
|
|
|
|
|
.. versionadded:: 3.6
|
|
%End
|
|
|
|
%TypeHeaderCode
|
|
#include "qgsmeshspatialindex.h"
|
|
%End
|
|
public:
|
|
|
|
QgsMeshSpatialIndex();
|
|
%Docstring
|
|
Constructor for :py:class:`QgsSpatialIndex`. Creates an empty R-tree index.
|
|
%End
|
|
|
|
explicit QgsMeshSpatialIndex( const QgsMesh &mesh, QgsFeedback *feedback = 0, QgsMesh::ElementType elementType = QgsMesh::ElementType::Face );
|
|
%Docstring
|
|
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.
|
|
%End
|
|
|
|
QgsMeshSpatialIndex( const QgsMeshSpatialIndex &other );
|
|
%Docstring
|
|
Copy constructor
|
|
%End
|
|
|
|
~QgsMeshSpatialIndex();
|
|
|
|
|
|
QList<int> intersects( const QgsRectangle &rectangle ) const;
|
|
%Docstring
|
|
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.
|
|
%End
|
|
|
|
QList<int> nearestNeighbor( const QgsPointXY &point, int neighbors ) const;
|
|
%Docstring
|
|
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.
|
|
%End
|
|
|
|
QgsMesh::ElementType elementType() const;
|
|
%Docstring
|
|
Returns the type of mesh elements that are indexed
|
|
|
|
.. versionadded:: 3.14
|
|
%End
|
|
|
|
};
|
|
|
|
/************************************************************************
|
|
* This file has been generated automatically from *
|
|
* *
|
|
* src/core/mesh/qgsmeshspatialindex.h *
|
|
* *
|
|
* Do not edit manually ! Edit header and run scripts/sipify.pl again *
|
|
************************************************************************/
|