QGIS API Documentation
4.3.0-Master (16eddb2670e)
Toggle main menu visibility
Loading...
Searching...
No Matches
src
3d
terrain
qgsabstractterrainsettings.cpp
Go to the documentation of this file.
1
/***************************************************************************
2
qgsabstractterrainsettings.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 "
qgsabstractterrainsettings.h
"
17
18
#include "
qgis.h
"
19
20
#include <QDomElement>
21
#include <QString>
22
23
using namespace
Qt::StringLiterals;
24
25
QgsAbstractTerrainSettings::~QgsAbstractTerrainSettings
() =
default
;
26
27
void
QgsAbstractTerrainSettings::resolveReferences
(
const
QgsProject
* )
28
{}
29
30
void
QgsAbstractTerrainSettings::writeCommonProperties
( QDomElement &element,
const
QgsReadWriteContext
& )
const
31
{
32
element.setAttribute( u
"exaggeration"
_s, mTerrainVerticalScale );
33
element.setAttribute( u
"texture-size"
_s, mMapTileResolution );
34
element.setAttribute( u
"max-terrain-error"
_s, mMaxTerrainScreenError );
35
element.setAttribute( u
"max-ground-error"
_s, mMaxTerrainGroundError );
36
element.setAttribute( u
"elevation-offset"
_s, mTerrainElevationOffset );
37
}
38
39
void
QgsAbstractTerrainSettings::readCommonProperties
(
const
QDomElement &element,
const
QgsReadWriteContext
& )
40
{
41
mTerrainVerticalScale = element.attribute( u
"exaggeration"
_s, u
"1"
_s ).toDouble();
42
mMapTileResolution = element.attribute( u
"texture-size"
_s, u
"512"
_s ).toInt();
43
mMaxTerrainScreenError = element.attribute( u
"max-terrain-error"
_s, u
"3"
_s ).toDouble();
44
mMaxTerrainGroundError = element.attribute( u
"max-ground-error"
_s, u
"1"
_s ).toDouble();
45
mTerrainElevationOffset = element.attribute( u
"elevation-offset"
_s, u
"0.0"
_s ).toDouble();
46
}
47
48
void
QgsAbstractTerrainSettings::copyCommonProperties
(
const
QgsAbstractTerrainSettings
*source )
49
{
50
mTerrainVerticalScale = source->mTerrainVerticalScale;
51
mMapTileResolution = source->mMapTileResolution;
52
mMaxTerrainScreenError = source->mMaxTerrainScreenError;
53
mMaxTerrainGroundError = source->mMaxTerrainGroundError;
54
mTerrainElevationOffset = source->mTerrainElevationOffset;
55
}
56
57
bool
QgsAbstractTerrainSettings::equalsCommon
(
const
QgsAbstractTerrainSettings
*other )
const
58
{
59
return
mMapTileResolution == other->mMapTileResolution
60
&&
qgsDoubleNear
( mTerrainVerticalScale, other->mTerrainVerticalScale )
61
&&
qgsDoubleNear
( mMaxTerrainScreenError, other->mMaxTerrainScreenError )
62
&&
qgsDoubleNear
( mMaxTerrainGroundError, other->mMaxTerrainGroundError )
63
&&
qgsDoubleNear
( mTerrainElevationOffset, other->mTerrainElevationOffset );
64
}
QgsAbstractTerrainSettings
Base class for all terrain settings classes.
Definition
qgsabstractterrainsettings.h:45
QgsAbstractTerrainSettings::copyCommonProperties
void copyCommonProperties(const QgsAbstractTerrainSettings *source)
Copies common properties from a source object.
Definition
qgsabstractterrainsettings.cpp:48
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::resolveReferences
virtual void resolveReferences(const QgsProject *project)
After reading settings from XML, resolves references to any layers in a project that have been read a...
Definition
qgsabstractterrainsettings.cpp:27
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
QgsAbstractTerrainSettings::~QgsAbstractTerrainSettings
virtual ~QgsAbstractTerrainSettings()
QgsProject
Encapsulates a QGIS project, including sets of map layers and their styles, layouts,...
Definition
qgsproject.h:114
QgsReadWriteContext
A container for the context for various read/write operations on objects.
Definition
qgsreadwritecontext.h:38
qgis.h
qgsDoubleNear
bool qgsDoubleNear(double a, double b, double epsilon=4 *std::numeric_limits< double >::epsilon())
Compare two doubles (but allow some difference).
Definition
qgis.h:7743
qgsabstractterrainsettings.h
Generated on
for QGIS API Documentation by
1.17.0