Open jakimowb opened 2 years ago
I would suggest to only have a single Temporal Controller.
Also, I would not temporally control at a MapView-level, but rather individual layer, like known from QGIS.
Hi @jakimowb, before you start implementing this, please let's meet and discuss details.
I don't get your point. The temporal controler in QGIS controls "at MapView-level", i.e. the QgsMapCanvas filters all layers which are out-of-date range. That's what I like to see in the EnMAP-Box as well. The only difference is, that we should have a multi-map solution that allows to modifiy map date ranges individually. For example:
Map 1: range 2000-2005 - but this can be changed independent of Map 2 Map 2: range 2010-2020 - but this can be changed independent of Map 1
In any case, the temporal properties of a data source are set at the map layer level (and as known from QGIS), e.g. using the layer properties dialog or specialized EnMAP-Box widgets / object. For example a renderer that is aware of the QgsMapCanvas temporal range and selects the bands automatically.
The temporal controler in QGIS controls "at MapView-level"
No, not true. Here you see 3 QGIS Map Views, all are controled by the single Temporal Controller panel:
I would suggest, that we stick to the same concept for the EnMAP-Box. Otherwise it may get to complicated.
Now I understand what you mean. My feature request is to enhance this concept and allow to show different time frames in different maps canvases (or to disconnect a canvas from a temporal controler, what seems no to be possible in QGIS). Why do you think it is "to complicated"?
Why do you think it is "to complicated"?
Having more than one Temporal Controller is to complicated. I would stick to the basic concept introduced by QGIS: all layers, that are under temporal control, are controlled by THE Temporal Controller, no matter in what MapView they are displayed.
QGIS uses the QgsTemporalControllerWidget to manage the temporal properties of its central QgsMapCanvas via:
Following the multi-mapview approach realized in the EnMAP-Box, it would make sense to have similar panel that:
This may be implemented as an extendable list of QgsTemporalControlerWidgets and a matrix that allows to link these controller witth EnMAP-Box MapCanvases.