Zum Inhalt

Konfiguration: Karte

Die Kartenkonfiguration erfolgt in der resQnect Console im Bereich Einstellungen unter dem Tab Karten. Über den dort integrierten YAML-Editor können die Karteneinstellungen für die Anwendungen resQnect Mobile und resQnect Drive angepasst werden.

Die Struktur gliedert sich in vier Bereiche:

  • tileLayers: Definition der Karten-Ebenen.
  • mobileMap: Kartenkonfiguration für die resQnect Mobile App.
  • driveMap: Kartenkonfiguration für die resQnect Drive App.
  • crsList: Definition von Koordinatenbezugssystemen.

Karten-Ebenen (tileLayers)

In diesem Bereich werden die verfügbaren Karten-Ebenen (Tile Layers) definiert. Diese Ebenen werden später in der Map-Konfiguration der jeweiligen App referenziert.

Feld Status Beschreibung
id Erforderlich Eindeutige ID der Ebene. Dient zur Referenzierung in Kartentypen und Kartendetails.
urlTemplate Erforderlich URL-Vorlage zum Abruf der Kacheln (z. B. .../{z}/{x}/{y}.png).
attribution Optional Objekt für Urheberrechtshinweise.
text Erforderlich Der anzuzeigende Text (z. B. "© OpenStreetMap").
url Erforderlich URL mit weiteren Informationen zur Lizenz des Kartenanbieters.
minZoom Optional Minimale Zoomstufe zum Anzeigen der Ebene.
maxZoom Optional Maximale Zoomstufe zum Anzeigen der Ebene.
minNativeZoom Erforderlich Minimale Zoomstufe, in dem Kacheln nativ vorliegen (darunter wird skaliert).
maxNativeZoom Erforderlich Maximale Zoomstufe, in dem Kacheln nativ vorliegen (darüber wird skaliert).
crs Optional Referenz auf ein in crsList definiertes Koordinatenbezugssystem. Hinweis: Dieses Feld ist optional und muss nur gesetzt werden, wenn das CRS vom Standard EPSG:3857 (Web Mercator) abweicht.
id Erforderlich Muss einer id aus der crsList entsprechen.
Konfigurationsbeispiel: Karten-Ebenen

Das folgende Beispiel veranschaulicht die Definition zweier eigenständiger Kartenebenen: einer globalen Basiskarte auf OpenStreetMap-Basis sowie einer regionalen Ebene mit einem speziellen CRS.

tileLayers:
  - id: "osm_standard"
    urlTemplate: "https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png"
    attribution:
      text:  OpenStreetMap Mitwirkende"
      url: "https://www.openstreetmap.org/copyright"
    minZoom: 0
    maxZoom: 20
    minNativeZoom: 0
    maxNativeZoom: 19

  - id: "regional_daten_ebene"
    urlTemplate: "https://geodata.example.com/tiles/utm32/{z}/{x}/{y}.png"
    minZoom: 10
    maxZoom: 18
    minNativeZoom: 10
    maxNativeZoom: 18
    crs:
      # Referenz auf die ID eines zuvor in der 'crsList' definierten Systems
      id: "epsg_25832"

resQnect Mobile Karte (mobileMap)

Dieser Bereich dient der Kartenkonfiguration für die resQnect Mobile App.

Startansicht (initialCenter, initialZoom)

In diesem Abschnitt werden der Kartenausschnitt und die Zoomstufe, die beim initialen Laden der Karte angezeigt werden sollen, definiert.

Feld Status Beschreibung
initialCenter Erforderlich Objekt zur Definition der Startkoordinaten.
latitude Erforderlich Breitengrad im WGS 84 Format.
longitude Erforderlich Längengrad im WGS 84 Format.
initialZoom Erforderlich Initiale Zoomstufe beim Öffnen der Karte.

Kartentyp (mapStyles)

Hier wird die Liste der verfügbaren Basiskarten konfiguriert, die dem Nutzer als Hintergrundkarten in der App zur Auswahl stehen.

