QGIS API Documentation 3.99.0-Master (26c88405ac0)
Loading...
Searching...
No Matches
qgs25drenderer.h
Go to the documentation of this file.
1/***************************************************************************
2 qgs25drenderer.h - Qgs25DRenderer
3 ---------------------------------
4
5 begin : 14.1.2016
6 copyright : (C) 2016 by Matthias Kuhn
8 ***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16#ifndef QGS25DRENDERER_H
17#define QGS25DRENDERER_H
18
19#include "qgis_core.h"
20#include "qgsrenderer.h"
21
24
30class CORE_EXPORT Qgs25DRenderer : public QgsFeatureRenderer
31{
32 public:
34
41 static QgsFeatureRenderer *create( QDomElement &element, const QgsReadWriteContext &context ) SIP_FACTORY;
42 QDomElement save( QDomDocument &doc, const QgsReadWriteContext &context ) override;
43 Qgis::FeatureRendererFlags flags() const override;
44 void startRender( QgsRenderContext &context, const QgsFields &fields ) override;
45 void stopRender( QgsRenderContext &context ) override;
46
47 QSet<QString> usedAttributes( const QgsRenderContext &context ) const override;
48 QgsFeatureRenderer *clone() const override SIP_FACTORY;
49
50 QgsSymbol *symbolForFeature( const QgsFeature &feature, QgsRenderContext &context ) const override;
51 QgsSymbolList symbols( QgsRenderContext &context ) const override;
52 bool accept( QgsStyleEntityVisitorInterface *visitor ) const override;
53
57 QColor roofColor() const;
58
62 void setRoofColor( const QColor &roofColor ) const;
63
67 QColor wallColor() const;
68
72 void setWallColor( const QColor &wallColor ) const;
73
77 void setWallShadingEnabled( bool enabled ) const;
78
82 bool wallShadingEnabled() const;
83
87 QColor shadowColor() const;
88
92 void setShadowColor( const QColor &shadowColor ) const;
93
97 double shadowSpread() const;
98
102 void setShadowSpread( double shadowSpread ) const;
103
110
114 bool shadowEnabled() const;
115
119 void setShadowEnabled( bool value ) const;
120
121 private:
122
123 QgsFillSymbolLayer *roofLayer() const;
124 QgsFillSymbolLayer *wallLayer() const;
125 QgsOuterGlowEffect *glowEffect() const;
126
127 std::unique_ptr<QgsSymbol> mSymbol;
128};
129
130#endif // QGS25DRENDERER_H
QFlags< FeatureRendererFlag > FeatureRendererFlags
Flags controlling behavior of vector feature renderers.
Definition qgis.h:838
void setShadowSpread(double shadowSpread) const
Set the shadow's spread distance in map units.
QColor roofColor() const
Gets the roof color.
void setWallShadingEnabled(bool enabled) const
Set wall shading enabled.
QColor shadowColor() const
Gets the shadow's color.
static Qgs25DRenderer * convertFromRenderer(QgsFeatureRenderer *renderer)
Try to convert from an existing renderer.
double shadowSpread() const
Gets the shadow's spread distance in map units.
static QgsFeatureRenderer * create(QDomElement &element, const QgsReadWriteContext &context)
Create a new 2.5D renderer from XML.
void setShadowColor(const QColor &shadowColor) const
Set the shadow's color.
bool wallShadingEnabled() const
Gets wall shading enabled.
bool shadowEnabled() const
Is the shadow enabled.
void setRoofColor(const QColor &roofColor) const
Set the roof color.
void setWallColor(const QColor &wallColor) const
Set the wall color.
QColor wallColor() const
Gets the wall color.
void setShadowEnabled(bool value) const
Enable or disable the shadow.
QgsFeatureRenderer(const QString &type)
virtual QgsSymbolList symbols(QgsRenderContext &context) const
Returns list of symbols used by the renderer.
virtual Qgis::FeatureRendererFlags flags() const
Returns flags associated with the renderer.
virtual void stopRender(QgsRenderContext &context)
Must be called when a render cycle has finished, to allow the renderer to clean up.
virtual QDomElement save(QDomDocument &doc, const QgsReadWriteContext &context)
Stores renderer properties to an XML element.
virtual QSet< QString > usedAttributes(const QgsRenderContext &context) const =0
Returns a list of attributes required by this renderer.
virtual QgsSymbol * symbolForFeature(const QgsFeature &feature, QgsRenderContext &context) const =0
To be overridden.
virtual bool accept(QgsStyleEntityVisitorInterface *visitor) const
Accepts the specified symbology visitor, causing it to visit all symbols associated with the renderer...
virtual void startRender(QgsRenderContext &context, const QgsFields &fields)
Must be called when a new render cycle is started.
virtual QgsFeatureRenderer * clone() const =0
Create a deep copy of this renderer.
The feature class encapsulates a single feature including its unique ID, geometry and a list of field...
Definition qgsfeature.h:58
Container of fields for a vector layer.
Definition qgsfields.h:46
Abstract base class for fill symbol layers.
A paint effect which draws a glow outside of a picture.
A container for the context for various read/write operations on objects.
Contains information about the context of a rendering operation.
An interface for classes which can visit style entity (e.g.
Abstract base class for all rendered symbols.
Definition qgssymbol.h:231
#define SIP_FACTORY
Definition qgis_sip.h:84
QList< QgsSymbol * > QgsSymbolList
Definition qgsrenderer.h:49