[mapserver-users] Return pixel values from raster layers served by mapserver

William Hudspeth bhudspeth at edac.unm.edu
Tue Jan 6 09:09:44 PST 2015


I guess I am a little unclear as to how to proceed. The PG temporal 
index already works for WMS calls. I can pass a time stamp in the URL 
request, and I get the correct image. Do I still need a template for 
returning the x/y query? Or is there another way to return the values 
via a script that sequentially runs through a list of times?


On 01/06/2015 09:37 AM, Lime, Steve D (MNIT) wrote:
> If you want to use one x/y to query multiple rasters, that should be doable in straight MapServer although I guess it depends on how things are organized. I don't know how things work from a query perspective if you use your tile index as just a spatial index and not a temporal index. I'd get the one layer version working then expand it - make sure the PG tileindex works as expected with a query.
>
> -----Original Message-----
> From: William Hudspeth [mailto:bhudspeth at edac.unm.edu]
> Sent: Tuesday, January 06, 2015 10:02 AM
> To: Lime, Steve D (MNIT); mapserver-users at lists.osgeo.org
> Subject: Re: [mapserver-users] Return pixel values from raster layers served by mapserver
>
> I have not yet tried a TEMPLATE....ideally, I am looking for a method to script a series of calls to mapserver to return a list of pixel values for a time series of rasters for a given geographic coordinate. In this case, imagine a time series of air pollution rasters where I want to collect a sequence of values for a given city or location. I want to be able to use these data points to build a time series graph....Any ideas would be appreciated...
>
> Thanks!
>
>
>
> On 01/06/2015 08:44 AM, Lime, Steve D (MNIT) wrote:
>> Ok, so this just a PostGIS-based tiled layer to access GeoTIFF's. You should just be able to do a normal MapServer query.
>>
>>     e.g.
>> http://your.server/cgi-bin/mapserv?map=your.map&mapxy=x+y&qlayer=pm25_
>> monthly&mode=query
>>
>> You'd need to set a TEMPLATE for the pm25_monthly layer. Have you tried that? WMS should work then too but it's simpler to debug using a basic MapServer query.
>>
>> Steve
>>
>> -----Original Message-----
>> From: mapserver-users-bounces at lists.osgeo.org
>> [mailto:mapserver-users-bounces at lists.osgeo.org] On Behalf Of Bill
>> Hudspeth
>> Sent: Tuesday, January 06, 2015 8:59 AM
>> To: mapserver-users at lists.osgeo.org
>> Subject: [mapserver-users] Return pixel values from raster layers
>> served by mapserver
>>
>> Hello,
>>
>> I previously wrote about this issue, but have not found a solution yet. I am running Mapserver 6.4.1, and am using Postgres/Postgis to display a time series of geotiff images. I would like to know the best way for a user to submit a given x,y coordinate pair and return the pixel value for a given image. Is this possible using only the mapserver api? or must I absolutely use mapscript?
>>
>> Currently, I use a PostgreSQL/PostGIS time-enabled table to store the information about the location of the geotiffs and the timestamp associated with them:
>>
>> pm25_monthly=# \d pm25_monthly_global
>>
>>     Table
>> "public.pm25_monthly_global"
>>
>>      Column  |            Type             |
>> Modifiers
>>
>> ----------+-----------------------------+-----------------------------
>> ----------+-----------------------------+--
>> ----------+-----------------------------+----------------
>>
>> oid | integer | default nextval('pm25_monthly_seq'::regclass)
>>     rundate | timestamp with time zone |
>>     datetime    | timestamp with time zone    |
>>     location    | text                        |
>>     timezone    | timestamp without time zone |
>>     the_geom     | geometry(MultiPolygon,4326) |
>>
>> Indexes:
>>        "pm25_monthly_global_oid_key"
>> UNIQUE CONSTRAINT, btree (oid)
>>
>> The 'location' field simply gives the full path to the relevant geotiff on the file system. And, I define the index in the mapfile:
>>
>> #**********LAYER - TILE INDEX FOR PM2.5 RASTERS (Time sensitive)**** LAYER
>>      STATUS ON
>>      NAME "pm25_time_index"
>>      TYPE POLYGON
>>      DATA "the_geom from pm25_monthly_global using unique oid using SRID=4326"
>>      METADATA
>>        "ows_title" "PM25 TIME INDEX"
>>        "ows_srs" "EPSG:4326"
>>        "ows_extent" "-180 -90 180 90" #[minx][miny][maxx][maxy]
>>        "wms_timeformat" "YYYY-MM-DDTHH:MM:SS"
>>        "wms_timeextent" "2011-01-01T00:00:00/2012-12-01T00:00:00"
>>        "wms_timeitem" "timezone"
>>        "wms_timedefault" "2011-01-01T00:00:00"
>>        wcs_resolution '0:10 0:10'
>>      END
>>
>>      #CONNECTION "user=wilbur dbname=pm25_monthly host=localhost password=iiiiiiiiii"
>>      #CONNECTIONTYPE postgis
>>      CONNECTIONTYPE POSTGIS
>>      CONNECTION "host=127.0.0.1 dbname=pm25_monthly user=wilbur password=EUR2_live port=5432"
>>
>>      DATA "the_geom from pm25_monthly_global using unique oid using srid=4326"
>> END
>>
>> #*******LAYER - MONTHLY PM2.5 (Time
>> Sensitive)*********************************
>>
>> LAYER
>>        NAME 'pm25_monthly'
>>        TYPE RASTER
>>        STATUS ON
>>        DEBUG OFF
>>        DUMP TRUE
>>        #TRANSPARENCY 50
>>        #FILTER ""
>>
>>        METADATA
>>            "ows_keywordlist" 'PM2.5 (ug/m3), Global' #wms_keywordlist (Keywordlist)
>>            "ows_description" "Global monthly mean PM 2.5 (ug/m3)concentration"
>>            "ows_name" "Global monthly mean PM2.5 - Concentration Values (ug/m3)"
>>            "ows_label" "Global PM 2.5 (ug/m3)"
>>            "ows_srs" "EPSG:4326 EPSG:900913"
>>            "ows_extent" "-180 -90 180 90" #[minx][miny][maxx][maxy]
>>            "ows_formats" "GEOTIFF"
>>            "ows_nativeformat" "8-bit GeoTIF"
>>            "ows_timeitem" "timezone"
>>            "wms_onlineresource" "http://localhost/cgi-bin/mapserv?map=/var/www/pm25_mapserver/public_html/pm25_ogc_services.map"
>>            "wms_abstract" 'Global monthly mean PM 2.5 (ug/m3)concentration'  #wms_abstract(Abstract)
>>            "wms_opaque" '0' #wms_opaque(layer)
>>            "wms_title" "Global monthly mean PM 2.5 (ug/m3)concentration"
>>            "ows_timeformat" "YYYY-MM-DDTHH:MM:SSZ"
>>            "ows_timeextent" "2011-01-01T00:00:00Z/2012-12-01T00:00:00Z"
>>            "ows_timedefault" "2011-01-01T00:00:00Z"
>>            "wms_enable_request" "*"
>>            "wcs_resolution" "0:10 0:10"
>>            "wcs_bandcount" "1"
>>            "wcs_size" "3600 1800"
>>            layer_name pm25_monthly
>>
>>        END   #METADATA
>>        PROJECTION
>>            "init=epsg:4326"     #WGS84 Decimal Degrees
>>        END  #PROJECTION
>>
>>        TILEITEM "location"
>>        TILEINDEX "pm25_time_index"
>>
>> END  #LAYER
>>
>>
>>
>> Thanks
>> _______________________________________________
>> mapserver-users mailing list
>> mapserver-users at lists.osgeo.org
>> http://lists.osgeo.org/mailman/listinfo/mapserver-users



More information about the mapserver-users mailing list