[mapserver-users] Scaling Image Symbol Offset

Havard Tveite havard.tveite at umb.no
Fri Jul 17 01:50:13 PDT 2009


RFC 45 suggests several rendering improvements for Mapserver,
including adding a tag (CENTER/ORIGIN) for specifying the
centre of a symbol.  This feature has, however, not been
given priority yet (there are workarounds for the most
important cases).

http://mapserver.org/development/rfc/ms-rfc-45.html

--------------------------------------------------------------
CENTER/ORIGIN [x y]

Defines the centre of the symbol using decimal pixels (x axis increasing to the right, y axis increasing downwards).

     * Is used for placing a point symbol on the map or on a “decorated” line
     * Defines the center of rotation if an ANGLE is specified for point symbols.
     * Default value is the centre of the symbol’s bounding box.
     * Applies to TYPE ellipse, vector, pixmap, truetype.
--------------------------------------------------------------

Håvard

David Martin wrote:
> I am developing a new application and am rendering around a load of 
> graphic symbol layers using a Map file layer such as
> 
> LAYER
> 
>     NAME        cape_headland_point
> 
>     STATUS      ON
> 
>     GROUP       all
> 
>     DATA        'ExplorOz/Places/Cape,Headland,Point'
> 
>     TYPE        POINT
> 
>     SYMBOLSCALE 1000000
> 
>     CLASS
> 
>         STYLE
> 
>             SYMBOL [POIImage]
> 
>             MAXSIZE 15
> 
>             MINSIZE 4
> 
>             SIZE 8
> 
>         END
> 
>     END
> 
>     METADATA
> 
>           "wms_title"         "Capes, Headlands & Points"
> 
>       END
> 
>     PROJECTION
> 
>         "+proj=longlat +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +no_defs"
> 
>     END
> 
> END
> 
> As you can see I am sizing the output symbol which is a 20x20px PIXMAP 
> image – this is working great however the position of the image needs to 
> be OFFSET up by half the size of the image (to make the actual point be 
> the center of the image) – I have tried using OFFSET however when the 
> image size changes (based on SYMBOLSCALE)the offsets are wrong. Is there 
> a way to OFFSET image symbols based on the SYMBOLSCALE and MAX/MIN SIZES?
> 
> Regards
> 
> David
> 

-- 
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