23using namespace Qt::StringLiterals;
33 element.setAttribute( u
"exaggeration"_s, mTerrainVerticalScale );
34 element.setAttribute( u
"texture-size"_s, mMapTileResolution );
35 element.setAttribute( u
"max-terrain-error"_s, mMaxTerrainScreenError );
36 element.setAttribute( u
"max-ground-error"_s, mMaxTerrainGroundError );
37 element.setAttribute( u
"elevation-offset"_s, mTerrainElevationOffset );
42 mTerrainVerticalScale = element.attribute( u
"exaggeration"_s, u
"1"_s ).toDouble();
43 mMapTileResolution = element.attribute( u
"texture-size"_s, u
"512"_s ).toInt();
44 mMaxTerrainScreenError = element.attribute( u
"max-terrain-error"_s, u
"3"_s ).toDouble();
45 mMaxTerrainGroundError = element.attribute( u
"max-ground-error"_s, u
"1"_s ).toDouble();
46 mTerrainElevationOffset = element.attribute( u
"elevation-offset"_s, u
"0.0"_s ).toDouble();
51 mTerrainVerticalScale = source->mTerrainVerticalScale;
52 mMapTileResolution = source->mMapTileResolution;
53 mMaxTerrainScreenError = source->mMaxTerrainScreenError;
54 mMaxTerrainGroundError = source->mMaxTerrainGroundError;
55 mTerrainElevationOffset = source->mTerrainElevationOffset;
60 return mMapTileResolution == other->mMapTileResolution
61 &&
qgsDoubleNear( mTerrainVerticalScale, other->mTerrainVerticalScale )
62 &&
qgsDoubleNear( mMaxTerrainScreenError, other->mMaxTerrainScreenError )
63 &&
qgsDoubleNear( mMaxTerrainGroundError, other->mMaxTerrainGroundError )
64 &&
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).