QGIS API Documentation
3.20.0-Odense (decaadbb31)
|
A renderer for 2d visualisation of point clouds which shows the dataset's extents using a fill symbol. More...
#include <qgspointcloudextentrenderer.h>
Public Member Functions | |
QgsPointCloudExtentRenderer (QgsFillSymbol *symbol=nullptr) | |
Constructor for QgsPointCloudExtentRenderer. More... | |
~QgsPointCloudExtentRenderer () override | |
QgsPointCloudRenderer * | clone () const override |
Create a deep copy of this renderer. More... | |
QList< QgsLayerTreeModelLegendNode * > | createLegendNodes (QgsLayerTreeLayer *nodeLayer) override |
Creates a set of legend nodes representing the renderer. More... | |
QgsFillSymbol * | fillSymbol () const |
Returns the symbol used to render the cloud's extent. More... | |
void | renderBlock (const QgsPointCloudBlock *block, QgsPointCloudRenderContext &context) override |
Renders a block of point cloud data using the specified render context. More... | |
void | renderExtent (const QgsGeometry &extent, QgsPointCloudRenderContext &context) |
Renders a polygon extent geometry to the specified render context. More... | |
QDomElement | save (QDomDocument &doc, const QgsReadWriteContext &context) const override |
Saves the renderer configuration to an XML element. More... | |
void | setFillSymbol (QgsFillSymbol *symbol) |
Sets the symbol used to render the cloud's extent. More... | |
void | startRender (QgsPointCloudRenderContext &context) override |
Must be called when a new render cycle is started. More... | |
void | stopRender (QgsPointCloudRenderContext &context) override |
Must be called when a render cycle has finished, to allow the renderer to clean up. More... | |
QString | type () const override |
Returns the identifier of the renderer type. More... | |
Public Member Functions inherited from QgsPointCloudRenderer | |
QgsPointCloudRenderer ()=default | |
Constructor for QgsPointCloudRenderer. More... | |
QgsPointCloudRenderer (const QgsPointCloudRenderer &other)=delete | |
QgsPointCloudRenderer cannot be copied – use clone() instead. More... | |
virtual | ~QgsPointCloudRenderer ()=default |
virtual void | checkLegendItem (const QString &key, bool state=true) |
Called when the check state of the legend item with the specified key is changed. More... | |
QVector< QVariantMap > | identify (QgsPointCloudLayer *layer, const QgsRenderContext &context, const QgsGeometry &geometry, double toleranceForPointIdentification=0) |
Returns the list of visible points of the point cloud layer layer and an extent defined by a geometry in the 2D plane geometry. More... | |
virtual bool | legendItemChecked (const QString &key) |
Returns true if the legend item with the specified key is checked. More... | |
virtual QStringList | legendRuleKeys () const |
Returns a list of all rule keys for legend nodes created by the renderer. More... | |
double | maximumScreenError () const |
Returns the maximum screen error allowed when rendering the point cloud. More... | |
QgsUnitTypes::RenderUnit | maximumScreenErrorUnit () const |
Returns the unit for the maximum screen error allowed when rendering the point cloud. More... | |
QgsPointCloudRenderer & | operator= (const QgsPointCloudRenderer &other)=delete |
QgsPointCloudRenderer cannot be copied – use clone() instead. More... | |
double | pointSize () const |
Returns the point size. More... | |
const QgsMapUnitScale & | pointSizeMapUnitScale () const |
Returns the map unit scale used for the point size. More... | |
QgsUnitTypes::RenderUnit | pointSizeUnit () const |
Returns the units used for the point size. More... | |
PointSymbol | pointSymbol () const |
Returns the symbol used by the renderer for drawing points. More... | |
void | setMaximumScreenError (double error) |
Sets the maximum screen error allowed when rendering the point cloud. More... | |
void | setMaximumScreenErrorUnit (QgsUnitTypes::RenderUnit unit) |
Sets the unit for the maximum screen error allowed when rendering the point cloud. More... | |
void | setPointSize (double size) |
Sets the point size. More... | |
void | setPointSizeMapUnitScale (const QgsMapUnitScale &scale) |
Sets the map unit scale used for the point size. More... | |
void | setPointSizeUnit (const QgsUnitTypes::RenderUnit units) |
Sets the units used for the point size. More... | |
void | setPointSymbol (PointSymbol symbol) |
Sets the symbol used by the renderer for drawing points. More... | |
virtual QSet< QString > | usedAttributes (const QgsPointCloudRenderContext &context) const |
Returns a list of attributes required by this renderer. More... | |
virtual bool | willRenderPoint (const QMap< QString, QVariant > &pointAttributes) |
Checks whether the point holding pointAttributes attributes will be rendered By default if not overridden in the subclass renderer will return true ( the renderer is responsible for the filtering behavior ) More... | |
Static Public Member Functions | |
static QgsPointCloudRenderer * | create (QDomElement &element, const QgsReadWriteContext &context) |
Creates an extent renderer from an XML element. More... | |
static QgsFillSymbol * | defaultFillSymbol () |
Returns a new instance of the default fill symbol to use for showing point cloud extents. More... | |
Static Public Member Functions inherited from QgsPointCloudRenderer | |
static QgsPointCloudRenderer * | load (QDomElement &element, const QgsReadWriteContext &context) |
Creates a renderer from an XML element. More... | |
Additional Inherited Members | |
Public Types inherited from QgsPointCloudRenderer | |
enum | PointSymbol { Square , Circle } |
Rendering symbols for points. More... | |
Protected Member Functions inherited from QgsPointCloudRenderer | |
void | copyCommonProperties (QgsPointCloudRenderer *destination) const |
Copies common point cloud properties (such as point size and screen error) to the destination renderer. More... | |
void | drawPoint (double x, double y, const QColor &color, QgsPointCloudRenderContext &context) const |
Draws a point using a color at the specified x and y (in map coordinates). More... | |
void | restoreCommonProperties (const QDomElement &element, const QgsReadWriteContext &context) |
Restores common renderer properties (such as point size and screen error) from the specified DOM element. More... | |
void | saveCommonProperties (QDomElement &element, const QgsReadWriteContext &context) const |
Saves common renderer properties (such as point size and screen error) to the specified DOM element. More... | |
Static Protected Member Functions inherited from QgsPointCloudRenderer | |
static void | pointXY (QgsPointCloudRenderContext &context, const char *ptr, int i, double &x, double &y) |
Retrieves the x and y coordinate for the point at index i. More... | |
static double | pointZ (QgsPointCloudRenderContext &context, const char *ptr, int i) |
Retrieves the z value for the point at index i. More... | |
A renderer for 2d visualisation of point clouds which shows the dataset's extents using a fill symbol.
Definition at line 33 of file qgspointcloudextentrenderer.h.
QgsPointCloudExtentRenderer::QgsPointCloudExtentRenderer | ( | QgsFillSymbol * | symbol = nullptr | ) |
Constructor for QgsPointCloudExtentRenderer.
Optionally the symbol to use for showing the extent can be specified. If specified, ownership is transferred to the renderer. If no symbol is specified a default one will be created instead.
Definition at line 29 of file qgspointcloudextentrenderer.cpp.
|
overridedefault |
|
overridevirtual |
Create a deep copy of this renderer.
Should be implemented by all subclasses and generate a proper subclass.
Implements QgsPointCloudRenderer.
Definition at line 42 of file qgspointcloudextentrenderer.cpp.
|
static |
Creates an extent renderer from an XML element.
Definition at line 54 of file qgspointcloudextentrenderer.cpp.
|
overridevirtual |
Creates a set of legend nodes representing the renderer.
Reimplemented from QgsPointCloudRenderer.
Definition at line 164 of file qgspointcloudextentrenderer.cpp.
|
static |
Returns a new instance of the default fill symbol to use for showing point cloud extents.
Definition at line 119 of file qgspointcloudextentrenderer.cpp.
QgsFillSymbol * QgsPointCloudExtentRenderer::fillSymbol | ( | ) | const |
Returns the symbol used to render the cloud's extent.
Definition at line 129 of file qgspointcloudextentrenderer.cpp.
|
overridevirtual |
Renders a block of point cloud data using the specified render context.
Implements QgsPointCloudRenderer.
Definition at line 49 of file qgspointcloudextentrenderer.cpp.
void QgsPointCloudExtentRenderer::renderExtent | ( | const QgsGeometry & | extent, |
QgsPointCloudRenderContext & | context | ||
) |
Renders a polygon extent geometry to the specified render context.
Definition at line 68 of file qgspointcloudextentrenderer.cpp.
|
overridevirtual |
Saves the renderer configuration to an XML element.
Implements QgsPointCloudRenderer.
Definition at line 139 of file qgspointcloudextentrenderer.cpp.
void QgsPointCloudExtentRenderer::setFillSymbol | ( | QgsFillSymbol * | symbol | ) |
Sets the symbol used to render the cloud's extent.
Ownership of symbol is transferred to the renderer.
Definition at line 134 of file qgspointcloudextentrenderer.cpp.
|
overridevirtual |
Must be called when a new render cycle is started.
A call to startRender() must always be followed by a corresponding call to stopRender() after all features have been rendered.
Reimplemented from QgsPointCloudRenderer.
Definition at line 152 of file qgspointcloudextentrenderer.cpp.
|
overridevirtual |
Must be called when a render cycle has finished, to allow the renderer to clean up.
Calls to stopRender() must always be preceded by a call to startRender().
Reimplemented from QgsPointCloudRenderer.
Definition at line 158 of file qgspointcloudextentrenderer.cpp.
|
overridevirtual |
Returns the identifier of the renderer type.
Implements QgsPointCloudRenderer.
Definition at line 37 of file qgspointcloudextentrenderer.cpp.