QGIS API Documentation
3.20.0-Odense (decaadbb31)
|
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 (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... | |
virtual QList< QgsDateTimeRange > | allTemporalRanges (QgsMapLayer *layer) const |
Attempts to calculate the overall list of all temporal extents which are contained in the specified layer, using the settings defined by the temporal properties 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 361 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 | ( | 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 431 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 401 of file qgsvectorlayertemporalproperties.cpp.
QgsUnitTypes::TemporalUnit QgsVectorLayerTemporalProperties::durationUnits | ( | ) | const |
Returns the units of the event's duration.
Definition at line 411 of file qgsvectorlayertemporalproperties.cpp.
QString QgsVectorLayerTemporalProperties::endExpression | ( | ) | const |
Returns the expression for the end time for the feature's time spans.
Definition at line 351 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 391 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 371 of file qgsvectorlayertemporalproperties.cpp.
const QgsDateTimeRange & QgsVectorLayerTemporalProperties::fixedTemporalRange | ( | ) | const |
Returns the fixed temporal range for the layer.
Definition at line 242 of file qgsvectorlayertemporalproperties.cpp.
|
overridevirtual |
Returns flags associated to the temporal property.
Reimplemented from QgsTemporalProperty.
Definition at line 232 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 577 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 220 of file qgsvectorlayertemporalproperties.cpp.
|
overridevirtual |
Reads temporal properties from a DOM element previously written by writeXml().
Implements QgsMapLayerTemporalProperties.
Definition at line 247 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 366 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 318 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 406 of file qgsvectorlayertemporalproperties.cpp.
void QgsVectorLayerTemporalProperties::setDurationUnits | ( | QgsUnitTypes::TemporalUnit | units | ) |
Sets the units of the event's duration.
Definition at line 416 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 356 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 396 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 376 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 237 of file qgsvectorlayertemporalproperties.cpp.
void QgsVectorLayerTemporalProperties::setMode | ( | QgsVectorLayerTemporalProperties::TemporalMode | mode | ) |
Sets the temporal properties mode.
Definition at line 225 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 346 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 386 of file qgsvectorlayertemporalproperties.cpp.
QString QgsVectorLayerTemporalProperties::startExpression | ( | ) | const |
Returns the expression for the start time for the feature's time spans.
Definition at line 341 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 381 of file qgsvectorlayertemporalproperties.cpp.
|
overridevirtual |
Writes the properties to a DOM element, to be used later with readXml().
Implements QgsMapLayerTemporalProperties.
Definition at line 280 of file qgsvectorlayertemporalproperties.cpp.