16#ifndef QGSELEVATIONPROFILE_H
17#define QGSELEVATIONPROFILE_H
63 QString
name()
const {
return mName; }
79 bool readXml(
const QDomElement &element,
const QDomDocument &document,
const QgsReadWriteContext &context );
86 void resolveReferences(
const QgsProject *project );
150 double tolerance()
const;
157 bool lockAxisScales()
const;
191 void setName(
const QString &name );
209 void setTolerance(
double tolerance );
216 void setLockAxisScales(
bool lock );
235 void setUseProjectLayerTree(
bool useProjectTree );
279 void setupLayerTreeConnections();
281 QPointer< QgsProject > mProject;
284 bool mLockAxisScales =
false;
286 std::unique_ptr<QgsLayerTree> mLayerTree;
287 bool mUseProjectLayerTree =
false;
288 std::unique_ptr<QgsCurve> mProfileCurve;
289 double mTolerance = 0;
290 std::unique_ptr<QgsLineSymbol> mSubsectionsSymbol;
DistanceUnit
Units of distance.
@ Unknown
Unknown distance unit.
Represents a coordinate reference system (CRS).
Abstract base class for curved geometry type.
void useProjectLayerTreeChanged(bool useProjectTree)
Emitted when the use project layer tree property is changed.
bool useProjectLayerTree()
Returns true if the profile should always use the project's layer tree.
double tolerance() const
Returns the tolerance of the profile (in crs() units).
QgsElevationProfile(QgsProject *project)
Constructor for QgsElevationProfile.
void profileCurveChanged()
Emitted when the profile curve is changed.
void nameChanged(const QString &newName)
Emitted when the profile is renamed.
QString name() const
Returns the profile's unique name.
void setUseProjectLayerTree(bool useProjectTree)
Sets whether the profile should always use the project's layer tree.
void toleranceChanged(double tolerance)
Emitted when the profile tolerance is changed.
~QgsElevationProfile() override
Namespace with helper functions for layer tree operations.
A line symbol type, for rendering LineString and MultiLineString geometries.
Base class for all map layer types.
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.