23using namespace Qt::StringLiterals;
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 );
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();
50 mTerrainVerticalScale = source->mTerrainVerticalScale;
51 mMapTileResolution = source->mMapTileResolution;
52 mMaxTerrainScreenError = source->mMaxTerrainScreenError;
53 mMaxTerrainGroundError = source->mMaxTerrainGroundError;
54 mTerrainElevationOffset = source->mTerrainElevationOffset;
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 );
Base class for all terrain settings classes.
void copyCommonProperties(const QgsAbstractTerrainSettings *source)
Copies common properties from a source object.
void writeCommonProperties(QDomElement &element, const QgsReadWriteContext &context) const
Writes common properties from the base class into an XML element.
bool equalsCommon(const QgsAbstractTerrainSettings *other) const
Returns true if common base class settings from other match this object.
virtual void resolveReferences(const QgsProject *project)
After reading settings from XML, resolves references to any layers in a project that have been read a...
void readCommonProperties(const QDomElement &element, const QgsReadWriteContext &context)
Reads common properties from the base class from the given DOM element.
virtual ~QgsAbstractTerrainSettings()
Encapsulates a QGIS project, including sets of map layers and their styles, layouts,...
A container for the context for various read/write operations on objects.
bool qgsDoubleNear(double a, double b, double epsilon=4 *std::numeric_limits< double >::epsilon())
Compare two doubles (but allow some difference).