Clemens,
Thank you so much for your quick response. It seems clear that the 3rd
values in the origin/offset are for the 3rd dimension of
EPSG:geographicCRS:4327. I couldn't find code 4327 from the EPSG table I
have but I believe that must be a 3D CRS.
One of the reasons that I am confused on the offsetVectors in the ISO19136
example was due to the values used in the example. Fractional values are
used in the offset vectors while the figure (Figure 6) does not provide any
tick marks in both axes.
The example says that the origin is at (1.2, 3.3); the p1 offset vector is
(1.1, 2.2); and the p2 offset vector is (2.0, 1.0). (NOTE, I omitted the
3rd dim). I couldn't figure out how these values can be valid.
Question: What are the values in the offset vectors?
Answers:
1. They are the differences between the end points and start points of the
p1 and p2 (in this case the start point is origin, O).
This is what I assumed and used in the example I posted yesterday (i.e.,
1.0, 0.0 and 0.0, 2.0). It's also the one I obtained by sending the WCS
request to webapps.datafed.net.
If this is correct, then the first offset of p1 must be negative because
along the 1st (horizontal) axis the value of the p1 vector start point
(i.e., origin) is larger than that of its end point (the grid in the Figure
6 is rotated counterclockwise).
2. They are the coordinate values, in u/v coordinate, of the end points of
p1 and p2, not the difference between the neighboring grid posts.
If this is correct, then the p1 values cannot be correct because origin is
at (1.2, 3.3) and the 2nd (i.e., vertical) coordinate of the end point of
p1 is larger than origin, thus cannot be 2.2 (<3.3).
3. Others?
I also tried by assuming the 1st of the 3 dims is the unknown dim and used
the last two dims as u/v but I also obtained contradictory results. Will
you be able to help me understand what are exactly the values in the
offsetVectors? Thanks.
As to the grid origin, it seems completely valid to define the origin
outside a rectifiedGrid. There will be, however, confusions when the
rectifiedGrid is used to define a desired output grid in WCS getCoverage
request. The first will be confusion between the origin of this grid and
the origin of the array data. In many cases, the 2D grid is actual a 2D
image. The OGC image CRS definition limits origin to be at the corner of
the image, not even at an internal pixel (cell). This is also true to some
existing data models. Like I said, in HDF-EOS, the grid data model does
not have this origin and low/high position information. It defines grid
origin at one of the four corners of the grid. I have limited knowledge in
geoTiff but based on what I know, there is also no such grid coordinate
information in geoTiff. All it takes is an image, with geotie information
or transformation information or geo-coordinate information defined based
on image coordinate with origin at an image corner. The second will be the
encoding of this information. Non-standard, user-defined metadata will be
needed to record this grid coordinate information for such files as HDF-EOS
and GeoTiff (attributes in HDF-EOS or tags in GeoTiff). The third will be
the usefulness of this grid envelope information even multiple grids are
involved. When multiple smaller grids are combined into a larger single
grid, the locations of each components grids are uniquely defined based on
the ground CRS without needing to refer to the low/high values of these
grid in the unified grid. If the intention is to make the unified grid's
low to be (0,0), all it says is just the number of rows and columns, i.e.,
the "high" values. Anyway, these are just my thoughts. It certainly will
not hurt to use gml:rectifiedGrid in WCS requesting/response. What is
important is to make the concept clear and to provide examples showing how
the information can be used, which is the task of the WCS RWG.
Regards.
-- Wenli
At 12:05 2006-2-28 +0100, Clemens Portele wrote:
Hi Wenli,
I will try to answer some of your questions based on my understanding, but
I am not an expert on grids, so I hope others will correct me if I am wrong.
1) 3d origin / offset vectors and 2d grid: While the grid itself is two
dimensional, it spans a plane (defines a two-dimensional grid coordinate
system) in a 3d coordinate reference system. Therefore the origin and the
two defining axis vectors have three dimensions.
2) GRID-B: "2." is correct. The origin is the origin of the grid
coordinate system, but not necessarily a corner of the grid. Choosing the
origin is somewhat arbitrary and just a convention - like choosing
Greenwich for the zero meridian. So, my assumption so far was that
typically when you specify a grid for each coverage individually then you
would likely end up with a grid envelope that has (0 0) for the low value,
but when you want to use a common grid system across a series of coverages
then this may be different. By the way, if you have ISO 19123, I think it
has additional examples for rectified grids.
Best regards,
Clemens