QGIS API Documentation 3.41.0-Master (45a0abf3bec)
|
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 | 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 | 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 242 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 152 of file qgsvectorlayerelevationproperties.cpp.
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 364 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 171 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 236 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 330 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 318 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 342 of file qgsvectorlayerelevationproperties.cpp.
|
inline |
Returns the symbology option used to render the vector profile in elevation profile plots.
Definition at line 250 of file qgsvectorlayerelevationproperties.h.
|
overridevirtual |
Reads the elevation properties from a DOM element previously written by writeXml().
Implements QgsMapLayerElevationProperties.
Definition at line 83 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 153 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 268 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 258 of file qgsvectorlayerelevationproperties.cpp.
|
overridevirtual |
Sets default properties based on sensible choices for the given map layer.
Reimplemented from QgsMapLayerElevationProperties.
Definition at line 126 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 369 of file qgsvectorlayerelevationproperties.cpp.
void QgsVectorLayerElevationProperties::setExtrusionEnabled | ( | bool | enabled | ) |
Sets whether extrusion is enabled.
Definition at line 288 of file qgsvectorlayerelevationproperties.cpp.
void QgsVectorLayerElevationProperties::setExtrusionHeight | ( | double | height | ) |
Sets the feature extrusion height.
true
. Definition at line 298 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 335 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 323 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 347 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 354 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 308 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 379 of file qgsvectorlayerelevationproperties.cpp.
void QgsVectorLayerElevationProperties::setType | ( | Qgis::VectorProfileType | type | ) |
Sets the type of profile the layer represents.
Definition at line 278 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 248 of file qgsvectorlayerelevationproperties.cpp.
|
inline |
Returns true
if the marker symbol should also be shown in continuous surface plots.
Definition at line 292 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.