QGIS API Documentation
3.99.0-Master (26c88405ac0)
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
#include "
qgsphongmaterialsettings.h
"
25
26
#include <QObject>
27
28
class
QgsVectorLayer
;
29
38
class
_3D_EXPORT
QgsVectorLayer3DRendererMetadata
:
public
Qgs3DRendererAbstractMetadata
39
{
40
public
:
41
QgsVectorLayer3DRendererMetadata
();
42
44
QgsAbstract3DRenderer
*
createRenderer
( QDomElement &elem,
const
QgsReadWriteContext
&context )
override
SIP_FACTORY
;
45
};
46
47
54
class
_3D_EXPORT
QgsVectorLayer3DRenderer
:
public
QgsAbstractVectorLayer3DRenderer
55
{
56
public
:
58
explicit
QgsVectorLayer3DRenderer
(
QgsAbstract3DSymbol
*s
SIP_TRANSFER
=
nullptr
);
59
61
void
setSymbol
(
QgsAbstract3DSymbol
*
symbol
SIP_TRANSFER
);
63
const
QgsAbstract3DSymbol
*
symbol
()
const
;
64
65
QString
type
()
const override
{
return
"vector"
; }
66
QgsVectorLayer3DRenderer
*clone() const override
SIP_FACTORY
;
67
Qt3DCore
::QEntity *createEntity(
Qgs3DMapSettings
*map ) const override
SIP_SKIP
;
68
69
void
writeXml( QDomElement &elem, const
QgsReadWriteContext
&context ) const override;
70
void
readXml( const QDomElement &elem, const
QgsReadWriteContext
&context ) override;
71
72
private:
73
std::unique_ptr<
QgsAbstract3DSymbol
> mSymbol;
74
75
private:
76
#ifdef SIP_RUN
77
QgsVectorLayer3DRenderer
(
const
QgsVectorLayer3DRenderer
& );
78
QgsVectorLayer3DRenderer
&operator=(
const
QgsVectorLayer3DRenderer
& );
79
#endif
80
};
81
82
83
#endif
// QGSVECTORLAYER3DRENDERER_H
Qgs3DMapSettings
Definition of the world.
Definition
qgs3dmapsettings.h:56
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:48
QgsAbstract3DSymbol
Abstract base class for 3D symbols that are used by VectorLayer3DRenderer objects.
Definition
qgsabstract3dsymbol.h:45
QgsAbstractVectorLayer3DRenderer::QgsAbstractVectorLayer3DRenderer
QgsAbstractVectorLayer3DRenderer()
QgsReadWriteContext
A container for the context for various read/write operations on objects.
Definition
qgsreadwritecontext.h:34
QgsVectorLayer3DRendererMetadata::QgsVectorLayer3DRendererMetadata
QgsVectorLayer3DRendererMetadata()
Definition
qgsvectorlayer3drenderer.cpp:25
QgsVectorLayer3DRenderer
3D renderer that renders all features of a vector layer with the same 3D symbol.
Definition
qgsvectorlayer3drenderer.h:55
QgsVectorLayer3DRenderer::setSymbol
void setSymbol(QgsAbstract3DSymbol *symbol)
Sets 3D symbol associated with the renderer. Takes ownership of the symbol.
Definition
qgsvectorlayer3drenderer.cpp:53
QgsVectorLayer3DRenderer::type
QString type() const override
Returns unique identifier of the renderer class (used to identify subclass).
Definition
qgsvectorlayer3drenderer.h:65
QgsVectorLayer3DRenderer::symbol
const QgsAbstract3DSymbol * symbol() const
Returns 3D symbol associated with the renderer.
Definition
qgsvectorlayer3drenderer.cpp:58
QgsVectorLayer3DRenderer::QgsVectorLayer3DRenderer
QgsVectorLayer3DRenderer(QgsAbstract3DSymbol *s=nullptr)
Takes ownership of the symbol object.
Definition
qgsvectorlayer3drenderer.cpp:41
QgsVectorLayer
Represents a vector layer which manages a vector based dataset.
Definition
qgsvectorlayer.h:406
Qt3DCore
Definition
qgsabstract3drenderer.h:31
qgis_sip.h
SIP_SKIP
#define SIP_SKIP
Definition
qgis_sip.h:134
SIP_TRANSFER
#define SIP_TRANSFER
Definition
qgis_sip.h:36
SIP_FACTORY
#define SIP_FACTORY
Definition
qgis_sip.h:84
qgs3drendererregistry.h
qgsabstract3dsymbol.h
qgsabstractvectorlayer3drenderer.h
qgsphongmaterialsettings.h
Generated on
for QGIS API Documentation by
1.15.0