QGIS API Documentation
3.16.0-Hannover (43b64b13f3)
|
Implementation of map layer temporal properties for vector layers. More...
#include <qgsvectorlayertemporalproperties.h>
Public Types | |
enum | TemporalMode { ModeFixedTemporalRange = 0, ModeFeatureDateTimeInstantFromField, ModeFeatureDateTimeStartAndEndFromFields, ModeFeatureDateTimeStartAndDurationFromFields, ModeFeatureDateTimeStartAndEndFromExpressions, ModeRedrawLayerOnly } |
Mode of the vector temporal properties. More... | |
Public Types inherited from QgsTemporalProperty | |
enum | Flag { FlagDontInvalidateCachedRendersWhenRangeChanges = 1 } |
Flags attached to the temporal property. More... | |
Public Member Functions | |
QgsVectorLayerTemporalProperties (QObject *parent=nullptr, bool enabled=false) | |
Constructor for QgsVectorLayerTemporalProperties, with the specified parent object. More... | |
bool | accumulateFeatures () const |
Returns true if features will be accumulated over time (i.e. More... | |
QgsDateTimeRange | calculateTemporalExtent (QgsMapLayer *layer) const override |
Attempts to calculate the overall temporal extent for the specified layer, using the settings defined by the temporal properties object. More... | |
QString | createFilterString (const QgsVectorLayerTemporalContext &context, const QgsDateTimeRange &range) const |
Creates a QGIS expression filter string for filtering features within the specified context to those within the specified time range. More... | |
QString | durationField () const |
Returns the name of the duration field, which contains the duration of the event. More... | |
QgsUnitTypes::TemporalUnit | durationUnits () const |
Returns the units of the event's duration. More... | |
QString | endExpression () const |
Returns the expression for the end time for the feature's time spans. More... | |
QString | endField () const |
Returns the name of the end datetime field, which contains the end time for the feature's time spans. More... | |
double | fixedDuration () const |
Returns the fixed duration length, which contains the duration of the event. More... | |
const QgsDateTimeRange & | fixedTemporalRange () const |
Returns the fixed temporal range for the layer. More... | |
QgsTemporalProperty::Flags | flags () const override |
Returns flags associated to the temporal property. More... | |
void | guessDefaultsFromFields (const QgsFields &fields) |
Attempts to setup the temporal properties by scanning a set of fields and looking for standard naming conventions (e.g. More... | |
bool | isVisibleInTemporalRange (const QgsDateTimeRange &range) const override |
Returns true if the layer should be visible and rendered for the specified time range. More... | |
TemporalMode | mode () const |
Returns the temporal properties mode. More... | |
bool | readXml (const QDomElement &element, const QgsReadWriteContext &context) override |
Reads temporal properties from a DOM element previously written by writeXml(). More... | |
void | setAccumulateFeatures (bool accumulate) |
Sets whether features will be accumulated over time (i.e. More... | |
void | setDefaultsFromDataProviderTemporalCapabilities (const QgsDataProviderTemporalCapabilities *capabilities) override |
Sets the layers temporal settings to appropriate defaults based on a provider's temporal capabilities. More... | |
void | setDurationField (const QString &field) |
Sets the name of the duration field, which contains the duration of the event. More... | |
void | setDurationUnits (QgsUnitTypes::TemporalUnit units) |
Sets the units of the event's duration. More... | |
void | setEndExpression (const QString &endExpression) |
Sets the expression to use for the end time for the feature's time spans. More... | |
void | setEndField (const QString &field) |
Sets the name of the end datetime field, which contains the end time for the feature's time spans. More... | |
void | setFixedDuration (double duration) |
Sets the fixed event duration, which contains the duration of the event. More... | |
void | setFixedTemporalRange (const QgsDateTimeRange &range) |
Sets a temporal range to apply to the whole layer. More... | |
void | setMode (TemporalMode mode) |
Sets the temporal properties mode. More... | |
void | setStartExpression (const QString &expression) |
Sets the expression to use for the start time for the feature's time spans. More... | |
void | setStartField (const QString &field) |
Sets the name of the start datetime field, which contains the start time for the feature's time spans. More... | |
QString | startExpression () const |
Returns the expression for the start time for the feature's time spans. More... | |
QString | startField () const |
Returns the name of the start datetime field, which contains the start time for the feature's time spans. More... | |
QDomElement | writeXml (QDomElement &element, QDomDocument &doc, const QgsReadWriteContext &context) override |
Writes the properties to a DOM element, to be used later with readXml(). More... | |
Public Member Functions inherited from QgsMapLayerTemporalProperties | |
QgsMapLayerTemporalProperties (QObject *parent, bool enabled=false) | |
Constructor for QgsMapLayerTemporalProperties, with the specified parent object. More... | |
Public Member Functions inherited from QgsTemporalProperty | |
QgsTemporalProperty (QObject *parent=nullptr, bool enabled=false) | |
Constructor for QgsTemporalProperty, with the specified parent object. More... | |
bool | isActive () const |
Returns true if the temporal property is active. More... | |
void | setIsActive (bool active) |
Sets whether the temporal property is active. More... | |
Additional Inherited Members | |
Signals inherited from QgsTemporalProperty | |
void | changed () |
Emitted when the temporal properties have changed. More... | |
Implementation of map layer temporal properties for vector layers.
Definition at line 70 of file qgsvectorlayertemporalproperties.h.
Mode of the vector temporal properties.
Definition at line 89 of file qgsvectorlayertemporalproperties.h.
QgsVectorLayerTemporalProperties::QgsVectorLayerTemporalProperties | ( | QObject * | parent = nullptr , |
bool | enabled = false |
||
) |
Constructor for QgsVectorLayerTemporalProperties, with the specified parent object.
The enabled argument specifies whether the temporal properties are initially enabled or not (see isActive()).
Definition at line 25 of file qgsvectorlayertemporalproperties.cpp.
bool QgsVectorLayerTemporalProperties::accumulateFeatures | ( | ) | const |
Returns true
if features will be accumulated over time (i.e.
all features which occur before or within the map's temporal range should be rendered).
Definition at line 344 of file qgsvectorlayertemporalproperties.cpp.
|
overridevirtual |
Attempts to calculate the overall temporal extent for the specified layer, using the settings defined by the temporal properties object.
May return an infinite range if the extent could not be calculated.
Reimplemented from QgsMapLayerTemporalProperties.
Definition at line 50 of file qgsvectorlayertemporalproperties.cpp.
QString QgsVectorLayerTemporalProperties::createFilterString | ( | const QgsVectorLayerTemporalContext & | context, |
const QgsDateTimeRange & | range | ||
) | const |
Creates a QGIS expression filter string for filtering features within the specified context to those within the specified time range.
The returned expression string considers the mode() and other related settings (such as startField()) when building the filter string.
Definition at line 414 of file qgsvectorlayertemporalproperties.cpp.
QString QgsVectorLayerTemporalProperties::durationField | ( | ) | const |
Returns the name of the duration field, which contains the duration of the event.
Units are specified by durationUnits()
Definition at line 384 of file qgsvectorlayertemporalproperties.cpp.
QgsUnitTypes::TemporalUnit QgsVectorLayerTemporalProperties::durationUnits | ( | ) | const |
Returns the units of the event's duration.
Definition at line 394 of file qgsvectorlayertemporalproperties.cpp.
QString QgsVectorLayerTemporalProperties::endExpression | ( | ) | const |
Returns the expression for the end time for the feature's time spans.
Definition at line 334 of file qgsvectorlayertemporalproperties.cpp.
QString QgsVectorLayerTemporalProperties::endField | ( | ) | const |
Returns the name of the end datetime field, which contains the end time for the feature's time spans.
Definition at line 374 of file qgsvectorlayertemporalproperties.cpp.
double QgsVectorLayerTemporalProperties::fixedDuration | ( | ) | const |
Returns the fixed duration length, which contains the duration of the event.
Units are specified by durationUnits()
Definition at line 354 of file qgsvectorlayertemporalproperties.cpp.
const QgsDateTimeRange & QgsVectorLayerTemporalProperties::fixedTemporalRange | ( | ) | const |
Returns the fixed temporal range for the layer.
Definition at line 225 of file qgsvectorlayertemporalproperties.cpp.
|
overridevirtual |
Returns flags associated to the temporal property.
Reimplemented from QgsTemporalProperty.
Definition at line 215 of file qgsvectorlayertemporalproperties.cpp.
void QgsVectorLayerTemporalProperties::guessDefaultsFromFields | ( | const QgsFields & | fields | ) |
Attempts to setup the temporal properties by scanning a set of fields and looking for standard naming conventions (e.g.
"begin_date").
Definition at line 565 of file qgsvectorlayertemporalproperties.cpp.
|
overridevirtual |
Returns true
if the layer should be visible and rendered for the specified time range.
Reimplemented from QgsMapLayerTemporalProperties.
Definition at line 30 of file qgsvectorlayertemporalproperties.cpp.
QgsVectorLayerTemporalProperties::TemporalMode QgsVectorLayerTemporalProperties::mode | ( | ) | const |
Returns the temporal properties mode.
Definition at line 203 of file qgsvectorlayertemporalproperties.cpp.
|
overridevirtual |
Reads temporal properties from a DOM element previously written by writeXml().
Implements QgsMapLayerTemporalProperties.
Definition at line 230 of file qgsvectorlayertemporalproperties.cpp.
void QgsVectorLayerTemporalProperties::setAccumulateFeatures | ( | bool | accumulate | ) |
Sets whether features will be accumulated over time (i.e.
all features which occur before or within the map's temporal range should be rendered).
Definition at line 349 of file qgsvectorlayertemporalproperties.cpp.
|
overridevirtual |
Sets the layers temporal settings to appropriate defaults based on a provider's temporal capabilities.
Implements QgsMapLayerTemporalProperties.
Definition at line 301 of file qgsvectorlayertemporalproperties.cpp.
void QgsVectorLayerTemporalProperties::setDurationField | ( | const QString & | field | ) |
Sets the name of the duration field, which contains the duration of the event.
Units are specified by setDurationUnits()
Definition at line 389 of file qgsvectorlayertemporalproperties.cpp.
void QgsVectorLayerTemporalProperties::setDurationUnits | ( | QgsUnitTypes::TemporalUnit | units | ) |
Sets the units of the event's duration.
Definition at line 399 of file qgsvectorlayertemporalproperties.cpp.
void QgsVectorLayerTemporalProperties::setEndExpression | ( | const QString & | endExpression | ) |
Sets the expression to use for the end time for the feature's time spans.
Definition at line 339 of file qgsvectorlayertemporalproperties.cpp.
void QgsVectorLayerTemporalProperties::setEndField | ( | const QString & | field | ) |
Sets the name of the end datetime field, which contains the end time for the feature's time spans.
Definition at line 379 of file qgsvectorlayertemporalproperties.cpp.
void QgsVectorLayerTemporalProperties::setFixedDuration | ( | double | duration | ) |
Sets the fixed event duration, which contains the duration of the event.
Units are specified by setDurationUnits()
Definition at line 359 of file qgsvectorlayertemporalproperties.cpp.
void QgsVectorLayerTemporalProperties::setFixedTemporalRange | ( | const QgsDateTimeRange & | range | ) |
Sets a temporal range to apply to the whole layer.
All features from the layer will be rendered whenever the current datetime range of a render context intersects the specified range.
Definition at line 220 of file qgsvectorlayertemporalproperties.cpp.
void QgsVectorLayerTemporalProperties::setMode | ( | QgsVectorLayerTemporalProperties::TemporalMode | mode | ) |
Sets the temporal properties mode.
Definition at line 208 of file qgsvectorlayertemporalproperties.cpp.
void QgsVectorLayerTemporalProperties::setStartExpression | ( | const QString & | expression | ) |
Sets the expression to use for the start time for the feature's time spans.
Definition at line 329 of file qgsvectorlayertemporalproperties.cpp.
void QgsVectorLayerTemporalProperties::setStartField | ( | const QString & | field | ) |
Sets the name of the start datetime field, which contains the start time for the feature's time spans.
If mode() is ModeFeatureDateTimeInstantFromField, then this field represents both the start AND end times.
Definition at line 369 of file qgsvectorlayertemporalproperties.cpp.
QString QgsVectorLayerTemporalProperties::startExpression | ( | ) | const |
Returns the expression for the start time for the feature's time spans.
Definition at line 324 of file qgsvectorlayertemporalproperties.cpp.
QString QgsVectorLayerTemporalProperties::startField | ( | ) | const |
Returns the name of the start datetime field, which contains the start time for the feature's time spans.
If mode() is ModeFeatureDateTimeInstantFromField, then this field represents both the start AND end times.
Definition at line 364 of file qgsvectorlayertemporalproperties.cpp.
|
overridevirtual |
Writes the properties to a DOM element, to be used later with readXml().
Implements QgsMapLayerTemporalProperties.
Definition at line 263 of file qgsvectorlayertemporalproperties.cpp.