Hi,

Because no response on user list, I'm forwarding my (too long?) question
to here hoping to meet someone with deeper netcdf implementation knowledge.

tldr; Should it be able to server a netcdf with data with elevation AND
time in a normal/known epsg crs (non latlon, but like a national epsg).
I fail to load it in Geoserver. A 'simple' netcdf in epsg:xxxx without
time or elevation loads fine.

Regards,

Richard Duivenvoorde

PS Example data + python to create it here: http://duif.net/ncgeoserver.zip


-------- Forwarded Message --------
Subject: [Geoserver-users] netcdf in non latlon grid
Date: Wed, 9 Jan 2019 18:15:20 +0100
From: Richard Duivenvoorde <[email protected]>
Reply-To: [email protected]
To: GeoServer Mailing List List <[email protected]>

Hi List,

I've succesfully created a simple minimal netcdf file (using Python)
with time-range-based data in a latlon grid:
like: float fakedata(time=3, z=3, lat=3, lon=4)

I can load the file (with several layers) both in QGIS (as mesh) and in
Geoserver (2.14.1 with netcdf extension) (with both time and elevation
dimensions): NICE!

BUT: we also want to project the data to our national grid: epsg:28992

If I understand docs correct, this should be possible (so: a known epsg,
no custom crs)?

Using gdal somebody provided me with a simple example in which instead
of lat lon the coordinates are x and y, and a CRS definition is defined:
"oblique_stereographic" and used as 'grid_mapping'.
But this is only 2D: (y=3, x=4)

With my python-netcdf-creation script I'm able to do that, and Geoserver
loads the data as one layer.
But trying to add time and/or z I fail:

Caused by: org.geotools.feature.IllegalAttributeException:Unknown
attribute time:null value:null
        at
org.geotools.feature.simple.SimpleFeatureImpl.setAttribute(SimpleFeatureImpl.java:238)
        at
org.geotools.imageio.netcdf.VariableAdapter.setFeatureTime(VariableAdapter.java:1327)
        at
org.geotools.imageio.netcdf.VariableAdapter.createFeature(VariableAdapter.java:1280)
        at
org.geotools.imageio.netcdf.VariableAdapter.getFeatures(VariableAdapter.java:1232)
        at
org.geotools.imageio.netcdf.NetCDFImageReader.initIndex(NetCDFImageReader.java:363)

or other silent issues.

I tried to google and look into the code to find the magic combination
of attributes/variables needed to be defined, but after hours of
fiddling, I tend to give up and ask for help :-)

So Question: should Geoserver be able to serve
fakedata(time=3, z=3, y=3, x=4)
with given crs, just as it is able to serve:
fakedata(time=3, z=3, lat=3, lon=4) ?

If anybody has a working example of such a grid I'm also happy, as that
proves that my feeling is right that it should be possible and I miss
something...

The python code and working latlon and not-working epsg28992 output
netcdf's are here http://duif.net/ncgeoserver.zip if somebody is willing
to have a look.

Regards,

Richard Duivenvoorde




_______________________________________________
Geoserver-users mailing list

Please make sure you read the following two resources before posting to
this list:
- Earning your support instead of buying it, but Ian Turton:
http://www.ianturton.com/talks/foss4g.html#/
- The GeoServer user list posting guidelines:
http://geoserver.org/comm/userlist-guidelines.html

If you want to request a feature or an improvement, also see this:
https://github.com/geoserver/geoserver/wiki/Successfully-requesting-and-integrating-new-features-and-improvements-in-GeoServer


[email protected]
https://lists.sourceforge.net/lists/listinfo/geoserver-users


_______________________________________________
Geoserver-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

Reply via email to