To produce an animation we need to specify the the times steps that will represent the animation, and a consistent set of contour/color levels, so that the colors are the same for all of the time steps; or if a line is being animated, we need to be able to set a consistent axis for the dependent variable. This means that either the user needs to set these things, or that a pre-processing look at the data is needed, in order to set the range of values to be shown.
The information captured by the user's settings and the initial look at the data is in the animation frames xml file, and looks something like this (an example of an xml file for animating a 2D field):
<?xml version='1.0' encoding='UTF-8'?>
For a 2D animation, the <fill_levels> and <contour_levels> have either been set by the user in the animation UI, or are computed from the data in the spatial region and the time steps specified:
If this is a 2D animation then the contents of the <dep_axis_scale> tag are ignored.
For a 1D animation, the dependent axis scale is either set by the user on the animation ui page, or is computed from the data at the chosen time steps. That specificaion might look like this, where the values represent the minimum and maximum value on the axis, and the interval between tic marks.
For 1D plots, the <fill_levels> and <contour_levels> may be set, but they are ignored.
The <frames> section lists the time steps that have beenchosen by the user in the animation to appear in the animation. Theseare a subset of the time steps that exist within the dataset.
The <units> tag is filled in by the template, from the dataset.
An animation always has a time axis, so the element <hasT> will always be this 1. (Potentially one could animate in other dimensions, such as Z, but this is not implemented.)
The possible time steps are presented to the user on the User Interface page. This is the entire range of the dataset as specified in the configuration XML. For Google-Earth animations, the time range is limited.