Cronometro↵
Come visualizzare un cronometro che misuri il tempo trascorso in una sessione di lavoro con QGIS. Il cronometro verrà posizionato in alto nella map canvas tramite l'uso delle decorazioni e in particolare Etichetta Titolo...
Le Decorazioni sono raggiungibili dal Menu Visualizza | Decorazioni | Etichetta Titolo...
verrà aperta una finestra per configurare Etichetta Titolo
e dove editare l'espressione:
Espressione↵
senza Macro↵
with_variable('durata',
age(
now(),
make_datetime(2022,04,07,09,05,42) -- i valori vanno inseriti manualmente
),
lpad(floor(hour(@durata)),2,0)
||'h:'||
lpad(to_int(minute(@durata)-floor(hour(@durata))*60),2,0))
con Macro↵
with_variable('durata',
age(
now(),
@starting_time -- variabile che contine il datetime di apertura progetto
),
lpad(floor(hour(@durata)),2,0)
||'h:'||
lpad(to_int(minute(@durata)-floor(hour(@durata))*60),2,0))
Macro↵
La macro è stata realizzata da Valerio Pinna e Giulio Fattori che ringraziamo per il prezioso aiuto.
from datetime import datetime
from qgis.core import QgsProject, QgsExpression, QgsExpressionContextUtils
def openProject():
project = QgsProject.instance()
QgsExpressionContextUtils.setProjectVariable(project,'starting_time',str(datetime.now()))
QgsExpressionContextUtils.projectScope(project).variable('starting_time')
def saveProject():
pass
def closeProject():
pass
https://docs.qgis.org/testing/en/docs/user_manual/introduction/qgis_configuration.html#id71
NB: per utilizzare la macro nel Progetto:
- Impostazioni | Opzioni | Generale → Abilita Macro | Sempre
- Progetto | Proprietà | Macro
Funzioni e variabili utilizzate: