.. _sym_examples: ***************************************************************************** Signaturbeispiele ***************************************************************************** :Author: Jeff McKenna :Contact: jmckenna at gatewaygeomatics.com :Revision: $Revision: 8295 $ :Date: $Date: 2008-12-27 06:08:04 +0100 (Sa, 27. Dez 2008) $ :Last Updated: 2008/07/16 .. contents:: Inhaltsverzeichnis :depth: 2 :backlinks: top Folgendes Beispiel erzeugt eine gestrichelte Linie mit dem Muster 10 Pixel an, 5 Pixel aus, 5 Pixel an, 10 Pixel aus... Beispiel 1. Gestrichelte Linie --------------------------------------------- .. code-block:: mapfile SYMBOL NAME 'dashed1' TYPE ELLIPSE POINTS 1 1 END FILLED true PATTERN 10 5 5 10 END END Das nächste Beispiel zeigt einen Stern, um z.B. die Hauptstadt zu symbolisieren. Der Schriftartenname wird in der Datei :ref:`FONTSET` definiert. Die Kennziffer "114" variiert je nach Schriftart. Unter Windows kann die Zeichentabelle benutzt werden, um die genaue Kennziffer zu bestimmen. Beispiel 2. TrueType-Schrift Markersymbol --------------------------------------------- .. code-block:: mapfile SYMBOL NAME "natcap" TYPE TRUETYPE FONT geo FILLED true ANTIALIAS true CHARACTER "r" END Dieses Beispiel ist relativ einfach. Um ein Dreieck zu zeichnen, werden 4 Punkte benötigt, wobei der erste und letzte identisch sind. Beispiel 3. Markersymbol Vektor-Dreieck --------------------------------------------- .. code-block:: mapfile SYMBOL NAME "triangle" TYPE vector POINTS 0 4 2 0 4 4 0 4 END END Hier wird ein Kreuz gezeichnet, also 2 Linien (Vektoren) die nicht miteinander verbunden sind (im Unterschied zum vorherigen Beispiel). Die negativen Werte sind für die Trennung verantwortlich. Beispiel 4. Markersymbol Kreuz ------------------------------------------------------- .. code-block:: mapfile SYMBOL NAME "cross" TYPE vector POINTS 2 0 2 4 -99 -99 0 2 4 2 END END Im nächsten Beispiel wird ein gefüllter Kreis gezeichnet. Um eine Ellipse zu erhalten, müssen unterschiedliche Werte benutzt werden. Beispiel 5. Kreissymbol --------------------------------------------- .. code-block:: mapfile SYMBOL NAME "circle" TYPE ellipse FILLED true POINTS 1 1 END END Beispiel 6. Diagonale Füllung --------------------------------------------- .. code-block:: mapfile SYMBOL NAME "downwarddiagonalfill" TYPE vector TRANSPARENT 0 POINTS 0 1 1 0 END END Dieses Beispiel erzeugt eine gestrichelte Linie mit 10 Pixel an, 5 Pixel aus... Die Linie hat ein geraden Abschluß und eine kurze Gehrungsgrenze. Für Layer mit skalierten Symbolen (SYMBOLSCALE, MINSIZE, MAXSIZE) wird PATTERN der Größe angepasst um das Verhältnis beizubehalten. Beispiel 7. Gestrichelte Cartoline Signatur --------------------------------------------- .. code-block:: mapfile SYMBOL NAME "cartoline" TYPE cartoline LINECAP butt LINEJOIN miter LINEJOINMAXSIZE 1 PATTERN 10 5 END END Beispiel 8. Erzeugung von Schraffuren (neu in 4.6) ---------------------------------------------------- Mit MapServer 4.6 und höher ist es möglich, mit dem Symboltyp HATCH Schraffuren zu erzeugen. Das folgende Beispiel erzeugt eine Schraffur mit einem Winkel von 45 Grad, 10 Pixel Abstand und 3 Pixel stark. Symbol definition: .. code-block:: mapfile SYMBOL NAME 'hatch-test' TYPE HATCH END Layer definition: .. code-block:: mapfile LAYER ... CLASS ... STYLE SYMBOL 'hatch-test' COLOR 255 0 0 ANGLE 45 SIZE 10 WIDTH 3 END END END Für den Typ HATCH sind weitere Parameter verfügbar:ANGLEITEM, SIZEITEM, MINWIDTH, and MAXWIDTH.