Table of Contents

MapServer Styles

See this tutorial: Cartographic Symbol Construction with MapServer.

Railway

IMAGETYPE agg_png

SYMBOL
  NAME "circle"
  TYPE ELLIPSE
  FILLED TRUE
  POINTS
    1 1
  END
END

SYMBOL
  NAME "rectangle-railway"
  TYPE ELLIPSE
  POINTS
    1 1
  END
  FILLED TRUE
  STYLE
    8 12 8 12
  END
END

LAYER
  NAME "Railways"
  STATUS DEFAULT
  TYPE LINE
  DATA "railways.shp"
  CLASS
    MAXSCALEDENOM 500000
    STYLE
      COLOR 102 102 102
      SYMBOL "circle"
      SIZE 4
    END
    STYLE
      COLOR 255 255 255
      SYMBOL "rectangle-railway"
      SIZE 2
    END
  END
  CLASS
    MAXSCALEDENOM 10000000
    STYLE
      COLOR 102 102 102
    END
  END
END

Repeated Vector Symbol

See also this page about vector symbols which follow the line orientation (negative GAP).

SYMBOL
  NAME 'triangle'
  TYPE VECTOR
  POINTS
    0 0
    0 1
    1 0
    0 0
  END
  FILLED TRUE
  GAP 2
END

LAYER
  NAME "curves"
  STATUS DEFAULT
  TYPE LINE
  DATA "curves.shp"
  CLASS
    STYLE
      COLOR 128 16 16
    END
    STYLE
      COLOR 212 32 32
      SYMBOL 'triangle'
      ANGLE 35
      SIZE 12
    END
  END
END

Simbolo con offset rispetto alla mappa

MapServer 5.6. L'offset del simbolo (in questo caso due cerchi, uno rosso e uno verde) è specificato rispetto al bordo della mappa.

SYMBOL
  NAME "circle"
  TYPE ELLIPSE
  POINTS
    1 1
  END
  FILLED true
END

LAYER
  NAME "curves"
  STATUS DEFAULT
  TYPE LINE
  DATA "curves.shp"
  CLASS
    STYLE
      SIZE 1
      COLOR 0 0 0
    END
    STYLE
      SYMBOL "circle"
      SIZE 6
      COLOR 212 32 32
      OFFSET 1 -3
    END
    STYLE
      SYMBOL "circle"
      SIZE 6
      COLOR 32 212 32
      OFFSET 1 3
    END
  END
END

Simbolo con offset rispetto alla linea

MapServer 5.6. L'offset è calcolato rispetto ad una retta tangente alla linea (secondo parametro di OFFSET pari a -99):

SYMBOL
  NAME "circle"
  TYPE ELLIPSE
  POINTS
    1 1
  END
  FILLED true
END

LAYER
  NAME "curve_livello"
  STATUS ON
  TYPE LINE
  DATA "shape"
  CLASS
    STYLE
      WIDTH 3
      COLOR 0 0 0
    END
    STYLE
      SYMBOL "circle"
      SIZE 6
      COLOR 212 192 32
      OFFSET 3 -99
    END
  END
END

Simbolo con offset su outline di poligono

Per dare uno stile all'outline di un poligono si utilizza il trucco di ripetere il layer due volte, la prima indicando TYPE POLYGON (per dare un bordo semplice ed il riempimento), la seconda indicando TYPE LINE per dare dare la simbolizzazione all'outline.

In questo esempio il bordo semplice (nero) viene stampato con una terza passata, per nascondere alcuni artefatti del bordo simbolizzato (rosso).

SYMBOL
  NAME "circle"
  TYPE ELLIPSE
  POINTS
    1 1
  END
  FILLED true
END

LAYER
  NAME "polygon_fill"
  GROUP "province"
  STATUS ON
  TYPE POLYGON
  DATA "shape/istat/prov2010_s"
  CLASS
    STYLE
      COLOR 255 255 16
    END
  END
END

LAYER
  NAME "polygon_outline_symbol"
  GROUP "province"
  STATUS ON
  TYPE LINE
  DATA "shape/istat/prov2010_s"
  CLASS
    STYLE
      SYMBOL "circle"
      SIZE 8
      COLOR 255 16 16
      OFFSET 4 -99
    END
  END
END

LAYER
  NAME "polygon_outline"
  GROUP "province"
  STATUS ON
  TYPE POLYGON
  DATA "shape/istat/prov2010_s"
  CLASS
    STYLE
      WIDTH 3
      OUTLINECOLOR 0 0 0
      COLOR -1 -1 -1
    END
  END
END