[mapserver-users] How to display vector symbols (direction and magnitude) in MapServer?
Havard Tveite
havard.tveite at umb.no
Tue Aug 19 01:06:29 PDT 2008
I don't think ANGLE can be used in your case (if you do not
use scripting to calculate the ANGLEs yourself for each
generated map).
Is there a need for a new TAG - for instance with the name
"ORIENTATION", that could be used to specify compass
directions (0=north, 90=east, 180=south, 270=west) for
point symbols?
Håvard Tveite
John Maurer wrote:
> Thanks for the suggestion, Daniel! I was unaware of the ANGLE parameter
> in MapServer 5.0. One remaining concern I have, though, is how the angle
> will be interpreted by MapServer? Will -90 degrees always point to the
> South Pole regardless of the map projection I'm using (e.g. a polar
> stereo map centered on the South Pole), or will it always just point to
> the bottom of the map image regardless of the projection? i.e. Does
> MapServer interpret the degrees spatially or just in terms of the image?
> Unfortunately, if the latter is the case (which I suspect it probably
> is) it will not solve my problem. Do you know? Thanks again!
> Cheers,
> John Maurer
>
> Daniel Morissette wrote:
>> John Maurer wrote:
>>> Dear MapServer Users,
>>> Does anybody have experience displaying vectors in MapServer? By
>>> "vectors", I don't mean the usual vector vs. raster difference. What
>>> I mean is displaying data like wind vectors, which are point
>>> locations that have both a direction (degrees) and magnitude (e.g.
>>> meters per second). Usually these are displayed as arrows, which each
>>> point in a certain direction and whose tails vary in length depending
>>> on the magnitude each measurement. Is this possible in MapServer?
>>> Thanks for any suggestions!
>> You could bind the symbol size and angle to an attribute in your layer
>> definition.
>>
>> If you can precompute the size in pixels based on the wind speed and
>> store that to an 'arrowsize' attribute then you could use a layer
>> defn's like this:
>>
>> LAYER
>> TYPE POINT
>> ...
>> CLASS
>> SYMBOL 'arrow'
>> ANGLE [direction]
>> SIZE [arrowsize]
>> COLOR 0 0 0
>> END
>> END
>>
>>
>> If you can't precompute the arrow size in pixels, then you could use
>> classes based on the wind speed attribute:
>>
>> LAYER
>> TYPE POINT
>> ...
>> CLASSITEM 'windspeed'
>> CLASS
>> EXPRESSION ([windspeed] < 5)
>> SYMBOL 'arrow'
>> ANGLE [direction]
>> SIZE 10
>> COLOR 0 0 0
>> END
>> CLASS
>> EXPRESSION ([windspeed] < 25)
>> SYMBOL 'arrow'
>> ANGLE [direction]
>> SIZE 15
>> COLOR 0 0 0
>> END
>> CLASS
>> EXPRESSION ([windspeed] < 100)
>> SYMBOL 'arrow'
>> ANGLE [direction]
>> SIZE 20
>> COLOR 0 0 0
>> END
>> CLASS
>> # No expression ... catch all for windspeed > 100
>> SYMBOL 'arrow'
>> ANGLE [direction]
>> SIZE 25
>> COLOR 0 0 0
>> END
>> END
>>
>>
>> Daniel
>
> --
> John Maurer
> Web/Database Applications Engineer
> National Snow and Ice Data Center (NSIDC)
> University of Colorado at Boulder
> http://cires.colorado.edu/~maurerj
> +1-303-586-1677
> ------------------------------------
> "Without geography, you're nowhere!"
>
>
> _______________________________________________
> mapserver-users mailing list
> mapserver-users at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/mapserver-users
>
--
Håvard Tveite
Department of Mathematical Sciences and Technology, UMB
Drøbakveien 31, POBox 5003, N-1432 Ås, NORWAY
Phone: +47 64965483 Fax: +47 64965401 http://www.umb.no/imt/
More information about the MapServer-users
mailing list