[gdal-dev] GDAL WCS driver
Jukka Rahkonen
jukka.rahkonen at mmmtike.fi
Sat Oct 6 02:25:50 PDT 2012
Craig Bruce <csbruce <at> cubewerx.com> writes:
>
base_url?datastore=cwtile&SERVICE=WCS&VERSION=1.0.0&REQUEST=
GetCoverage&COVERAGE=terrapixel&FORMAT=GeoTIFF&
BBOX=260489,3667254,260490,3667255
&WIDTH=2&HEIGHT=2&CRS=EPSG:26915
> As you can see in the gdalinfo of the WCS itself, the pixel resolution
> is 0.5m, but this request is for 1.0m, since WCS BBOX= coordinates use
> pixel-is-point sematics rather than pixel-is-area, this is requesting a
> different resolution from the native resolution and is going outside of
> the source-data area, which is advertised in the WCS
> DescribeCoverage as:
For me the request is quite normal. WCS supports resampling and also
requests going partly outside the coverage area. This is from the 1.0.0
standard:
"For any part of the coverage domain that is partly or entirely
contained in the Bounding Box defined by BBOX, the server must
return coverage data in the "requested format.
Do you think that GDAL does not get the information it needs by
doing the query as it does with 1 m pixels?
>
base_url?datastore=cwtile&SERVICE=WCS&VERSION=1.0.0&REQUEST=
GetCoverage&COVERAGE=terrapixel&FORMAT=GeoTIFF&
BBOX=260489,3667245,260499,3667255
&WIDTH=20&HEIGHT=20&CRS=EPSG:26915
>
> which is wrong since it hasn't been converted to the pixel-is-point
> semantic of the WCS. It's doing an awkward, shifted resampling of the
> source data.
WCS 1.0.0 does not discuss about pixel is point /pixel is area. Standard
says "A GetCoverage request may include a 1-D, 2-D, or 3-D spatial
constraint expressed as a rectangle (or line, or parallelepiped)
aligned with the axes of the spatial reference system given in the
CRS parameter. Such a constraint is expressed as a BBOX parameter
representing the coordinates of the southwest/lower and northeast/upper
corners (in that order) as comma-separated numbers (e.g., minx, miny,
maxx, maxy)."
>From what I know the interpretation that BBOX presents pixel outmost
extents is used by WCS servers like Mapserver and Geoserver.
WCS 1.1.0 is the first version which clearly describes the pixel
is point strategy.
> Apparently, other people have run into this problem, too:
>
> Or are WCSes supposed report data extents as pixel-is-point in
> GetCapabilities and DescribeCoverage but accept BBOXes as pixel-is-area
> in GetCoverage? That would be bizarre. I can't find a place in the WCS
> 1.0.0 spec where it actually explicitly clears this up. Does anyone know
> what MapServer does about this?
WCS is bizarre. Version 1.0.0 behaves in a way that feels natural
for WMS users because the BBOX means the same. If you want pixel
is point logic, use WCS 1.1.0 or 2.0.
-Jukka Rahkonen-
More information about the gdal-dev
mailing list