Feld Status Beschreibung
name Erforderlich Bezeichnung des Kartentyps in der App-Auswahl.
minZoom Erforderlich Minimale Zoomstufe, bis zu der die Karte herausgezoomt werden kann.
maxZoom Erforderlich Maximale Zoomstufe, bis zu der die Karte hineingezoomt werden kann.
thumbnail Erforderlich Vorschaubild als Base64-kodierte Data-URI. Anforderungen: Format JPEG oder PNG, Mindestgröße 128x128 Pixel, Dateigröße unter 64 KB.
layers Erforderlich Liste der Ebenen-Referenzen (IDs aus tileLayers).
id Erforderlich Muss einer id aus der tileLayers-Liste entsprechen.

Kartendetails (mapOverlays)

Dieser Abschnitt definiert zusätzliche, zuschaltbare Informationsebenen (wie z. B. Hydranten oder Sektorengrenzen), die über die gewählte Basiskarte gelegt werden können.

Feld Vorgabe Beschreibung
name Erforderlich Bezeichnung der Kartendetails in der App-Auswahl.
thumbnail Erforderlich Vorschaubild als Base64-kodierte Data-URI. Anforderungen: Format JPEG oder PNG, Mindestgröße 128x128 Pixel, Dateigröße unter 64 KB.
layers Erforderlich Liste der Ebenen-Referenzen (IDs aus tileLayers).
id Erforderlich Muss einer id aus der tileLayers-Liste entsprechen.
Konfigurationsbeispiel: resQnect Mobile Karte

Dieses Beispiel dient der Veranschaulichung einer vollständigen Kartenkonfiguration für die resQnect Mobile App, wobei die verwendeten IDs als Platzhalter für zuvor definierte Karten-Ebenen fungieren.

mobileMap:
  initialCenter:
    latitude: 48.1371
    longitude: 11.5754
  initialZoom: 12
  mapStyles:
    - name: "Topografisch"
      minZoom: 5
      maxZoom: 18
      thumbnail: "data:image/jpeg;base64,/9j/4AAQ..."
      layers:
        # Referenz auf die ID einer zuvor in der 'tileLayers' definierten Ebene
        - id: "osm_standard"
  mapOverlays:
    - name: "Hochwassergefahrenkarte"
      thumbnail: "data:image/png;base64,iVBORw0..."
      layers:
        # Referenz auf die ID einer zuvor in der 'tileLayers' definierten Ebene
        - id: "hochwasser_ebene"

resQnect Drive Karte (driveMap)

In diesem Bereich wird die Kartendarstellung für die resQnect Drive App festgelegt.

Die Konfiguration der Startansicht (initialCenter, initialZoom) sowie der Kartendetails (mapOverlays) erfolgt nach demselben Schema wie bei der resQnect Mobile Karte. Über die Kartendetails lassen sich zusätzliche Informationen, wie beispielsweise Hydranten-Standorte, in die Karte einbinden.

Hinweis

Für resQnect Drive werden keine mapStyles definiert. Die Basiskarte ist durch die dort integrierte HERE Karte vorgegeben. Es können jedoch mapOverlays konfiguriert werden.

Konfigurationsbeispiel: resQnect Drive Karte

In diesem Beispiel wird für die resQnect Drive App die Startansicht festgelegt und Kartendetails für Hydranten definiert, welche über die Standardkarte gelegt werden können.

driveMap:
  initialCenter:
    latitude: 48.7758
    longitude: 9.1829
  initialZoom: 15
  mapOverlays:
    - name: "Hydranten"
      thumbnail: "data:image/png;base64,dGVzdA=="
      layers:
        # Referenz auf die ID einer zuvor in der 'tileLayers' definierten Ebene
        - id: "hydranten_ebene"

Koordinatenbezugssysteme (crsList)

