This is a proposal to refactor the AnimationView and the TimeInspector.
Context
The AnimationView is the place where to configure animation tracks (e.g. a camera path around the data) in a timeline. It also contains several widgets to control how the time is handled by the (Animation)Scene (e.g. current time, stride).
The TimeInspector, which seems less known, display a timeline with one line per pipeline source providing timesteps, and allow to select wich one is used to generate the list of timesteps available through the scene. It also embeds the VCR toolbar and the CurrentTime toolbar.
Problems
The scene time controls are dispatched over different places (two dock widgets and a toolbar), making life not easy for (not only) new users. They have some redundancy, but there still are some feature holes.
Typically, the animation scene contains most of the time control widgets but:
-
they are about configuring time and not animation tracks, so it is often misleading when looking for them
-
they are not organized in a “ParaView” way (horizontal layout, no advanced mode)
-
there are some hard-to-find features (e.g. configuring a min time in “Snap to Timesteps” mode)
-
no VCR controls
Proposition
Only one dock with timelines, with collapsable sections to easily switch from animation to time sources. The first timeline comes from the TimeInspector. This is a read-only list of sources with timesteps.
The second one represents the current animation tracks. They are created and modified from this interface (or python, of course) to control the chosen properties over time.
Alongside, we design a new “Time Control” dock with the scene time properties, that fits more closely to a Property Panel
.
And its Advanced
mode: