Greetings!
What follows are several questions I have been trying to figure out for
a while with little or no success. (Yes, I'm still climbing the VisAD
learning curve! ;-) I am very grateful to anyone who could shed light on
my darkness!
First topic:
I am working with a netCDF file that has the following data:
(lat_index, lon_index) -> DEM
Where *_index is not the actually lat or lon, but Lat or Lon from the
netCDF file (see below). Also DEM is the elevation from a Digital
Elevation Model.
I would like to obtain the following:
latitude = corner_lat - lat_index*LatGridSpacing
longitude = corner_lon + lon_index*LonGridSpacing
elevation = DEM
I have all the data I need in the netCDF file, specifically, (lat_index
= Lat, corner_lat = Latitude, LatGridSpacing = LatGridSpacing):
netcdf kiwaTerrain {
dimensions:
Lat = 1079 ;
Lon = 1298 ;
variables:
float DEM(Lat, Lon) ;
DEM:Units = "Meters" ;
// global attributes:
:TypeName = "DEM" ;
:DataType = "LatLonGrid" ;
:Latitude = 37.7833333333342 ;
:Longitude = -117.358333333342 ;
:Height = -9.09494701772928e-10 ;
:Time = 0 ;
:FractionalTime = 0. ;
:attributes = "" ;
:LatGridSpacing = 0.00833333333333 ;
:LonGridSpacing = 0.00833333333333 ;
:MissingData = -99900.f ;
:RangeFolded = -99901.f ;
data:
DEM
1764, 1766, 1792, 1769, 1769, 1748, 1744, 1718, 1713, 1705, 1689, 1667,
1648, 1643, 1639, 1637, 1638, 1645, 1648, 1660, 1676, 1688, 1695, 1702,
1727, 1757, 1826, 1878, 1805, 1812, 1822, 1751, 1715, 1690, 1666, 1655,
but would like to know how to extract the desired information from the
netCDF file so I can complete the equations above. Does VisAD have the
capability to extract such values?
--------------
On another topic: I tried to create
Unit kilometer
try
{ kilometer = visad.data.units.Parser.parse("kilometer"); }
catch (ParseException P)
{ System.out.println("Parse exception: " + P); }
r = RealType.getRealType("R", kilometer, null);
h = RealType.getRealType("Height", kilometer, null);
s = RealType.getRealType("SlantRange", kilometer, null);
<snip>
xMap = new ScalarMap(s, Display.XAxis);
yMap = new ScalarMap(h, Display.YAxis);
but the unit(s) displayed are:
SlantRange: xxx.xxxxx 1000.0 m
Height: yyy.yyyyy 1000.0 m
I followed Tom Whittaker's example for defining units, but perhaps I am
missing something with the ScalarMap?
--------------
topic 3: DataReferenceImpl
I would like to create a line with one anchored point *and of constant
length*, basically a ray which the user can grab the outer end to trace
a circle.
The only examples I have seen so far are a line which uses one
"northing" point (Ugo's example in Section 6.4) and a line defined by
two moveable points.
Can I create such a line as described?
(whew)
Thank you very much for your help!
-kevin.
--
+------------------------------------------------------------+
Kevin L. Manross [KD5MYD] (405)-366-0557
CIMMS Research Associate kevin.manross@xxxxxxxx
[NSSL-WRDD/SWATN] http://www.cimms.ou.edu/~kmanross
"My opinions are my own and not representative of CIMMS, NSSL,
NOAA or any affiliates"
+------------------------------------------------------------+