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"