Zum Hauptinhalt springen
Version: Preview

Vorbereitung MapServer Karten

Warnung

Diese Beschreibung ist in Bearbeitung und gilt nur Versionen höher 25.2.120

Vorraussetzungen

  • MapServer Karten müssen aus dem Darstellungsmodell erzeugt bzw. synchronisiert worden sein.
  • Die Map Dateien müssen im AppBuilder vorhanden sein.
  • Händisch erzeugte MapServer Karten müssen vorab händisch in der MapServer Map Datei konfiguriert werden.

TileServer Konfiguration

MapServer Karten werden im TileServer mittels WMS eingebunden.

Bei "Renderer.x.MapServerConnection" muss der Name der MapServer Verbindung stehen.
Dieser steht unter "Karten->MapServer Karten".
In Beispiel Screenshot ist der Name "DEFAULT"

Bei "Renderer.x.Maps.x.MapServerMapName" muss der Name der Karte eingetragen.
Dieser steht unter "Karten->MapServer Karten->Verbindungsname".
In Beispiel Screenshot ist der Name "LASVEGAS"

Beispiel:

#MapServer Maps
Renderer.3.Type=WMS
Renderer.3.URL=http://localhost/mapserver/mapserv.exe
Renderer.3.MapServerConnection=DEFAULT

#MapServer Map - Las Vegas
Renderer.3.Maps.1.Name=LasVegas_MapServer
Renderer.3.Maps.1.TileSystem=CustomBing
Renderer.3.Maps.1.MapRequestOptions=&map=C:\\MapServer\\maps\\LASVEGAS.map
Renderer.3.Maps.1.MapServerMapName=LASVEGAS
Renderer.3.Maps.1.Layers=STREET,BUS_ROUTE
Renderer.3.Maps.1.Styles=default
Renderer.3.Maps.1.RefSysInfoFile=http://localhost/MumGeoData/RefSysInfo/RefSysInfoLasVegas26911.xml
Renderer.3.Maps.1.SRS=EPSG:26911
Renderer.3.Maps.1.ValidZoomLevels=1-21
Renderer.3.Maps.1.PreRenderZoomLevels=1-16
Renderer.3.Maps.1.BufferNumberOfTiles=1

Wenn Sie im AppBuilder bei "Karten Server -> MapServer" mehr als eine MapServer Verbindung haben dann muss in der TileServer Konfiguration bei "Renderer.x.MapServerConnection" der Name der "MapServer Verbindung" zwingend angegeben werden. Wenn es nur eine Verbdiung gibt kann diese entfallen.

Mit dem Darstellungsmodel erzeugte (synchronisieren) Karten Dateien

Wenn die Karte mittels Darstellungsmodell (synchronisieren) erzeugt wurde, muss einmalig das Synchronisieren nochmals für die Karte ausgeführt werden. Diese fügt der Datei das Schlüsselwort "#MAPEDIT_TILEUPDATER_COLUMNS" hinzu. In diesem ist definiert welche Spalten der Layer verwendet.

Händisch erzeugte Kartendateien

Wurde die Karte selbst händisch aufgesetzt müssen "händische" Nachbearbeitungen geschehen damit die Karte mit dem Tile Updater verwendet werden kann.

Bei jedem Layer müssen diese drei Schlüsselwörter hinzugefügt werden

  • #MAPEDIT_CONNECTION_NAME
    Hier muss der Name der Datenbank definiert werden so wie sie im AppBuilder heisst.
  • #MAPEDIT_TABLE_NAME
    Der Name der Tabelle die der Layer verwendet
  • #MAPEDIT_TILEUPDATER_COLUMNS
    Alle verwendeten Spalten durch Komma getrennt, ohne Leerzeichen.
    Wenn Änderungen an den Daten diesen Spalten durch den Endanwender geschehen dann aktualisert der Tile Updater die Kacheln.

Beispiel:

Mit dem Menüpunkt "Schlüsselwörter für TileUpdater hinzufügen" im Map Datei Editor können diese Schlüsselwörter heuristisch hinzugefügt werden.

Hierbei muss jeder vom Progamm hinzugefügte Eintrag nochmal vom Anwender auf Richtigkeit geprüft und ggf korrigiert oder erweitert werden.

Tip

Statt bei "Layers" alle Ebenen einzeln auszulisten kann hier laut MapServer Dokumentation auch der Name der "Datei" ohne Pfad und Ednung angegeben werden udm alle Ebenen zurück zu bekommen.

Dies muss jedoch je Karte auf Funktionieren getestet werden.

Beispiel:

Renderer.3.Maps.1.Name=LasVegas_MapServer
Renderer.3.Maps.1.TileSystem=CustomBing
Renderer.3.Maps.1.MapRequestOptions=&map=C:\\MapServer\\maps\\LASVEGAS.map
Renderer.3.Maps.1.MapServerMapName=LASVEGAS
Renderer.3.Maps.1.Layers=LASVEGAS