PointSymbolizer

A PointSymbolizer specifies the rendering of a "graphic symbol" at a point.
If you want to draw a graphic symbol and a text you would better use a ShieldSymbolizer.
Staring from r1793 PointSymbolizer supports Scalable Vector Graphics (SVG) as input images, see examples below.

parameter value default
file path to image file none
width px 4
height px 4
type png tiff (+ svg (trunk)) none
allow_overlap allow text to overlap the point image; true/false false
opacity Opacity of the symbolizer: 0.0 - 1.0 1.0
Development version (trunk)
transform SVG transform identity

Examples

Default


point_symbolizer_1.png


http://media.mapnik.org/images/streets2.png

XML

<PointSymbolizer/> 

Python

sym = PointSymbolizer()

C++

using mapnik::point_symbolizer;
point_symbolizer sym;

Image label


point_symbolizer_2.png

XML

<PointSymbolizer file="/tmp/pub.png" width="16" height="16" type="png" /> 

Python

sym = PointSymbolizer("/tmp/pub.png", "png", 16, 16)
# args are file, type, height, width
sym.allow_overlap = True
sym.opacity = .5

C++

using mapnik::point_symbolizer;
point_symbolizer sym("/tmp/pub.png","png",16,16);

Allow Overlap

Allow Overlap Yes

XML

<PointSymbolizer allow_overlap="yes" file="/Users/artem/projects/ 
openstreetmap/mapnik/symbols/station_small.png" type="png" width="5"  
height="5" />

Do Not Allow Overlap

XML

<PointSymbolizer allow_overlap="no" file="/Users/artem/projects/ 
openstreetmap/mapnik/symbols/station_small.png" type="png" width="5"  
height="5" />

SVG symbols (trunk)

SVG symbol

<PointSymbolizer file="/Users/artem/Desktop/svg/lion.svg" opacity="1.0" transform="scale(0.2,0.2)" />

SVG symbol transformed

<PointSymbolizer file="/Users/artem/Desktop/svg/lion.svg" opacity="1.0" transform="rotate(45) scale(0.4,0.4)" />

Attachments