Changes between Initial Version and Version 1 of PetascopeSubsets


Ignore:
Timestamp:
Oct 31, 2012, 2:56:35 PM (12 years ago)
Author:
Piero Campalani
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • PetascopeSubsets

    v1 v1  
     1= Subsets in Petascope =
     2
     3This page serves as reference point for the conclusions that have been reached in the discussion '''rasdaman-users::Subsets and pixel-domain indexes''' (''Alan'', ''Peter'', ''Stephan'', ''Marcus'' and ''Piero'' | July 2012), regarding how subsets should be interpreted by Petascope.
     4
     5In general, pixel validity is meant as half open `[min,max)`, whereas the subsets are meant as closed intervals `[a,b]`.
     6Subsets with extent smaller than a pixel resolution return the pixel(s) that include(s) it.
     7
     8This is probably better understood by means of examples:
     9
     10{{{
     11--------------------
     12mean_summer_airtemp (EPSG:4326)
     13[0:885, 0:710]
     14x(111.975, 156.275)
     15y(-44.525, -8.975)
     16res(0.05, 0.05)
     17--------------------
     18
     19   130.975  131.025  131.075  131.125  131.175
     20X:  ...o--------o--------o--------o--------o...
     21         cell380  cell381  cell382  cell383
     22          [s1]
     23       [== s2 ==]
     24         [==== s3 ====]
     25         [======== s4 =======]
     26    [=================== s5 ===================] (BEYOND BBOX)
     27
     28    -22.975  -22.925  -22.875  -22.825  -22.795
     29Y:  ...o--------o--------o--------o--------o...
     30         cell280  cell279  cell278  cell277
     31          [s1]
     32       [== s2 ==]
     33         [==== s3 ====]
     34         [======== s4 =======]
     35    [=================== s5 ===================] (BEYOND BBOX)
     36
     37s1: m[380:380, 280:280]
     38 - for m in (mean_summer_airtemp) return encode(trim(m, {x(131:131.01), y(-22.951:-22.95)}),"csv")
     39 - http://localhost:8080/petascope/wcs2?
     40      service=WCS&version=2.0.0&request=GetCoverage&coverageid=mean_summer_airtemp&
     41      subset=x(131,131.01)&subset=y(-22.951,-22.95)
     42
     43s2: m[380:381, 279:280]
     44 - for m in (mean_summer_airtemp) return encode(trim(m, {x(130.975:131.025), y(-22.975:-22.925)}),"csv")
     45 - http://localhost:8080/petascope/wcs2?
     46      service=WCS&version=2.0.0&request=GetCoverage&coverageid=mean_summer_airtemp&
     47      subset=x(130.975,131.025)&subset=y(-22.975,-22.925)
     48
     49s3: m[380:381, 279:280]
     50 - for m in (mean_summer_airtemp) return encode(trim(m, {x(131:131.05), y(-22.95:-22.9)}),"csv")
     51 - http://localhost:8080/petascope/wcs2?
     52      service=WCS&version=2.0.0&request=GetCoverage&coverageid=mean_summer_airtemp&
     53      subset=x(131,131.05)&subset=y(-22.95,-22.9)
     54
     55s4: m[380:382, 278:280]
     56 - for m in (mean_summer_airtemp) return encode(trim(m, {x(131:131.1), y(-22.95:-22.85)}),"csv")
     57 - http://localhost:8080/petascope/wcs2?
     58      service=WCS&version=2.0.0&request=GetCoverage&coverageid=mean_summer_airtemp&
     59      subset=x(131,131.1)&subset=y(-22.95,-22.85)
     60
     61s5: m[0:885, 0:710]
     62 - for m in (mean_summer_airtemp) return encode(trim(m, {x(100:200), y(-50:50)}),"csv")
     63 - http://localhost:8080/petascope/wcs2?
     64      service=WCS&version=2.0.0&request=GetCoverage&coverageid=mean_summer_airtemp&
     65      subset=x(100,200)&subset=y(-50,50)
     66
     67-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
     68
     69TIME AXIS EXAMPLE:
     70
     71     09h20    10h20    11h20    12h20    13h20
     72T:     o--------o--------o--------o--------o
     73          cell0    cell1    cell2    cell3
     74          [s1]
     75       [== s2 ==]
     76         [==== s3 ====]
     77         [======== s4 =======]
     78    [=================== s5 ===================]
     79
     80------------------------------------------------------------------------------------------------
     81s1: (9h25,9h30) --> [LOx:HIx, LOy:HIy, 0:0]
     82 - http://localhost:8080/petascope/wcs2?
     83     service=WCS&version=2.0.0&request=GetCoverage&coverageid=MODIS_33N_2010170_WGS84&
     84     subset=x(10,11)&subset=y(45,46)&subset=t(2010-06-19T09:25,2010-06-19T09:30)
     85 - for c in (MODIS_33N_2010170_WGS84) return encode(
     86    trim(
     87      c,{t:"http://www.opengis.net/def/crs/ISO/0/8601"                        ("2010-06-19T09:25":"2010-06-19T09:30"),
     88         y:"http://kahlua.eecs.jacobs-university.de:8080/def/crs/EPSG/0/4326" (45:46),
     89         x:"http://kahlua.eecs.jacobs-university.de:8080/def/crs/EPSG/0/4326" (10:11)}),
     90  "csv")
     91------------------------------------------------------------------------------------------------
     92s2: (9h20,10h20) --> [LOx:HIx, LOy:HIy, 0:1]
     93 - http://localhost:8080/petascope/wcs2?
     94      service=WCS&version=2.0.0&request=GetCoverage&coverageid=MODIS_33N_2010170_WGS84&
     95      subset=x(10,11)&subset=y(45,46)&subset=t(2010-06-19T09:20,2010-06-19T10:20)
     96 - for c in (MODIS_33N_2010170_WGS84) return encode(
     97    trim(
     98      c,{t:"http://www.opengis.net/def/crs/ISO/0/8601"                        ("2010-06-19T09:20":"2010-06-19T10:20"),
     99         y:"http://kahlua.eecs.jacobs-university.de:8080/def/crs/EPSG/0/4326" (45:46),
     100         x:"http://kahlua.eecs.jacobs-university.de:8080/def/crs/EPSG/0/4326" (10:11)}),
     101  "csv")
     102------------------------------------------------------------------------------------------------
     103s3: (10h00,11h00) --> [LOx:HIx, LOy:HIy, 0:1]
     104 - http://localhost:8080/petascope/wcs2?
     105      service=WCS&version=2.0.0&request=GetCoverage&coverageid=MODIS_33N_2010170_WGS84&
     106      subset=x(10,11)&subset=y(45,46)&subset=t(2010-06-19T10:00,2010-06-19T11:00)
     107 - for c in (MODIS_33N_2010170_WGS84) return encode(
     108    trim(
     109      c,{t:"http://www.opengis.net/def/crs/ISO/0/8601"                        ("2010-06-19T10:00":"2010-06-19T11:00"),
     110         y:"http://kahlua.eecs.jacobs-university.de:8080/def/crs/EPSG/0/4326" (45:46),
     111         x:"http://kahlua.eecs.jacobs-university.de:8080/def/crs/EPSG/0/4326" (10:11)}),
     112  "csv")
     113------------------------------------------------------------------------------------------------
     114s4: (9h30,11h50) --> [LOx:HIx, LOy:HIy, 0:2]
     115 - http://localhost:8080/petascope/wcs2?
     116      service=WCS&version=2.0.0&request=GetCoverage&coverageid=MODIS_33N_2010170_WGS84&
     117      subset=x(10,11)&subset=y(45,46)&subset=t(2010-06-19T09:30,2010-06-19T11:50)
     118 - for c in (MODIS_33N_2010170_WGS84) return encode(
     119    trim(
     120      c,{t:"http://www.opengis.net/def/crs/ISO/0/8601"                        ("2010-06-19T09:30":"2010-06-19T11:50"),
     121         y:"http://kahlua.eecs.jacobs-university.de:8080/def/crs/EPSG/0/4326" (45:46),
     122         x:"http://kahlua.eecs.jacobs-university.de:8080/def/crs/EPSG/0/4326" (10:11)}),
     123  "csv")
     124------------------------------------------------------------------------------------------------
     125s5: (9h00,14h00) --> [LOx:HIx, LOy:HIy, 0:3]
     126 - http://localhost:8080/petascope/wcs2?
     127      service=WCS&version=2.0.0&request=GetCoverage&coverageid=MODIS_33N_2010170_WGS84&
     128      subset=x(10,11)&subset=y(45,46)&subset=t(2010-06-19T09:00,2010-06-19T14:00)
     129 - for c in (MODIS_33N_2010170_WGS84) return encode(
     130    trim(
     131      c,{t:"http://www.opengis.net/def/crs/ISO/0/8601"                        ("2010-06-19T09:00":"2010-06-19T14:00"),
     132         y:"http://kahlua.eecs.jacobs-university.de:8080/def/crs/EPSG/0/4326" (45:46),
     133         x:"http://kahlua.eecs.jacobs-university.de:8080/def/crs/EPSG/0/4326" (10:11)}),
     134  "csv")
     135------------------------------------------------------------------------------------------------
     136}}}