Sld Documentation
From MapbenderWiki
Contents |
User documentation for the usage of SLD and the SLD Editor in Mapbender 2.5
English version
to come
German version
work in progress...
Einleitung
[[Image:]]
Um in den SLD Editor zu gelangen, gehen Sie unter „WMS Einstellungen“, wählen Sie dann eine GUI, einen WMS Titel und klicken Sie auf den Button "SLD".
Die Möglichkeit mit dem SLD-Editor SLDs für den gewählten WMS-Titel zu erstellen, bzw. zu verändern haben sie nur, wenn unter LinkCapabilties das Feld „SLD-URL“ erscheint. Die Abfrage ob der WMS Dienst Ihnen diese Möglichkeit bietet, findet mit GetCapabilities statt und zwar wenn ein neuer WMS-Dienst in den MapBender eingebunden, oder ein vorhandener aktualisiert wird. Es kann also sein, dass ein eingerichteter WMS-Dienste zwar ein SLD unterstützt, aber noch nicht aktualisiert wurden und dies somit nicht angezeigt wird.
vorhandenen SLD öffnen
Mit „SLD laden/anzeigen“, öffnen Sie die von Ihnen getroffenen Regeln aller angewendeten SLDs des gewählten WMS-Titels in einem neuen Reiter, dort können Sie sich über Ihren Browser den Quelltext anzeigen lassen, um den SLD im XML-Format zu erhalten.
neuen SLD erstellen
Wenn Sie in der unteren Tabelle in der Spalte „SLD“ bei einem Layer auf SLD klicken gelangen Sie in den SLD-Editor um einen neuen SLD zu erstellen oder einen bestehenden für diesen Layer zu verändern. Die 0 oder 1 hinter SLD beschreibt, ob der SLD angewendet wird oder nicht.
Falls Sie einen SLD neu erstellen wollen, stellt der SLD Editor die Anfrage getStyles() an den WMS Dienst um Ihnen einen SLD zu fertigen, der den Originalzustand des Layers präsentiert. Falls der WMS Dienst zwar SLDs unterstützt, aber die Anfrage getStyles() nicht gegeben ist, so kann es zu Fehlermeldungen kommen und/oder keine Darstellung des Originalzustandes erfolgen.
Benutzeroberfläche
[[Image:]]Die Benutzeroberfläche ist in folgende Bereich geteilt die im Einzelnen unten beschrieben werden
- Vorschau mit SLD
- Original ohne SLD
- Menü
- SLD Eigenschaften
Vorschau mit SLD
[[Image:]]Die Vorschau mit SLD zeigt den Layer wie er wider gegeben wird mit den im SLD definierten Regeln.
Original ohne SLD
[[Image:]]Diese Vorschau zeigt den Layer im Originalzustand.
Menü
Unter „Ansicht in Mapbender“ entscheiden Sie sich, ob der definierte SLD im Mapbender angezeigt werden soll oder nicht.
| [[Image:]] | [Standard öffnen] Mit Standard öffnen werden die von Ihnen definierten Regeln auf das Original zurückgesetzt |
| [[Image:]] | [SLD speichern] Mit Klick auf diesen Button wird der von Ihnen definierte SLD gespeichert
|
| [[Image:]] | [SLD anzeigen] Diese Schaltfläche zeigt ihnen die getroffenen Regeln für diesen Layer in einem neuen Reiter an. Lassen Sie sich hierzu den Quelltext über Ihren Browser anzeigen, so bekommen Sie den SLD in XML |
SLD Eigenschaften
Der Bereich der Eigenschaft des SLD ist wohl der umfangreichste. Er umfasst die Rules, die die Wiedergabe der des Layers beschreiben.
Änderungen die Sie in die bereitgestellten Felder eintragen sind mit der [Enter] Taste zu aktualisieren, damit sie wirksam werden. Bei Auswahlmöglichkeiten, wie z.B. der Schriftgröße, findet die Aktualisierung mit der Auswahl statt, wenn Sie keine Auswahl getroffen wird der Standardwert genommen, selbst wenn eine andere Auswahl angezeigt wird. Es kann sein, dass keine Vorschau dargestellt wird, dann haben Sie unter Umständen noch nicht alle notwendigen Feldangaben ausgefüllt.
Rules
Die Regeln sind dafür da, um die Eigenschaften der Features zu definieren, diese sind unterteilt in:
- Name
- Title
- Filter
- Skalierung
- LegendGraphic
- Symbolizers
Name, Title
Der Eintrag in das Feld Name, bzw. Title ist optional. Der Eintrag ist allerdings nützlich, da er in der Legende dargestellt wird.
Filter
[[Image:]]Der Filter dient dazu, die Regel in welcher er definiert ist, bestimmten Attributseigenschaften zu unterstellen. Nur wenn diese Attributseigenschaften erfüllt sind, wird die Regel für die Rendering-Instruktionen ausgeführt. Das Feature Filter erreichen Sie durch einen Klick auf den Blitz Die genauere Handhabung des Filters wird unter einem separatem Punkt Filter besprochen.
Skalierung
Mithilfe von Minscale und Maxscale können sie einen Skalierungsbereich angeben, innerhalb welchem die angegebene Regel angewendet wird.
MinScale: Hier können Sie die Skalierung eintragen, ab wann die Regel in Kraft tritt. Wollen Sie z.B. erst bei einem Maßstab von 1:20.000 anfangen den Layer mit dieser Regel darzustellen, so tragen Sie 20.000 ein. Bei einer exakten Maßstabs des eingetragenen Wertes wird die Karte noch dargestellt. Tragen Sie nichts in dieses Feld ein, so stellt sich der Minscale automatisch auf 0.
Maxscale: Maxscale funktioniert genauso wie Minscale, nur dass es die obere Grenze angibt. Bei einer Darstellung in exakt dem selben Maßstab wie hier angegebenen wird der Layer allerdings nicht mehr mit dieser Regel dargestellt Tragen Sie nichts in dieses Feld ein, dann stellt sich der Maxscale automatisch auf die größte möglichste Schranke ein.
LegendGraphic
In der LegendGraphic können Sie die Graphik der Legende definieren. Bearbeiten können Sie:
- Opacity
- Size
- Rotation
- ExternalGraphic
- Mark
Diese Einstellungsmöglichkeiten werden unter dem Punkt Felderklärungen behandelt.
Symbolizers
Eingebettet in die Regeln sind die Symbolyzers. Sie beschreiben, wie die Features auf der Karte dargestellt werden. Die Symbolizer beschreiben sowohl die Form der Erscheinung, als auch die graphischen Eigenschaften wie Farbe und Deckkraft. Es stehen Ihnen fünf Symbolizers zur Verfügung:
- Textsymbolizer
- Polygonsymbolizer
- Pointsymbolizer
- Rastersymbolizer
- Linesymbolizer
Diese werden in den folgenden separaten Punkten besprochen.
Textsymbolizer
[[Image:]]Beim Textsymbolizer geben Sie den Namen des Labels an, welches zur Darstellung dienen soll. Innerhalb des Textsymbolizer können sie mit Font die Darstellung der Schrift bestimmen, mit LabelPlacement den Text relativ zum Label positionieren und mit Halo die Lesbarkeit sichern.
Diese Möglichkeiten zum Verändern der Textattribute sind unter dem Punkt Felderklärungen. Genauer beschrieben.
Polygonsymbolizer
[[Image:]]
Ein Polygonsymbolizer wird benutzt um ein Polygon zu zeichnen, die Innenfarbe als auch den Rand zu verändern. Die Innenfarbe lässt sich mit Fill , der Rand mit 'Stroke' verändern, welche im Punkt Felderklärungen genauer beschrieben werden.
Pointsymbolizer
Der Pointsymbolizer zeichnet eine Graphik an einem Punkt. Die Auswahl der Graphik ist identisch mit der Auswahl der Graphik unter LegendGraphic
[[Image:]]
Rastersymbolizer
Der Rastersymbolizer beschreibt wie eine Raster/Matrix Datei wider gegeben wird (z.B. ein Satellitenbild oder ein digitales Höhenmodell). Sie könne auch hier die Deckkraft (Opacity) ändern und eine Colormap definieren. (Beschreibung unter Felderklärungen)
Linesymbolizer
[[Image:]]
Der Linesymbolizer wird benutzt um Striche zu zeichnen. Die Art wie die sie gezeichnet werden können Sie unter Stroke (beschrieben in Felderklärungen) modifizieren.
Felderklärungen
| Mit Opacity stellen Sie den Wert der Deckkraft ein. Dieser Wert soll zwischen 0.0 und 1.0 liegen, wobei 0.0 absolut transparent darstellt und 1.0 100% deckend. Tragen sie einen Wert zwischen 0 und 1 ein, so ist dieser als linear anzusehen, d.h. 0.1 stellt eine Deckkraft von 10% dar. |
| Die Size beschreibt die Größe der Graphik in Pixel. Negative Werte sind nicht erlaubt. Standardwert ist 6 Pixel. |
| Die Rotation beschreibt die Drehung einer Graphik um ihren Mittelpunkt in dezimalen Gradzahlen. Positive Werte beschreiben eine Drehung mit dem Uhrzeigersinn, negative Werte entgegen dem Uhrzeigersinn. |
| Mit ExternalGraphic verweisen Sie auf eine externe Grafik mit Hilfe einer URL und der Angabe des Formates der adressierten Grafik. |
| Mark definiert eine Form, die farblich veränderbar ist. Sie können innerhalb der Auswahl WellKnownName eine angebotene Grafik aussuchen. Zur Verfügung stehen 'square', 'circle', 'triangle', 'star', 'cross' und 'x'. Die Umrandung des Marks können Sie mit Stroke verändern, die Innenfarbe mit Fill''''. |
| Fill beschreibt die Farbfüllung eines Objektes. Unter dem CssParameter 'fill' finden Sie die derzeitige Farbe, die zur Darstellung ausgewählt ist und die Sie über einen Klick auf die Farbe mit Hilfe der Farbpalette Ihren Wünschen anpassen können. Als Standardwert dient ein 50% grau.
Unter dem CssParameter 'fill-opacity' können sie die Deckkraft der Farbfüllung einstellen. Opacity wird weiter oben erklärt |
| Stroke dient zur Darstellung von Linien. Wenn Sie die unten stehenden CssParameter nicht auswählen, so tritt der Standardwert in Kraft.
Der CssParameter 'stroke' stellt die Farbauswahl über eine Farbpalette zur Verfügung, der Standardwert ist schwarz. Der CssParameter 'stroke-width' gibt die Breite der Linien in Pixeln an. Ihnen steht die Auswahl von 0-16 px zur Verfügung. Der Standardwert ist 1px. Eine gestrichelte Linie zeichnet Ihnen der 'CssParameter stroke-dasharray'. Sie geben eine gerade Anzahl von Zahlen an getrennt durch ein Leerzeichen. Die Zahlen werden gegliedert in Paaren, wobei die erste Zahl die Länge der farblichen Striche in Pixeln darstellt und die zweite für den Freiraum zwischen den farblichen Strichen steht. Der Standardwert ist eine durchgezogene Linie. |
| Font beschreibt den Schrifttyp und die Schriftgröße, die Sie unter dem CssParameter 'font-family', bzw. dem CssParameter 'font-size' auswählen können. Der Standardwert für die Schriftgröße ist 10 Pixel. |
| Unter LabelPlacement können Sie den Text relativ zu einem Label positionieren.
Der 'AnchorPointX' und 'AnchorPointY'. (0.0, 0.0) beschreibt links unten und (1.0, 1.0) rechts oben. Der Standardwert für die Ausrichtung ist (0.0, 0.5) also in der links in der Mitte. Relativ zum gewählten Ankerpunkt lässt sich der Text über 'DisplacementX' und 'DisplacementY' um die angegebene Anzahl von Pixeln verschieben. Positive Werte bedeuten nach oben und nach rechts, negative Werte nach links und unten. Die Rotation ist beschrieben unter LegendGraphic-> Rotation |
| Halo ist ein Typ der Füllung die im Hintergrund der Schrift angesiedelt ist und soll dazu dienen die Lesbarkeit zu erhöhen. Nicht jede engine zur Darstellung der WMS-Dienste unterstützt Halo. |
| Mit 'ColormapEntry' unter ColorMap verändern Sie die Einstellung der Farbe mit 'Color' für den jeweilig definierten Wert in 'Quantity'. Die Standardeinstellungen für 'Color' und 'Quantity' sind systemabhängig |
[[Image:]]
Filter
Um die Regel bestimmten Attributseigenschaften zu unterwerfen steht Ihnen der Filter zur Verfügung. Das Setzen des Filters ist optional.
Mithilfe der Operatoren:
| = | gleich |
| > | größer |
| < | kleiner |
| >= | größer gleich |
| <= | kleiner gleich |
| ähnlich | wie gleich, nur dass sie Teilbereiche durch den Wildcard-Character und einzelne Zeichen durch den SingleChar-Character ersetzen können. Der Escape-Character dient dazu eines dieser 3 Characters anzuzeigen, indem Sie ihn im direkt vor das darzustellende Zeichen setzen. |
| Nicht definiert | Eigenschaft = null |
können sie ein Attribut mit einem Wert vergleichen
Die logischen Operatoren 'and' und 'or' verknüpfen die Vergleiche, die mit den oben aufgeführten Operatoren aufgestellt wurden.<ref name="ftn1">Die Eigenschaft „ähnlich x“ lässt sich nicht mit logischen Operatoren verknüpfen.</ref> Stellen Sie sicher, dass alle von Ihnen vorgenommenen Veränderungen erst aktualisiert wurden, entweder durch drücken der [Enter] Taste oder durch Drücken von „Änderung aktualisieren“, bevor Sie speichern.
ElseFilter
Der Else Filter, negiert die Vergleiche innerhalb der Filter, der vorher definierten Regeln und fügt sie mit dem logischen Operater 'and' zusammen um die Attributseigenschaften, die noch keinen Regeln unterworfen wurden zu definieren. Die Regel, die den ElseFilter verwendet, wird nun diesen Attributseigenschaften unterworfen.
