QGIS API Documentation
3.12.1-București (121cc00ff0)
src
3d
qgsvectorlayer3drenderer.h
Go to the documentation of this file.
1
/***************************************************************************
2
qgsvectorlayer3drenderer.h
3
--------------------------------------
4
Date : July 2017
5
Copyright : (C) 2017 by Martin Dobias
6
Email : wonder dot sk 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 QGSVECTORLAYER3DRENDERER_H
17
#define QGSVECTORLAYER3DRENDERER_H
18
19
#include "qgis_3d.h"
20
#include "
qgis_sip.h
"
21
22
#include "
qgs3drendererregistry.h
"
23
#include "
qgsabstractvectorlayer3drenderer.h
"
24
#include "
qgsabstract3dsymbol.h
"
25
26
#include "
qgsphongmaterialsettings.h
"
27
28
#include "
qgsmaplayerref.h
"
29
30
#include <QObject>
31
32
class
QgsVectorLayer
;
33
34
44
class
_3D_EXPORT
QgsVectorLayer3DRendererMetadata
:
public
Qgs3DRendererAbstractMetadata
45
{
46
public
:
47
QgsVectorLayer3DRendererMetadata
();
48
50
QgsAbstract3DRenderer
*
createRenderer
( QDomElement &elem,
const
QgsReadWriteContext
&context )
override
SIP_FACTORY
;
51
};
52
53
60
class
_3D_EXPORT
QgsVectorLayer3DRenderer
:
public
QgsAbstractVectorLayer3DRenderer
61
{
62
public
:
64
explicit
QgsVectorLayer3DRenderer
(
QgsAbstract3DSymbol
*s
SIP_TRANSFER
=
nullptr
);
65
67
void
setSymbol(
QgsAbstract3DSymbol
*symbol
SIP_TRANSFER
);
69
const
QgsAbstract3DSymbol
*symbol()
const
;
70
71
QString
type
()
const override
{
return
"vector"
; }
72
QgsVectorLayer3DRenderer
*
clone
()
const
override
SIP_FACTORY
;
73
Qt3DCore::QEntity *
createEntity
(
const
Qgs3DMapSettings
&map )
const
override
SIP_SKIP
;
74
75
void
writeXml
( QDomElement &elem,
const
QgsReadWriteContext
&context )
const override
;
76
void
readXml
(
const
QDomElement &elem,
const
QgsReadWriteContext
&context )
override
;
77
78
private
:
79
std::unique_ptr<QgsAbstract3DSymbol> mSymbol;
80
81
private
:
82
#ifdef SIP_RUN
83
QgsVectorLayer3DRenderer
(
const
QgsVectorLayer3DRenderer
& );
84
QgsVectorLayer3DRenderer
&operator=(
const
QgsVectorLayer3DRenderer
& );
85
#endif
86
};
87
88
89
#endif // QGSVECTORLAYER3DRENDERER_H
QgsReadWriteContext
The class is used as a container of context for various read/write operations on other objects...
Definition:
qgsreadwritecontext.h:34
QgsAbstract3DRenderer
Base class for all renderers that may to participate in 3D view.
Definition:
qgsabstract3drenderer.h:48
QgsAbstract3DRenderer::createEntity
virtual Qt3DCore::QEntity * createEntity(const Qgs3DMapSettings &map) const =0
Returns a 3D entity that will be used to show renderer's data in 3D scene.
qgsabstractvectorlayer3drenderer.h
qgs3drendererregistry.h
Qgs3DMapSettings
3 Definition of the world
Definition:
qgs3dmapsettings.h:51
QgsAbstract3DSymbol
3 Abstract base class for 3D symbols that are used by VectorLayer3DRenderer objects.
Definition:
qgsabstract3dsymbol.h:41
QgsAbstract3DRenderer::writeXml
virtual void writeXml(QDomElement &elem, const QgsReadWriteContext &context) const =0
Writes renderer's properties to given XML element.
SIP_SKIP
#define SIP_SKIP
Definition:
qgis_sip.h:126
qgis_sip.h
QgsVectorLayer3DRenderer::type
QString type() const override
Returns unique identifier of the renderer class (used to identify subclass)
Definition:
qgsvectorlayer3drenderer.h:71
SIP_TRANSFER
#define SIP_TRANSFER
Definition:
qgis_sip.h:36
qgsphongmaterialsettings.h
qgsabstract3dsymbol.h
qgsmaplayerref.h
SIP_FACTORY
#define SIP_FACTORY
Definition:
qgis_sip.h:76
QgsVectorLayer3DRenderer
3D renderer that renders all features of a vector layer with the same 3D symbol.
Definition:
qgsvectorlayer3drenderer.h:60
QgsAbstract3DRenderer::readXml
virtual void readXml(const QDomElement &elem, const QgsReadWriteContext &context)=0
Reads renderer's properties from given XML element.
QgsAbstractVectorLayer3DRenderer
3 Base class for 3D renderers that are based on vector layers.
Definition:
qgsabstractvectorlayer3drenderer.h:77
QgsVectorLayer3DRendererMetadata
Metadata for vector layer 3D renderer to allow creation of its instances from XML.
Definition:
qgsvectorlayer3drenderer.h:44
QgsAbstract3DRenderer::clone
virtual QgsAbstract3DRenderer * clone() const =0
Returns a cloned instance.
Qgs3DRendererAbstractMetadata
Base metadata class for 3D renderers.
Definition:
qgs3drendererregistry.h:34
QgsVectorLayer
Represents a vector layer which manages a vector based data sets.
Definition:
qgsvectorlayer.h:386
Qgs3DRendererAbstractMetadata::createRenderer
virtual QgsAbstract3DRenderer * createRenderer(QDomElement &elem, const QgsReadWriteContext &context)=0
Returns new instance of the renderer given the DOM element.
Generated on Sat Mar 21 2020 00:00:36 for QGIS API Documentation by
1.8.13