Symbology Examples

Author:Jeff McKenna
Contact:jmckenna at gatewaygeomatics.com
Author:Håvard Tveite
Contact:havard.tveite at nmbu.no
Last Updated:2011/05/11

Example 1. Dashed Line

This example creates a dashed line that is 5 SIZEUNITS wide, with 10 SIZEUNITS on, 5 off, 5 on, 10 off ...

LAYER
  ...
  CLASS
    ...
    STYLE
      COLOR 0 0 0
      WIDTH 5
      LINECAP butt
      PATTERN 10 5 5 10 END
    END
  END
END

Example 2. TrueType font marker symbol

This example symbol is a star, used to represent the national capital, hence the name. The font name in defined in the FONTSET file. The code number “114” varies, you can use MS Windows’ character map to figure it out, or guestimate.

SYMBOL
  NAME "natcap"
  TYPE TRUETYPE
  FONT "geo"
  FILLED true
  ANTIALIAS true  # only necessary for GD rendering
  CHARACTER "r"
END

Example 3. Vector triangle marker symbol

This example is fairly straight forward. Note that to have 3 sides you need 4 points, hence the first and last points are identical. The triangle is not filled.

SYMBOL
  NAME "triangle"
  TYPE vector
  POINTS
    0 4
    2 0
    4 4
    0 4
  END
END

Example 4. Non-contiguous vector marker symbol (Cross)

This example draws a cross, that is 2 lines (vectors) that are not connected end-to-end (Like the triangle in the previous example). The negative values separate the two.

SYMBOL
  NAME "cross"
  TYPE vector
  POINTS
    2.0 0.0
    2.0 4.0
    -99 -99
    0.0 2.0
    4.0 2.0
  END
END

Example 5. Circle vector symbol

This example creates a simple filled circle. Using non-equal values for the point will give you an actual ellipse.

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

Example 6. Downward diagonal fill

This example creates a symbol that can be used to create a downward diagonal fill for polygons.

SYMBOL
  NAME "downwarddiagonalfill"
  TYPE vector
  TRANSPARENT 0
  POINTS
    0 1
    1 0
  END
END

Example 7. Using the Symbol Type HATCH (new in 4.6)

As of MapServer 4.6, you can use the symbol type HATCH to produce hatched lines. The following will display hatched lines at a 45 degree angle, 10 SIZEUNITS apart (center to center), and 3 SIZEUNITS wide.

Symbol definition:

SYMBOL
  NAME 'hatch-test'
  TYPE HATCH
END

Layer definition:

LAYER
  ...
  CLASS
    ...
    STYLE
      SYMBOL 'hatch-test'
      COLOR 255 0 0
      ANGLE 45
      SIZE 10
      WIDTH 3
    END
  END
END

Other parameters available for HATCH are: MINSIZE, MAXSIZE, MINWIDTH, and MAXWIDTH.

Example 8. Styled lines using GAP

This example shows how to style lines with symbols.

A 5 SIZEUNITS wide black line is decorated with ellipses that are 15 SIZEUNITS long (and 7.5 SIZEUNITS`wide). The ellipses are placed 30 `SIZEUNITS apart, and the negative GAP value ensures that the ellipses are oriented relative to the direction of the line. The ellipses are rotated 30 degrees counter clock-wise from their position along the line.

Symbol definition:

SYMBOL
  NAME "ellipse2"
  TYPE ellipse
  FILLED true
  POINTS
    1 2
  END
END

Layer definition:

LAYER
  ...
  CLASS
    ...
    STYLE
      WIDTH 5
      COLOR 0 0 0
    END
    STYLE
      SYMBOL 'ellipse2'
      COLOR 0 0 0
      ANGLE 30
      SIZE 15
      GAP -30
    END
  END
END