Bei der Nutzung von Kartenmaterial ist unbedingt auf die Nutzungsbedingungen des Kartenanbieters zu achten! Zu Demonstrationszwecken wird Kartenmaterial von https://tile.openstreetmap.org verwendet, siehe http://www.openstreetmap.org/copyright.
Als Default zeigt das Widget Kartenmaterial von Open-Street-Maps an. Es muss geprüft werden, ob dies in der Webseite mit Datenschutzverordnungen konform ist. Alternativ erlaubt das Widget auch die Verwendung eines eigenen Kartendiensts.
Das Karten-Widget fügt ein neues Formularelement zum Formular-Designer hinzu. Es zeigt dem Formularausfüller eine interaktive Karte an, wo dieser eine bestimmte Geometrie auswählen kann: entweder mehrere Punkte, eine Linie oder eine Fläche. Die ausgewählte Geometrie wird beim Absenden des Formulars übertragen und wieder angezeigt, wenn das Formular wieder geöffnet wurde.
Ob Punkte, eine Linie oder eine Fläche ausgewählt werden darf, lässt sich im Formular-Designer festlegen. Es ist auch möglich, dass Karten-Widget so zu konfigurieren, dass nichts ausgewählt werden kann, wenn man etwa nur eine Karte in das Formular einfügen möchte. Zudem kann im Formular-Designer eingstellt werden, welche Position initial angezeigt wird und in welcher Zoom-Stufe die Karte dargestellt wird.
Verschiedenes Kartenmaterial lässt sich durch Anbindung von Online-Kartendiensten einbinden. Das Widget unterstützt hierfür die häufig verwendeten Schnittstellen WMTS, WMS und TMS.
Inhalt
Das Karten-Widget erlaubt es Nutzern, auf einer Landkarte Punkte, Linien, oder Flächen auszuwählen. |
Eigenschaften
Am Karten-Widget können einige Einstellungen vorgenommen werden, um das die Kartendarstellung und das Layout anzupassen sowie um das angezeigte Kartenmaterial zu konfigurieren.
Konfiguration der Karte. Hier kann eingestellt werden, welcher Kartenabschnitt angezeigt wird und welche Geometrie ausgewählt werden darf. |
- Breitengrad und Längengrad - Gibt die initiale Position an, die angezeigt wird, wenn noch keine Geometrie ausgewählt ist.
- Zoom min, Zoom max. - Die minimale und maximale Zoomstufe, in der ein Nutzer die Karte betrachten kann.
- Zoom initial - Initiale Zoomstufe, welche verwendet wird, wenn noch keine Geometrie ausgewählt wurde.
- Punkte / Linie / Fläche auswählen - Gibt an, ob in der Karte Punkte, eine Linie oder eine Fläche ausgewählt werden darf. Mehrfachauswahl ist möglich, der Nutzer kann dann über Buttons links oben wählen, welche Art von Geometrie eingetragen werden soll. Ist keine der Geometrien erlaubt, kann nichts in der Karte eingetragen werden. Das kann etwa nützlich sein, wenn nur eine Karte zur Orientierung angezeigt werden soll.
- Standort-Button: Wenn aktiviert, wird in der Karte ein Button angezeigt, mit dem der Nutzer seinen Standort ermitteln kann. Der Standort wird dann in der Karte eingetragen und die Karte so positioniert, dass man den Standort sehen kann.
- Sofort ermitteln - Wenn aktiviert, wird der Standort des Nutzers sofort beim Aufruf des Formulars ermittelt. Dies wird nur getan, falls noch keine Geometrie ausgewählt ist und das Formular nicht im Postfach geöffnet wurde. Wir raten davon ab, diese Option zu verwenden, da der Nutzer dann sofort beim Öffnen des Formulars vom Browser um die Erlaubnis gebeten wird, seinen Standort preiszugeben.
- Eigene Karte - Erlaubt die Verwendung von eigenem Kartenmaterial, siehe den Abschnitt unten dazu.
Es ist auch möglich, die Farben der Markierungen in der Karte anzupassen. |
- Punkte - Steuert die Farbe der tröpfchenförmigen Punktmarkierungen in der Karte.
- Position - Steuert die Farbe des Markierungsymbols für die aktuelle Position des Nutzers.
- Linie - Steuert die Farbe der Linie, wenn als Geometrie eine Linie ausgewählt wird.
- Fläche: Rand - Steuert die Farbe des Randes einer Fläche, wenn als Geometrie eine Fläche ausgewählt wird.
- Fläche: innen - Steuert die Farbe des Innenraums einer Fläche, wenn als Geometrie eine Fläche ausgewählt wird.
Eigenes Kartenmaterial
Es ist möglich, Kartenmaterial von externen Kartendiensten anzubinden. Aktuell werden hierfür die Standards WMTS, WMS und TMS unterstützt. Bei der Nutzung von Kartenmaterial ist unbedingt auf die Nutzungsbedingungen des Kartenanbieters zu achten! Im Formular-Designer ist das Eingabfeld Quellenlink dafür vorgesehen, eine entsprechende Angabe zum Anbieter des Kartenmaterials zu machen.
WMTS und TMS
TMS unterscheidet sich von WMTS nur dadurch, dass die y-Koordinate invertiert ist.
Anbindung eines WMTS-Kartendiensts über die entsprechende URL. |
Kartendienste, welche WMTS oder TMS unterstützen, sind am einfachsten anzubinden. Hierzu muss nur die entsprechende URL hinterlegt werden. Die Platzhalter {x} (Breitengrad), {y} (Längengrad) und {z} (Zoom-Stufe) werden in der URL beim Abrufen der Kartendaten entsprechend ersetzt.
WMS
Die Anbindung von WMS ist etwas aufwendiger. Siehe hierzu auch WMS in Leaflet.
Viele der benötigten Informationen können über die Methode GetCapabilities direkt bei der WMS-Schnittstelle abgefragt werden. Wenn die Basis-URL des Kartendiensts etwa https://webmap4.lroc.asu.edu/ lautet, dann kann dies über den Aufruf von https://webmap4.lroc.asu.edu/?request=GetCapabilities erfolgen. Hiermit erhält man eine XML-Datei mit der Beschreibung der Fähigkeiten des Kartendiensts.
Hier wird eine Karte vom Mond über WMS angebunden. Es werden 2 Layers geladen, ein Layer mit Bilddaten und 1 Layer mit der Beschriftung einiger markanter Punkte auf dem Mond. |
- Link - Hier muss die Basis-URL auf den WMS-Kartendienst hinterlegt werden.
- Version - Die Version des WMS-Diensts. Standard ist 1.1.1, was von den meisten Diensten unterstützt wird.
- Koordinaten - Koordinatenreferenzsystem, welches bei der Abfrage an den Kartendienst verwendet wird. Die Auswahl hier ist egal, solange der Kartendienst das entsprechende System unterstützt. Das Koordinatenreferenzsystem (SRS - spatial reference system) findet sich in dem XML mit den Fähigkeiten des Kartendiensts im XML-Element <srs>.
- Layers - Layers, welche in der Karte dargestellt werden, getrennt mit Komma. Ein häufiger Anwendungsfall ist etwa wie in der Abbildung zu sehen, einen Layer mit den Bilddaten und einen Layer mit der Beschriftung zu laden. Die unterstützten Layer finden sich in dem XML mit den Fähigkeiten des Kartendiensts im XML-Element <Layer>.
- Separate Layer - Wenn deaktiviert: Der Kartendienst ist dafür verantwortlich, die einzelnen Layer zu einem Gesamtbild zusammenzufügen. Dies ist die empfohlene Einstellung, da der Kartendienst meist über Informationen verfügt, um die Darstellung zu verbessern. Wenn aktiviert: Die Layer werden separat beim Kartendienst abgefragt und dann übereinander geschichtet dargestellt.
- Styles - Optional Angabe von Styles für die Bilddaten, falls der Kartendienst dies unterstützt.
- Format - Bildformat der angefragten Kartendaten. Hier muss ein Wert eingetragen werden, welcher vom Kartendienst unterstützt wird. Die unterstützten Bildformate finden sich in dem XML mit den Fähigkeiten des Kartendiensts im XML-Element <Format>.
- Parameter großschreiben - Wenn aktiviert, werden alle Parameter (wie etwa format=image/png oder version=1.1.1) beim Aufruf des Kartendiensts großgeschrieben. Muss aktiviert werden, wenn der Kartendienst dies erfordert.
Internationalisierung
Die Texte im Formular können über die I18N-Variablen im Backend geändert werden. So ist es auch möglich, weitere Sprachen zu unterstützen, für die im Plugin keine Übersetzungen hinterlegt sind. Die Schlüssel der I18N-Variablen mit den Standardwerten lauten wie folgt:
- mapActionLocate - Aktuelle Position in der Karte anzeigen
- mapActionSelectArea - Eine Fläche in der Karte auswählen
- mapActionSelectLine - Eine Linie in der Karte auswählen
- mapActionSelectPoints - Punkte in der Karte auswählen
- mapActionReset - Ausgewählte Punkte zurücksetzen
- mapActionUserPosition - Ihr Standort ist hier
- mapActionZoomIn - Vergrößern
- mapActionZoomOut - Verkleinern
JavaScript-API
Für fortgeschrittene Anwendungsfälle lässt sich das Karten-Widget auch per JavaScript ansteuern und beeinflussen. Den Einstiegspunkt hierzu stellt das globale Objekt $.xutil.xMapApi dar.
Einige Beispiele dazu:
Die gesamten verfügbaren Methoden sind derzeit wie folgt. $.xutil.xMapApi stellt den zentralen Einstiegspunkt dar und wird beschrieben durch das Interface IXMapApi. Dieses hat die folgende Definition:
War dieser Artikel hilfreich?
Das ist großartig!
Vielen Dank für das Feedback
Leider konnten wir nicht helfen
Vielen Dank für das Feedback
Feedback gesendet
Wir wissen Ihre Bemühungen zu schätzen und werden versuchen, den Artikel zu korrigieren