Samuel Hiatt wrote:
Can anyone help with this last question? I'm hesitant to start hacking
at this 'cause I don't really feel like re-inventing the wheel...
again. Is anyone familiar with the mechanism that is used when
mapserver gets a WMS request with a TIME parameter? Maybe the solution
lies there.
The metadata tags required to make 4D WMS layers work all have "wms_
..." at the beginning. I imagine that extending this functionality to
any type of mapserver request (WMS, mapscript, CGI) would be very
valuable (if it doesn't exist already).
As explained earlier, the wms will take the time parameter and
transform it to a valid time expression and set the FILTER element of
the layer with that expression.
wms_xxx tags are there to hold information so that this tarnsformation
can be done (hold information such as which is the time field on the
layer, extents of valid time, default valid time ...). Most of these
things are specific to the wms specification
In you case, if you are using scripting, you should do the same
operation of transforming the time parameter to a valid time filter and
set it on the layer (time parameter like 2004-10-12 could be transformed
to (`[time_field]` eq `2004-10-12). Although the underlying code exists
in MapsServer to parse different kind of time values, there are no
currently mapscript functions that would do that for you so you need to
write your functions.
You map file does not need to have any wms_xxx parameters. It is a
regular map file and the time is just another type of expression that
can be used on the FILTER element of the layer (or on the class object)
Hope this helps.
Best Regards,
Thanks for your help.
Sam
On 10/12/07, *Samuel Hiatt* <[EMAIL PROTECTED]
<mailto:[EMAIL PROTECTED]>> wrote:
Thanks for the help.
It should be very easy to filter my files for time. What should my
mapfile look like for the 4D layer? The same thing as for a 4D wms
layer, with the tile index and wms_* metadata tags but I would use
mapscript to screen the files? Do you know of a way I might reuse
the screening code that is used for 4D WMS?
Thanks!
Sam
On 10/12/07, *Yewondwossen Assefa* < [EMAIL PROTECTED]
<mailto:[EMAIL PROTECTED]>> wrote:
Samuel Hiatt wrote:
> Hi! Thanks for the reply.
>
> So I suppose when I make a WMS request with TIME Mapserver
applies the
> filter behind the scenes, finding which feature in my
tile_index.shp
> represents the correct time and then processes the raster
pointed to by
> that feature? So if I want to implement the same kind of
thing with
> mapscript I'd have to write the filter myself?
>
That is correct : assuming that the underlying data can be
filtered
using a time field, you need to know the attribute and build the
time
expression and set it using mapscript.
> The reason I am interested in doing this is to extend temporal
> functionality to ka-map. I may end up abandoning that
approach and
> moving to a javascript WMS client (like OpenLayers of
MapBuilder) instead.
>
> Thanks for your help.
>
> Sam
>
>
>
> On 10/11/07, *Yewondwossen Assefa* <[EMAIL PROTECTED]
<mailto:[EMAIL PROTECTED]>
> <mailto: [EMAIL PROTECTED]
<mailto:[EMAIL PROTECTED]>>> wrote:
>
> Hi there,
>
> The Time parameter that is sent with a WMS request is simply
> converted
> to a time expression and set on the filter object of the
layer. In the
> case of wms. the metadata wms_timeitem will be used for the
> attribute name.
> if you are using mapscript, you would need to build the time
> expression manually and set the filter parameter. Please
refer to
> http://mapserver.gis.umn.edu/docs/howto/wms_time_support
(section 2.5)
> to see how time parameters are interpreted.
>
> Best Regards,
>
>
> Samuel Hiatt wrote:
> > I am excited to see that Mapserver supports 4D raster
layers for WMS,
> > but I am curious if this functionality can be extended
to mapscript
> > calls as well? For example, if I set up a raster layer
with a TIME
> > dimension then will it be possible for me to request an
image for a
> > specific time with mapscript? Or would I have to do
this with a
> WMS call?
> >
> > Thanks!
> >
> > Sam
>
>
> --
>
----------------------------------------------------------------
> Assefa Yewondwossen
> Software Analyst
>
> Email: [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
<mailto: [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>>
> http://www.dmsolutions.ca/
>
> Phone: (613) 565-5056 (ext 14)
> Fax: (613) 565-0925
>
----------------------------------------------------------------
>
>
--
----------------------------------------------------------------
Assefa Yewondwossen
Software Analyst
Email: [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
http://www.dmsolutions.ca/
Phone: (613) 565-5056 (ext 14)
Fax: (613) 565-0925
----------------------------------------------------------------
--
----------------------------------------------------------------
Assefa Yewondwossen
Software Analyst
Email: [EMAIL PROTECTED]
http://www.dmsolutions.ca/
Phone: (613) 565-5056 (ext 14)
Fax: (613) 565-0925
----------------------------------------------------------------