QGIS API Documentation
4.3.0-Master (16eddb2670e)
Toggle main menu visibility
Loading...
Searching...
No Matches
src
3d
terrain
qgsflatterrainsettings.cpp
Go to the documentation of this file.
1
/***************************************************************************
2
qgsflatterrainsettings.cpp
3
--------------------------------------
4
Date : August 2024
5
Copyright : (C) 2024 by Nyall Dawson
6
Email : nyall dot dawson 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
#include "
qgsflatterrainsettings.h
"
17
18
#include "
qgs3drendercontext.h
"
19
#include "
qgs3dutils.h
"
20
#include "
qgsflatterraingenerator.h
"
21
22
#include <QString>
23
24
using namespace
Qt::StringLiterals;
25
26
QgsAbstractTerrainSettings
*
QgsFlatTerrainSettings::create
()
27
{
28
return
new
QgsFlatTerrainSettings
();
29
}
30
31
QgsFlatTerrainSettings
*
QgsFlatTerrainSettings::clone
()
const
32
{
33
return
new
QgsFlatTerrainSettings
( *
this
);
34
}
35
36
QString
QgsFlatTerrainSettings::type
()
const
37
{
38
return
u
"flat"
_s;
39
}
40
41
void
QgsFlatTerrainSettings::readXml
(
const
QDomElement &element,
const
QgsReadWriteContext
&context )
42
{
43
readCommonProperties
( element, context );
44
}
45
46
void
QgsFlatTerrainSettings::writeXml
( QDomElement &element,
const
QgsReadWriteContext
&context )
const
47
{
48
writeCommonProperties
( element, context );
49
}
50
51
bool
QgsFlatTerrainSettings::equals
(
const
QgsAbstractTerrainSettings
*other )
const
52
{
53
const
QgsFlatTerrainSettings
*otherFlatTerrain =
dynamic_cast<
const
QgsFlatTerrainSettings
*
>
( other );
54
if
( !otherFlatTerrain )
55
return
false
;
56
57
return
equalsCommon
( otherFlatTerrain );
58
}
59
60
std::unique_ptr<QgsTerrainGenerator>
QgsFlatTerrainSettings::createTerrainGenerator
(
const
Qgs3DRenderContext
&context )
const
61
{
62
auto
generator = std::make_unique<QgsFlatTerrainGenerator>();
63
generator->setCrs( context.
crs
(), context.
transformContext
() );
64
generator->setExtent( context.
extent
() );
65
return
generator;
66
}
Qgs3DRenderContext
Rendering context for preparation of 3D entities.
Definition
qgs3drendercontext.h:49
Qgs3DRenderContext::crs
QgsCoordinateReferenceSystem crs() const
Returns the coordinate reference system used in the 3D scene.
Definition
qgs3drendercontext.h:64
Qgs3DRenderContext::extent
QgsRectangle extent() const
Returns the 3D scene's 2D extent in the 3D scene's CRS.
Definition
qgs3drendercontext.h:80
Qgs3DRenderContext::transformContext
QgsCoordinateTransformContext transformContext() const
Returns the coordinate transform context, which stores various information regarding which datum tran...
Definition
qgs3drendercontext.h:71
QgsAbstractTerrainSettings
Base class for all terrain settings classes.
Definition
qgsabstractterrainsettings.h:45
QgsAbstractTerrainSettings::writeCommonProperties
void writeCommonProperties(QDomElement &element, const QgsReadWriteContext &context) const
Writes common properties from the base class into an XML element.
Definition
qgsabstractterrainsettings.cpp:30
QgsAbstractTerrainSettings::equalsCommon
bool equalsCommon(const QgsAbstractTerrainSettings *other) const
Returns true if common base class settings from other match this object.
Definition
qgsabstractterrainsettings.cpp:57
QgsAbstractTerrainSettings::readCommonProperties
void readCommonProperties(const QDomElement &element, const QgsReadWriteContext &context)
Reads common properties from the base class from the given DOM element.
Definition
qgsabstractterrainsettings.cpp:39
QgsFlatTerrainSettings
Terrain settings for a simple flat area terrain.
Definition
qgsflatterrainsettings.h:38
QgsFlatTerrainSettings::clone
QgsFlatTerrainSettings * clone() const final
Returns a copy of the terrain settings.
Definition
qgsflatterrainsettings.cpp:31
QgsFlatTerrainSettings::type
QString type() const final
Returns the unique type name for the terrain generator.
Definition
qgsflatterrainsettings.cpp:36
QgsFlatTerrainSettings::writeXml
void writeXml(QDomElement &element, const QgsReadWriteContext &context) const final
Writes settings to a DOM element.
Definition
qgsflatterrainsettings.cpp:46
QgsFlatTerrainSettings::create
static QgsAbstractTerrainSettings * create()
Creates a new instance of a QgsFlatTerrainSettings object.
Definition
qgsflatterrainsettings.cpp:26
QgsFlatTerrainSettings::readXml
void readXml(const QDomElement &element, const QgsReadWriteContext &context) final
Reads settings from a DOM element.
Definition
qgsflatterrainsettings.cpp:41
QgsFlatTerrainSettings::createTerrainGenerator
std::unique_ptr< QgsTerrainGenerator > createTerrainGenerator(const Qgs3DRenderContext &context) const override
Creates a new instance of a terrain generator which matches the terrain settings.
Definition
qgsflatterrainsettings.cpp:60
QgsFlatTerrainSettings::equals
bool equals(const QgsAbstractTerrainSettings *other) const final
Returns true if this settings is exactly equal to another other settings.
Definition
qgsflatterrainsettings.cpp:51
QgsReadWriteContext
A container for the context for various read/write operations on objects.
Definition
qgsreadwritecontext.h:38
qgs3drendercontext.h
qgs3dutils.h
qgsflatterraingenerator.h
qgsflatterrainsettings.h
Generated on
for QGIS API Documentation by
1.17.0