I have changed the way that VisAD handles missing data and data
excluded by SelectRange. Specifically, it no longer destroys
topology unless there are actually missing values for RealTypes
mapped to spatial DisplayRealTypes (e.g., XAxis, YAxis & ZAxis).
Instead, missing or de-selected values now force color=black.
This is ambigous with the situation that color is actually black,
but I think that users would prefer that ambiguity to displays
turning into isolated sets of points. I welcome feedback on
this, if anyone disagrees. You can see the change by running
'java DisplayTest 21' in the visad/examples directory.
This will not fix the case where a RealType mapped to a spatial
DisplayRealType has missing values, since the spatial topology
really is destroyed. The workaround here is for applications to
explicitly resample data to a new Set which has an intact topology
in displayed coordinates. The examples/SatDisplay.java application
illustrates this nicely - it reads a McIDAS GVAR area with pixels off
the earth and then displays it in earth coordinates. If SatDisplay
tried to display the image without resample, the transform to earth
coordinates by visad.data.mcidas.GVARCoordinateSystem would create
missing latitude and longitude values for off-earth pixels and
hence an invalid topology. The resample is done to a Set in earth
coordinates (which must have a valid topology in earth coordinates).
Thanks to Don Murray of Unidata for the SatDisplay.java application.
Cheers,
Bill
----------------------------------------------------------
Bill Hibbard, SSEC, 1225 W. Dayton St., Madison, WI 53706
hibbard@xxxxxxxxxxxxxxxxx 608-263-4427 fax: 608-263-6738
http://www.ssec.wisc.edu/~billh/vis.html