Ncvtk'ians,
We've been thinking about adding a global data range functionality. Here
is the plan:
1) The field object will have the following members:
---------------------------------------------------------------------
data_global_range: initially [None, None], the range will be computed by
sampling the data in elevation and time. Thsi will be done once when the
filed name is provided.
data_min/data_max: 2 lists containing the min/max values for each
elevation. Initially the lists are filled with None's. The values are
computed upon request, when the user asks for data at given elevation.
2) The Guis will have 2 new buttons:
------------------------------------------------
a) 'Global range': 1 if global range is desired, 0 if elevation by
elevation range is desired.
b) 'Auto': 1 if range is to be computed, 0 if range is to be overriden
by the user. Auto values are displayed in the 'Data min'/'Data max'
entry fields. These values can beoverriden by the user.
3) The gui pipelines will store:
----------------------------------------
a) data_global_range: initially the 2 values are the same as the
corresponding field values. This place holder will be used to save the
user values.
b) data_min/data_max: initially the same as the field member
data_min/data_max. These are place holders for the user min/max values
for given elevation.
Consider for instance the case of a user instantiating a color plot
pipeline. By default 'Auto'=>1 and 'Global range'=>0. The computed
values are shown in the Data min/max entries. The user changes the Data
min/max values, thereby updating the color map/color bar. Only if the
user turns Auto off, will the Data min/max values be captured and saved
in the gui data_min/data_max arrays. The user then changes the
elevation. Later he returns to the first elevation. The user overriden
values are recovered because 'Auto'=>0 and there are corresponding Data
min/max values stored in the gui data_min/data_max arrays. The user then
switches to Global range=>1. He overrides the global min/max values,
changes field and selects again the first field. The global min/max
values are shown in Data min/max.
Let me know if this is the desired behavior.
--Alex.
|