Diese Liste definiert Koordinatenbezugssysteme, engl. Coordinate Reference System (CRS). Eine Konfiguration ist nur dann erforderlich, wenn Karten-Ebenen verwendet werden, die nicht dem Standard EPSG:3857 (Web Mercator) entsprechen. Bei Verwendung von anderen Karten sind folgende Felder zu konfigurieren.

Feld Vorgabe Beschreibung
id Erforderlich Eindeutige Kennung des CRS. Dient zur Referenzierung in Karten-Ebenen.
code Erforderlich Standard-Code des CRS (z. B. EPSG:25832).
definition Erforderlich Projektions-Definition (Proj4-String).
bounds Optional Objekt zur Definition des Begrenzungsrahmens (Bounding Box).
topLeft Erforderlich Objekt für die obere linke Ecke des Rahmens (enthält x und y).
bottomRight Erforderlich Objekt für die untere rechte Ecke des Rahmens (enthält x und y).
origins Optional Liste von Ursprungsobjekten (oben-links) für projizierte Koordinaten (jeweils mit x und y).
resolutions Optional Liste von Auflösungen (Projektionseinheit pro Pixel, z. B. Meter/Pixel) pro Zoomstufe. Hinweis: Erforderlich, wenn scales nicht gesetzt wurde.
scales Optional Liste von Maßstäben (Pixel pro Projektionseinheit, z. B. Pixel/Meter) pro Zoomstufe. Hinweis: Erforderlich, wenn resolutions nicht gesetzt wurde.
Konfigurationsbeispiel: Koordinatenbezugssystem

In diesem Beispiel wird ein CRS für das deutsche UTM-System (Zone 32N) definiert:

crsList:
  - id: "epsg_25832"
    code: "EPSG:25832"
    definition: "+proj=utm +zone=32 +ellps=GRS80 +units=m +no_defs"
    bounds:
      topLeft:
        x: 265948.8191
        y: 6414361.7476
      bottomRight:
        x: 677786.3629
        y: 4663524.3994
    origins:
      - x: 265948.8191
        y: 6414361.7476
    resolutions:
      - 4000.0
      - 2000.0
      - 1000.0
      - 500.0
      - 250.0

Beispielkonfiguration

Konfigurationsbeispiel: OpenStreetMap mit Hydrantenplan

Das folgende YAML-Beispiel zeigt eine vollständige Konfiguration mit OpenStreetMap als Standardkarte und einem Hydrantenplan als zuschaltbare Kartendetails.

# Koordinatenbezugssysteme
crsList: [] # Diese Liste kann leer bleiben, da nur das Standard-CRS (EPSG:3857) verwendet wird.

# Karten-Ebenen (Datenquellen)
tileLayers:
  - id: "osm_standard"
    urlTemplate: "https://tile.openstreetmap.org/{z}/{x}/{y}.png"
    attribution:
      text:  OpenStreetMap contributors"
      url: "https://www.openstreetmap.org/copyright"
    minNativeZoom: 0
    maxNativeZoom: 19

  - id: "hydranten_ebene"
    urlTemplate: "https://geodaten.beispiel.de/hydranten/{z}/{x}/{y}.png"
    minNativeZoom: 14
    maxNativeZoom: 19

# Konfiguration der resQnect Mobile Karte
mobileMap:
  initialCenter:
    latitude: 47.8095
    longitude: 13.0550
  initialZoom: 12

  mapStyles:
    - name: "Standardkarte"
      minZoom: 0
      maxZoom: 19
      thumbnail: "data:image/jpeg;base64,/9j/4AAQ..."
      layers:
        - id: "osm_standard"

  mapOverlays:
    - name: "Hydranten"
      thumbnail: "data:image/jpeg;base64,/9j/4AAQ..."
      layers:
        - id: "hydranten_ebene"

# Konfiguration der resQnect Drive Karte
driveMap:
  initialCenter:
    latitude: 47.8095
    longitude: 13.0550
  initialZoom: 14
  mapOverlays:
    - name: "Hydranten"
      thumbnail: "data:image/jpeg;base64,/9j/4AAQ..."
      layers:
        - id: "hydranten_ebene"