20000802: absolute or relative color tables? - more

>From: Stuart Wier <wier@xxxxxxxxxxxxxxxx>
>Organization: UCAR/Unidata
>Keywords: 200008021437.e72Eb7T23720


>So there is no way to say "make data values of 0.0 always blue 
>wherever they occur"?

If you knew the max/min range of the ScalarMap, you could determine
which point was 0 and set that to Blue.  

>A more complex case is where you don't want colors evenly distributed
>over the low, high range.  For example, having a special and
>rapidly changing list of distinctive colors associated with a narrow
>range of data values of primary interest, imbedded in a larger (low, high) ran
> ge
>of lesser interest?  For example in medical imagery
>where you want to highlite a particular signal value.

You can set whatever mapping you want for values, they don't have to
be a linear shading of colors.  I do this in my ImageViewer using
McIDAS Enhancement tables to map colors to specific brightness values.
I think Ugo does this for his topography displays as well.

>I could achieve what I have in mind if there could be more than
>one ScalarMap to Display.RGB per display, each with its own ColorControl 
>and a matching setRange() call,
>or if the one ScalarMap could have several ColorControls, each ColorControl
>with its own setRange().

You can map different RealTypes to Display.RGB and each will have it's
own color control.  I've done this for prototypes of combo radar/sat image
displays, where each Data object (radar and image) has it's own ColorControl
and I can set the enhancements individually.

Don Murray                               UCAR Unidata Program
dmurray@xxxxxxxxxxxxxxxx                        P.O. Box 3000
(303) 497-8628                              Boulder, CO 80307
Unidata WWW Server               http://www.unidata.ucar.edu/
McIDAS Demonstration Machine  http://mcdemo.unidata.ucar.edu/