Hi Tom-
I am interested in what you describe below and am wondering if anyone
else is working on a GeoTools to netCDF CDM Scientific Data types
library. In particular, I'd like to take advantage of GeoTools'
GeoTIFF capabilities and would like to read a GeoTIFF into a CDM GeoGrid
so I could view/manipulate them in the Integrated Data Viewer (IDV). A
key piece of that would be to support the projections which I believe is
what you are describing below.
Am I reading that correctly and/or is anyone else working on a GeoTools
to netCDF library?
Thanks.
Don
On 6/11/11 9:54 PM, Tom Kunicki wrote:
As a follow up to my posting of the NetCDF-Java/CF projection to
GeoTools/GeoAPI converter utility posting. As background we are
doing geoprocessing of vector geometries obtained from Shapefiles or
GML (often via WFS). Given the large number of CRS that maybe used
with these vector geometries (relative to what's available with CF)
and the desire to perform the calculations in the CRS used with the
vector geometries we generate a GeoTools/GeoAPI CRS instance so that
we can transform the CF grids into the vector geometry CRS.
An issue we have with NetCDF-Java is that not the NetCDF-Java
Projection instance isn't passing through the ellipsoid parameters
for Projection implementations that don't have transformation to
ellipsoids implemented (even though the CF spec. Ideally we could
extract these from Projection.getProjectionParameters() so that we
can generate a fully parameterized GeoAPI CoordinateReferenceSystem
instance which will then use these parameters. Given the abstraction
of GridDatatype/GridCoordSystem is very difficult to extract these
parameters from the original CF grid_mapping. Could we get these
parameters (semi_major_axis, semi_minor_axis and inverse_flattening)
in the Projection instance for all Projections if they are in the
grid_mapping for the grid?
One thing i've been hoping to do is implement a
ProjectionProviderFactory type architecture for NetCDF-Java that
would allow the implementation of NetCDF-Java Projection instances
using GeoTools or Geotk. One could register a factory using a
service registration mechanism then get back Projection
implementations back by their API of choice. This would remove the
need for NetCDF-Java to re-implement projection transformations that
are already implemented in GeoTools or Geotk. The CRSUtility class I
provided earlier could be the foundation/crosswalk for a
GeoToolsProjectionProviderFactory. One can easily generate
transforms and their inverses once the CoordinateReferenceSystem
instance is generated. These transforms can the be wrapped in a
NetCDF-Java Projection instance This would also allow CF to
incorporate new projections and minimize implementation time in
NetCDF-Java.
Tom Kunicki Center for Integrated Data Analytics U.S. Geological
Survey 8505 Research Way Middleton, WI 53562
_______________________________________________ netcdf-java mailing
list netcdf-java@xxxxxxxxxxxxxxxx For list information or to
unsubscribe, visit: http://www.unidata.ucar.edu/mailing_lists/
--
Don Murray
NOAA/ESRL/PSD and CIRES
303-497-3596
http://www.esrl.noaa.gov/psd/people/don.murray/