[OSM-dev] Question about ShieldSymbolizer in template file

Brian Peschel brianp at occinc.com
Wed May 28 21:11:11 BST 2008


I was looking at the template file osm-template.xml.  In there I see a 
definition for a ShieldSymbolizer.

  <Style name="roads-text">
    <Rule>
      <Filter>[highway] = 'motorway' and [length] = 1</Filter>
      <MaxScaleDenominator>500000</MaxScaleDenominator>
      <MinScaleDenominator>100</MinScaleDenominator>
      <ShieldSymbolizer name="ref" face_name="DejaVu Sans Bold" 
size="11" fill="#809bc0" placement="line" 
file="%SYMBOLS_DIR%/motorway_shield1.png" type="png" width="17" 
height="17" min_distance="100"/>
    </Rule>

What interests me is the 'placement' attribute.  (I am not sure if this 
should be in the mapnik mailing list or this one, but since it is the 
OSM template file, I am posting here).  Looking at the mapnik source 
code for the load_map() method, this isn't supported.  mapnik never 
reads this field out of the xml file.

Since the shield_symbolizer class inherits from the text_symbolizer 
class, I know it can be set, it just isn't being done.

Is this an oversight on the mapnik side?  Or does this attribute have no 
meaning for a shield symbolizer and (probably) should be removed from 
the template file?

Thanks!
- Brian





More information about the dev mailing list