QGIS API Documentation 3.41.0-Master (d2aaa9c6e02)
|
Vector layer specific subclass of QgsMapLayerElevationProperties. More...
#include <qgsvectorlayerelevationproperties.h>
Public Member Functions | |
QgsVectorLayerElevationProperties (QObject *parent) | |
Constructor for QgsVectorLayerElevationProperties, with the specified parent object. | |
~QgsVectorLayerElevationProperties () override | |
Qgis::AltitudeBinding | binding () const |
Returns the altitude binding method, which determines how altitude is bound to individual vertices in features. | |
QgsDoubleRange | calculateZRange (QgsMapLayer *layer) const override |
Attempts to calculate the overall elevation or z range for the specified layer, using the settings defined by this elevation properties object. | |
Qgis::AltitudeClamping | clamping () const |
Returns the altitude clamping method, which dictates how feature heights are interpreted with respect to terrain heights. | |
QgsVectorLayerElevationProperties * | clone () const override |
Creates a clone of the properties. | |
double | customTolerance () const |
Returns the feature custom tolerance. | |
bool | customToleranceEnabled () const |
Returns true if custom tolerance is enabled. | |
double | elevationLimit () const |
Returns the elevation limit, which is used when profileSymbology() is Qgis::ProfileSurfaceSymbology::FillBelow or Qgis::ProfileSurfaceSymbology::FillAbove to limit the fill to a specific elevation range. | |
bool | extrusionEnabled () const |
Returns true if extrusion is enabled. | |
double | extrusionHeight () const |
Returns the feature extrusion height. | |
bool | hasElevation () const override |
Returns true if the layer has an elevation or z component. | |
QString | htmlSummary () const override |
Returns a HTML formatted summary of the properties. | |
bool | isVisibleInZRange (const QgsDoubleRange &range, QgsMapLayer *layer=nullptr) const override |
Returns true if the layer should be visible and rendered for the specified z range. | |
QgsFillSymbol * | profileFillSymbol () const |
Returns the symbol used to render polygons for the layer in elevation profile plots. | |
QgsLineSymbol * | profileLineSymbol () const |
Returns the symbol used to render lines for the layer in elevation profile plots. | |
QgsMarkerSymbol * | profileMarkerSymbol () const |
Returns the symbol used to render points for the layer in elevation profile plots. | |
Qgis::ProfileSurfaceSymbology | profileSymbology () const |
Returns the symbology option used to render the vector profile in elevation profile plots. | |
bool | readXml (const QDomElement &element, const QgsReadWriteContext &context) override |
Reads the elevation properties from a DOM element previously written by writeXml(). | |
bool | respectLayerSymbology () const |
Returns true if layer symbology should be respected when rendering elevation profile plots. | |
void | setBinding (Qgis::AltitudeBinding binding) |
Sets the altitude binding method, which determines how altitude is bound to individual vertices in features. | |
void | setClamping (Qgis::AltitudeClamping clamping) |
Sets the altitude clamping method, which dictates how feature heights are interpreted with respect to terrain heights. | |
void | setCustomTolerance (double tolerance) |
Sets the feature custom tolerance. | |
void | setCustomToleranceEnabled (bool enabled) |
Sets whether custom tolerance is enabled. | |
void | setDefaultsFromLayer (QgsMapLayer *layer) override |
Sets default properties based on sensible choices for the given map layer. | |
void | setElevationLimit (double limit) |
Sets the elevation limit, which is used when profileSymbology() is Qgis::ProfileSurfaceSymbology::FillBelow or Qgis::ProfileSurfaceSymbology::FillAbove to limit the fill to a specific elevation range. | |
void | setExtrusionEnabled (bool enabled) |
Sets whether extrusion is enabled. | |
void | setExtrusionHeight (double height) |
Sets the feature extrusion height. | |
void | setProfileFillSymbol (QgsFillSymbol *symbol) |
Sets the fill symbol used to render polygons for the layer in elevation profile plots. | |
void | setProfileLineSymbol (QgsLineSymbol *symbol) |
Sets the line symbol used to render lines for the layer in elevation profile plots. | |
void | setProfileMarkerSymbol (QgsMarkerSymbol *symbol) |
Sets the marker symbol used to render points for the layer in elevation profile plots. | |
void | setProfileSymbology (Qgis::ProfileSurfaceSymbology symbology) |
Sets the symbology option used to render the vector profile in elevation profile plots. | |
void | setRespectLayerSymbology (bool enabled) |
Sets whether layer symbology should be respected when rendering elevation profile plots. | |
void | setShowMarkerSymbolInSurfacePlots (bool show) |
Sets whether the marker symbol should also be shown in continuous surface plots. | |
void | setType (Qgis::VectorProfileType type) |
Sets the type of profile the layer represents. | |
bool | showByDefaultInElevationProfilePlots () const override |
Returns true if the layer should be visible by default in newly created elevation profile plots. | |
bool | showMarkerSymbolInSurfacePlots () const |
Returns true if the marker symbol should also be shown in continuous surface plots. | |
Qgis::VectorProfileType | type () const |
Returns the type of profile the layer represents. | |
QDomElement | writeXml (QDomElement &element, QDomDocument &doc, const QgsReadWriteContext &context) override |
Writes the properties to a DOM element, to be used later with readXml(). | |
Public Member Functions inherited from QgsMapLayerElevationProperties | |
QgsMapLayerElevationProperties (QObject *parent) | |
Constructor for QgsMapLayerElevationProperties, with the specified parent object. | |
QgsPropertyCollection & | dataDefinedProperties () |
Returns a reference to the object's property collection, used for data defined overrides. | |
const QgsPropertyCollection & | dataDefinedProperties () const |
Returns a reference to the object's property collection, used for data defined overrides. | |
virtual QgsMapLayerElevationProperties::Flags | flags () const |
Returns flags associated to the elevation properties. | |
void | setDataDefinedProperties (const QgsPropertyCollection &collection) |
Sets the object's property collection, used for data defined overrides. | |
void | setZOffset (double offset) |
Sets the z offset, which is a fixed offset amount which will be added to z values from the layer. | |
void | setZScale (double scale) |
Sets the z scale, which is a scaling factor which will be applied to z values from the layer. | |
virtual QList< double > | significantZValues (QgsMapLayer *layer) const |
Returns a list of significant elevation/z-values for the specified layer, using the settings defined by this elevation properties object. | |
double | zOffset () const |
Returns the z offset, which is a fixed offset amount which should be added to z values from the layer. | |
double | zScale () const |
Returns the z scale, which is a scaling factor which should be applied to z values from the layer. | |
Additional Inherited Members | |
Public Types inherited from QgsMapLayerElevationProperties | |
enum | Flag { FlagDontInvalidateCachedRendersWhenRangeChanges = 1 } |
Flags attached to the elevation property. More... | |
typedef QFlags< Flag > | Flags |
enum class | Property : int { ZOffset , ExtrusionHeight , RasterPerBandLowerElevation , RasterPerBandUpperElevation } |
Data definable properties. More... | |
Signals inherited from QgsMapLayerElevationProperties | |
void | changed () |
Emitted when any of the elevation properties have changed. | |
void | profileGenerationPropertyChanged () |
Emitted when any of the elevation properties which relate solely to generation of elevation profiles have changed. | |
void | profileRenderingPropertyChanged () |
Emitted when any of the elevation properties which relate solely to presentation of elevation results have changed. | |
void | zOffsetChanged () |
Emitted when the z offset changes. | |
void | zScaleChanged () |
Emitted when the z scale changes. | |
Static Public Member Functions inherited from QgsMapLayerElevationProperties | |
static QgsPropertiesDefinition | propertyDefinitions () |
Returns the definitions for data defined properties available for use in elevation properties. | |
Protected Member Functions inherited from QgsMapLayerElevationProperties | |
void | copyCommonProperties (const QgsMapLayerElevationProperties *other) |
Copies common properties from another object. | |
void | readCommonProperties (const QDomElement &element, const QgsReadWriteContext &context) |
Reads common class properties from a DOM element previously written by writeXml(). | |
void | writeCommonProperties (QDomElement &element, QDomDocument &doc, const QgsReadWriteContext &context) |
Writes common class properties to a DOM element, to be used later with readXml(). | |
Protected Attributes inherited from QgsMapLayerElevationProperties | |
QgsPropertyCollection | mDataDefinedProperties |
Property collection for data defined elevation settings. | |
double | mZOffset = 0.0 |
Z offset. | |
double | mZScale = 1.0 |
Z scale. | |
Static Protected Attributes inherited from QgsMapLayerElevationProperties | |
static QgsPropertiesDefinition | sPropertyDefinitions |
Property definitions. | |
Vector layer specific subclass of QgsMapLayerElevationProperties.
Definition at line 38 of file qgsvectorlayerelevationproperties.h.
QgsVectorLayerElevationProperties::QgsVectorLayerElevationProperties | ( | QObject * | parent | ) |
Constructor for QgsVectorLayerElevationProperties, with the specified parent object.
Definition at line 31 of file qgsvectorlayerelevationproperties.cpp.
|
overridedefault |
|
inline |
Returns the altitude binding method, which determines how altitude is bound to individual vertices in features.
Definition at line 84 of file qgsvectorlayerelevationproperties.h.
|
overridevirtual |
Attempts to calculate the overall elevation or z range for the specified layer, using the settings defined by this elevation properties object.
May return an infinite range if the extent could not be calculated.
Reimplemented from QgsMapLayerElevationProperties.
Definition at line 259 of file qgsvectorlayerelevationproperties.cpp.
|
inline |
Returns the altitude clamping method, which dictates how feature heights are interpreted with respect to terrain heights.
Definition at line 67 of file qgsvectorlayerelevationproperties.h.
|
overridevirtual |
Creates a clone of the properties.
Implements QgsMapLayerElevationProperties.
Definition at line 162 of file qgsvectorlayerelevationproperties.cpp.
|
inline |
Returns the feature custom tolerance.
true
.If enabled, the profile generator will use this tolerance instead of the one defined in the elevation profile widget.
Definition at line 171 of file qgsvectorlayerelevationproperties.h.
|
inline |
Returns true
if custom tolerance is enabled.
Definition at line 151 of file qgsvectorlayerelevationproperties.h.
double QgsVectorLayerElevationProperties::elevationLimit | ( | ) | const |
Returns the elevation limit, which is used when profileSymbology() is Qgis::ProfileSurfaceSymbology::FillBelow or Qgis::ProfileSurfaceSymbology::FillAbove to limit the fill to a specific elevation range.
By default this is NaN, which indicates that there is no elevation limit.
Definition at line 401 of file qgsvectorlayerelevationproperties.cpp.
|
inline |
Returns true
if extrusion is enabled.
Definition at line 115 of file qgsvectorlayerelevationproperties.h.
|
inline |
Returns the feature extrusion height.
true
. Definition at line 133 of file qgsvectorlayerelevationproperties.h.
|
overridevirtual |
Returns true
if the layer has an elevation or z component.
Reimplemented from QgsMapLayerElevationProperties.
Definition at line 42 of file qgsvectorlayerelevationproperties.cpp.
|
overridevirtual |
Returns a HTML formatted summary of the properties.
Reimplemented from QgsMapLayerElevationProperties.
Definition at line 183 of file qgsvectorlayerelevationproperties.cpp.
|
overridevirtual |
Returns true
if the layer should be visible and rendered for the specified z range.
Since QGIS 3.38 the layer argument can be used to specify the target layer.
Reimplemented from QgsMapLayerElevationProperties.
Definition at line 253 of file qgsvectorlayerelevationproperties.cpp.
QgsFillSymbol * QgsVectorLayerElevationProperties::profileFillSymbol | ( | ) | const |
Returns the symbol used to render polygons for the layer in elevation profile plots.
The symbol will be used in the following circumstances:
true
Definition at line 367 of file qgsvectorlayerelevationproperties.cpp.
QgsLineSymbol * QgsVectorLayerElevationProperties::profileLineSymbol | ( | ) | const |
Returns the symbol used to render lines for the layer in elevation profile plots.
The symbol will be used in the following circumstances:
true
true
false
Definition at line 355 of file qgsvectorlayerelevationproperties.cpp.
QgsMarkerSymbol * QgsVectorLayerElevationProperties::profileMarkerSymbol | ( | ) | const |
Returns the symbol used to render points for the layer in elevation profile plots.
The symbol will be used in the following circumstances:
false
false
Definition at line 379 of file qgsvectorlayerelevationproperties.cpp.
|
inline |
Returns the symbology option used to render the vector profile in elevation profile plots.
Definition at line 290 of file qgsvectorlayerelevationproperties.h.
|
overridevirtual |
Reads the elevation properties from a DOM element previously written by writeXml().
Implements QgsMapLayerElevationProperties.
Definition at line 85 of file qgsvectorlayerelevationproperties.cpp.
|
inline |
Returns true
if layer symbology should be respected when rendering elevation profile plots.
Specifically, this will result in the layer's symbols (or symbol colors) being used to draw features in the profile plots.
Definition at line 193 of file qgsvectorlayerelevationproperties.h.
void QgsVectorLayerElevationProperties::setBinding | ( | Qgis::AltitudeBinding | binding | ) |
Sets the altitude binding method, which determines how altitude is bound to individual vertices in features.
Definition at line 285 of file qgsvectorlayerelevationproperties.cpp.
void QgsVectorLayerElevationProperties::setClamping | ( | Qgis::AltitudeClamping | clamping | ) |
Sets the altitude clamping method, which dictates how feature heights are interpreted with respect to terrain heights.
Definition at line 275 of file qgsvectorlayerelevationproperties.cpp.
void QgsVectorLayerElevationProperties::setCustomTolerance | ( | double | tolerance | ) |
Sets the feature custom tolerance.
true
.If enabled, the profile generator will use this tolerance instead of the one defined in the elevation profile widget.
Definition at line 325 of file qgsvectorlayerelevationproperties.cpp.
void QgsVectorLayerElevationProperties::setCustomToleranceEnabled | ( | bool | enabled | ) |
Sets whether custom tolerance is enabled.
Definition at line 335 of file qgsvectorlayerelevationproperties.cpp.
|
overridevirtual |
Sets default properties based on sensible choices for the given map layer.
Reimplemented from QgsMapLayerElevationProperties.
Definition at line 130 of file qgsvectorlayerelevationproperties.cpp.
void QgsVectorLayerElevationProperties::setElevationLimit | ( | double | limit | ) |
Sets the elevation limit, which is used when profileSymbology() is Qgis::ProfileSurfaceSymbology::FillBelow or Qgis::ProfileSurfaceSymbology::FillAbove to limit the fill to a specific elevation range.
Set to NaN to indicate that there is no elevation limit.
Definition at line 406 of file qgsvectorlayerelevationproperties.cpp.
void QgsVectorLayerElevationProperties::setExtrusionEnabled | ( | bool | enabled | ) |
Sets whether extrusion is enabled.
Definition at line 305 of file qgsvectorlayerelevationproperties.cpp.
void QgsVectorLayerElevationProperties::setExtrusionHeight | ( | double | height | ) |
Sets the feature extrusion height.
true
. Definition at line 315 of file qgsvectorlayerelevationproperties.cpp.
void QgsVectorLayerElevationProperties::setProfileFillSymbol | ( | QgsFillSymbol * | symbol | ) |
Sets the fill symbol used to render polygons for the layer in elevation profile plots.
Ownership of symbol is transferred to the plot.
The symbol will be used in the following circumstances:
true
Definition at line 372 of file qgsvectorlayerelevationproperties.cpp.
void QgsVectorLayerElevationProperties::setProfileLineSymbol | ( | QgsLineSymbol * | symbol | ) |
Sets the line symbol used to render lines for the layer in elevation profile plots.
Ownership of symbol is transferred to the plot.
The symbol will be used in the following circumstances:
true
true
false
Definition at line 360 of file qgsvectorlayerelevationproperties.cpp.
void QgsVectorLayerElevationProperties::setProfileMarkerSymbol | ( | QgsMarkerSymbol * | symbol | ) |
Sets the marker symbol used to render points for the layer in elevation profile plots.
Ownership of symbol is transferred to the plot.
The symbol will be used in the following circumstances:
false
false
Definition at line 384 of file qgsvectorlayerelevationproperties.cpp.
void QgsVectorLayerElevationProperties::setProfileSymbology | ( | Qgis::ProfileSurfaceSymbology | symbology | ) |
Sets the symbology option used to render the vector profile in elevation profile plots.
Definition at line 391 of file qgsvectorlayerelevationproperties.cpp.
void QgsVectorLayerElevationProperties::setRespectLayerSymbology | ( | bool | enabled | ) |
Sets whether layer symbology should be respected when rendering elevation profile plots.
Specifically, this will result in the layer's symbols (or symbol colors) being used to draw features in the profile plots.
Definition at line 345 of file qgsvectorlayerelevationproperties.cpp.
void QgsVectorLayerElevationProperties::setShowMarkerSymbolInSurfacePlots | ( | bool | show | ) |
Sets whether the marker symbol should also be shown in continuous surface plots.
Definition at line 416 of file qgsvectorlayerelevationproperties.cpp.
void QgsVectorLayerElevationProperties::setType | ( | Qgis::VectorProfileType | type | ) |
Sets the type of profile the layer represents.
Definition at line 295 of file qgsvectorlayerelevationproperties.cpp.
|
overridevirtual |
Returns true
if the layer should be visible by default in newly created elevation profile plots.
Subclasses should override this with logic which determines whether the layer is likely desirable to be initially checked in these plots.
Reimplemented from QgsMapLayerElevationProperties.
Definition at line 265 of file qgsvectorlayerelevationproperties.cpp.
|
inline |
Returns true
if the marker symbol should also be shown in continuous surface plots.
Definition at line 332 of file qgsvectorlayerelevationproperties.h.
|
inline |
Returns the type of profile the layer represents.
Definition at line 100 of file qgsvectorlayerelevationproperties.h.
|
overridevirtual |
Writes the properties to a DOM element, to be used later with readXml().
Implements QgsMapLayerElevationProperties.
Definition at line 50 of file qgsvectorlayerelevationproperties.cpp.