Projection Switcher Addon #
Dieses Addon erlaubt das Ändern der Kartenprojektion basierend auf einer Liste vordefinierter Projektionen. Diese Projektionen können für jede Applikation spezifisch definiert werden. Ein Dropdown Element wird der Karte hinzugefügt, das die Auswahl der Kartenprojektion ermöglicht.
Setup #
Fügen Sie das Addon der Masterportal Applikation im addons Ordner hinzu.
Erstellen oder editieren Sie die addonsConf.js
und fügen Sie folgenden Eintrag hinzu:
{
"projectionSwitcher": "view.js"
}
Fügen Sie das Addon zur config.js
Datei im Abschnitt addons
hinzu:
addons: [
"projectionSwitcher"
]
Fügen Sie die optionale Konfiguration des Addons zur config.json
Datei im Abschnitt PortalConfig
hinzu:
"projectionSwitcher": {
"parentSelector": ".control-view-bottom",
"allowedCrs": [
"EPSG:4326",
"EPSG:3857",
"EPSG:25833",
"EPSG:25832"
],
"crsNameMapping": {
"EPSG:4326": "WGS 84",
"EPSG:3857": "WGS 84 / PseudoMercator"
}
}
Stellen Sie sicher, dass für alle Projektionen, die unter allowedCrs
aufgelistet wurden, ein Projektionsstring in config.js
Abschnitt namedProjections
existiert.
"namedProjections": [
["EPSG:25832", "+title=ETRS89/UTM 32N +proj=utm +zone=32 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs"],
["EPSG:25833", "+title=ETRS89/UTM 33N +proj=utm +zone=33 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs"],
["EPSG:900913", "+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs"]
]
Konfiguration #
Folgende Parameter können für das Addon konfiguriert werden:
Name | Verpflichtend | Typ | Default | Beschreibung | Standard |
---|---|---|---|---|---|
parentSelector | nein | String | "" | CSS Selektor zur Identifikation des Elternelements. Das Dropdown wird in das entsprechende Element gerendert. | false |
allowedCrs | nein | String[] | aktuelle Kartenprojektion | Liste der auswählbaren Projektionen. Diese müssen im Format “EPSG:XXXX” angegeben werden. Sollte der Parameter nicht angegeben werden, wird automatisch die aktuelle Kartenprojektion als einzig auswählbare Projektion verwendet. | false |
crsNameMapping | nein | Object | {} | Mapping für die CRS-Codes, z.B. { “EPSG:4326”:“WGS84”, “EPSG:3857”, “WGS 84 / Pseudo-Mercator”}. | false |