QGIS API Documentation
4.1.0-Master (0cdd3ae6384)
Loading...
Searching...
No Matches
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
#include "
qgs3drendererregistry.h
"
22
#include "
qgsabstract3dsymbol.h
"
23
#include "
qgsabstractvectorlayer3drenderer.h
"
24
25
#include <QObject>
26
27
class
QgsVectorLayer
;
28
37
class
_3D_EXPORT
QgsVectorLayer3DRendererMetadata
:
public
Qgs3DRendererAbstractMetadata
38
{
39
public
:
40
QgsVectorLayer3DRendererMetadata
();
41
43
QgsAbstract3DRenderer
*
createRenderer
( QDomElement &elem,
const
QgsReadWriteContext
&context )
override
SIP_FACTORY
;
44
};
45
46
53
class
_3D_EXPORT
QgsVectorLayer3DRenderer
:
public
QgsAbstractVectorLayer3DRenderer
54
{
55
public
:
57
explicit
QgsVectorLayer3DRenderer
(
QgsAbstract3DSymbol
*s
SIP_TRANSFER
=
nullptr
);
58
60
void
setSymbol
(
QgsAbstract3DSymbol
*
symbol
SIP_TRANSFER
);
62
const
QgsAbstract3DSymbol
*
symbol
()
const
;
63
64
QString
type
()
const override
{
return
"vector"
; }
65
QgsVectorLayer3DRenderer
*clone() const override
SIP_FACTORY
;
66
Qt3DCore
::QEntity *createEntity(
Qgs3DMapSettings
*map ) const override
SIP_SKIP
;
67
68
void
writeXml( QDomElement &elem, const
QgsReadWriteContext
&context ) const override;
69
void
readXml( const QDomElement &elem, const
QgsReadWriteContext
&context ) override;
70
78
static std::unique_ptr<
QgsVectorLayer3DRenderer
> convertFromRenderer( const
QgsAbstractVectorLayer3DRenderer
*renderer,
QgsVectorLayer
*layer =
nullptr
);
79
80
private:
81
std::unique_ptr<
QgsAbstract3DSymbol
> mSymbol;
82
83
private:
84
#ifdef SIP_RUN
85
QgsVectorLayer3DRenderer
(
const
QgsVectorLayer3DRenderer
& );
86
QgsVectorLayer3DRenderer
&operator=(
const
QgsVectorLayer3DRenderer
& );
87
#endif
88
};
89
90
91
#endif
// QGSVECTORLAYER3DRENDERER_H
Qgs3DMapSettings
Definition of the world.
Definition
qgs3dmapsettings.h:59
Qgs3DRendererAbstractMetadata::createRenderer
virtual QgsAbstract3DRenderer * createRenderer(QDomElement &elem, const QgsReadWriteContext &context)=0
Returns new instance of the renderer given the DOM element.
Qgs3DRendererAbstractMetadata::Qgs3DRendererAbstractMetadata
Qgs3DRendererAbstractMetadata(const QString &type)
Constructor of the base class.
Definition
qgs3drendererregistry.cpp:18
QgsAbstract3DRenderer
Base class for all renderers that participate in 3D views.
Definition
qgsabstract3drenderer.h:50
QgsAbstract3DSymbol
Abstract base class for 3D symbols that are used by VectorLayer3DRenderer objects.
Definition
qgsabstract3dsymbol.h:48
QgsAbstractVectorLayer3DRenderer
Base class for 3D renderers that are based on vector layers.
Definition
qgsabstractvectorlayer3drenderer.h:121
QgsAbstractVectorLayer3DRenderer::QgsAbstractVectorLayer3DRenderer
QgsAbstractVectorLayer3DRenderer()
QgsReadWriteContext
A container for the context for various read/write operations on objects.
Definition
qgsreadwritecontext.h:38
QgsVectorLayer3DRendererMetadata::QgsVectorLayer3DRendererMetadata
QgsVectorLayer3DRendererMetadata()
Definition
qgsvectorlayer3drenderer.cpp:30
QgsVectorLayer3DRenderer
3D renderer that renders all features of a vector layer with the same 3D symbol.
Definition
qgsvectorlayer3drenderer.h:54
QgsVectorLayer3DRenderer::setSymbol
void setSymbol(QgsAbstract3DSymbol *symbol)
Sets 3D symbol associated with the renderer. Takes ownership of the symbol.
Definition
qgsvectorlayer3drenderer.cpp:56
QgsVectorLayer3DRenderer::type
QString type() const override
Returns unique identifier of the renderer class (used to identify subclass).
Definition
qgsvectorlayer3drenderer.h:64
QgsVectorLayer3DRenderer::symbol
const QgsAbstract3DSymbol * symbol() const
Returns 3D symbol associated with the renderer.
Definition
qgsvectorlayer3drenderer.cpp:61
QgsVectorLayer3DRenderer::QgsVectorLayer3DRenderer
QgsVectorLayer3DRenderer(QgsAbstract3DSymbol *s=nullptr)
Takes ownership of the symbol object.
Definition
qgsvectorlayer3drenderer.cpp:45
QgsVectorLayer
Represents a vector layer which manages a vector based dataset.
Definition
qgsvectorlayer.h:413
Qt3DCore
Definition
qgsabstract3drenderer.h:33
qgis_sip.h
SIP_SKIP
#define SIP_SKIP
Definition
qgis_sip.h:133
SIP_TRANSFER
#define SIP_TRANSFER
Definition
qgis_sip.h:35
SIP_FACTORY
#define SIP_FACTORY
Definition
qgis_sip.h:83
qgs3drendererregistry.h
qgsabstract3dsymbol.h
qgsabstractvectorlayer3drenderer.h
Generated on
for QGIS API Documentation by
1.15.0