Der GeoShop WMS Server als WMS Client ermöglicht das Einbinden von Layern fremder WMS Server in GeoShop Views.
Der WMS Client wird in folgenden Teilschritten installiert:
Installation der Programmdateien (nur falls Datei noch nicht vorhanden):
Kopieren der Datei WMSAdapter.jar
nach GEOSHOP_DIR\system\bin
.
Installation der IL2GEO-Konfiguration (nur falls Datei noch nicht vorhanden)::
Kopieren der Datei WMS.cfg
nach
GEOSHOP_DIR\\system\script\script\il2geo
.
Installation des INTERLIS Modelles
WMS.ili
(nur falls nicht bereits
vorhanden):
Kopieren des INTERLIS Modelles
WMS.ili
in das Upload Verzeichnis
GEOSHOP_DIR\
data\upload
des GeoShops. Das INTERLIS Modell wird in den GeoShop
integriert.
Anpassen von
GEOSHOP_DIR\user\options\appserver.opt
(nur falls noch nicht vorhanden):
Einfügen folgendes neuen Eintrages:
MAP
...
WMSAdapter MAP
}
...
}
Ergänzen der Datei
GEOSHOP_DIR\user\services\services.srv
(nur falls nicht bereits vorhanden):
Ergänzung der Datei mit dem
WMSAdapter
:
LIST
...
MAP
name STRING geomap
description STRING 'GeoMap Server'
module STRING GeoMapServer,WMSAdapter
server STRING appserver
}
...
}
Der WMSAdapter
ist als Modul bei
einem geomap
Service zu
definieren.
Nach der Erfolgreichen Installation des WMS Client kann der WMS Client wie folgt getestet werden:
Für den Test wird ein Layer eines WMS-Dienstes der Firma Intergraph als Layer in eine View des GeoShop eingebunden |
Uploaden des INTERLIS Datenfiles
intergraph.itf
in den GeoShop:
Kopieren des INTERLIS Datenfiles
intergraph.itf
in das Upload
Verzeichnis
GEOSHOP_DIR\
data\upload
des GeoShops. Das INTERLIS Datenfile wird in den GeoShop
integriert..
Definieren der GeoShop View
GEOSHOP_DIR\user\views\wmstest.vi
mit
folgendem Inhalt:
MAP
name STRING wmstest
display_name STRING 'WMS Client Test'
background_color STRING 255,255,255
layers LIST
MAP
name STRING WMS_Intergraph
display_name STRING 'Intergraph (maps1.intergraph.com)'
state STRING on
}
}
}
Definieren des GeoShop User
GEOSHOP_DIR\user\users\wmstest.usr
mit
der View wms
:
USER
name STRING wmstest
password STRING wmstest
privileges LIST
STRING client
STRING multi
}
views LIST
STRING wmstest
}
queries LIST
STRING xy
}
preferences MAP
range.maxY REAL 100
range.maxX REAL 100
range.minY REAL -100
range.minX REAL -100
}
}
Starten des GeoShop Clients in einem Browser und
einloggen als User wmstest
.
Im Bildausschnitt sollte nun ein farbiger Kartenausschnitt erscheinen.
Der Kartenauschnitt wird vom WMS Server der Firma Intergraph geliefert. |
In
GEOSHOP_DIR\user\options\appserver.op
t
können Sie im Abschnitt WMSAdapter
folgende
Optionen setzen:
LOG_WMS_REQUESTS
ON
oder OFF
.
OFF
(= Default). Loggen der
WMS-Requests in Server-Logfile.
Nachfolgend wird beschrieben, wie weitere Layer von WMS-Diensten in den GeoShop eingebunden werden.
Pro WMS-Layer, der in der GeoShop eingebunden wird, ist ein
INTERLIS Datenfile im INTERLIS Modell WMS.ili
zu erstellen.
Das INTERLIS Modell WMS.ili
hat
folgenden Inhalt.
TRANSFER WMS;
MODEL WMS
DOMAIN
LKoord = COORD2 000000.000 000000.000
840000.000 300000.000;
TOPIC WMS =
TABLE Layer =
Name: TEXT*20;
URL: TEXT*255;
Geometry: SURFACE WITH (STRAIGHTS,ARCS) VERTEX LKoord;
NO IDENT
END Layer;
END WMS.
END WMS.
Das Modell besteht aus einer Table, in der ein WMS-Layer definiert wird.
Name
Definiert einen beliebigen Namen für dem WMS-Layer. Dieser Name enstpricht dem GeoShop-Layer der in eine GeoShop-View integriert werden kann.
URL
Basis URL für dem WMS-Dienst.
Geometry
Fläche für die Ausdehung des Layers, der durch den WMS-Dienst unterstützt wird.
Informationen wie die verfügbaren Layer und deren
Ausdehung erhalten Sie vom WMS-Dienst mit dem Request
Beispiel:
|
Enstprechend ist ein INTERLIS Datenfile zu erstellen, Beispiel:
SCNT
INTERLIS-File generated by infoGrips Conversion System
////
MTID WMS
MODL WMS
TOPI WMS
TABL Layer
OBJE 1 WMS_Intergraph http://maps1.intergraph.com/wms/world/request.asp?REQUEST=GetMap&SERVICE=WMS&VERSION=1.1.1&LAYERS=GLOBEImage&STYLES=&FORMAT=image/png&TRANSPARENT=TRUE&SRS=EPSG:4326
ETAB
TABL Layer_Geometry
OBJE 1 1
STPT -180.0 -90.0
LIPT 180.0 -90.0
LIPT 180.0 90.0
LIPT -180.0 90.0
LIPT -180.0 -90.0
ELIN
ETAB
ETOP
EMOD
ENDE
Das INTERLIS Datenfile ist in den GeoShop zu laden, indem
das File in das Upload-Verzeichnis
GEOSHOP_DIR\
data\upload
kopiert wird.
Beim Upload wird ein Layer erzeugt, der den gleichen Namen
hat, wie der Name im INTERLIS-File definiert ist. Beispiel
GEOSHOP_DIR\data\layers\WMS_Intergraph
.
In der Basis URL des WMS Layer werden die Parameter für dem WMS Request gemäss den WMS-Spezifikationen definiert. Zusätzlich können folgende weitere Parameter definiert werden. Diese Parameter sind keine Parameter der WMS-Spezifikation und gelten nur für die Anwendung im GeoShop.
GEOSHOP_OFFSET
offset-x,offset.y
.
Geometrischer Offset für den Request. Die WMS BBOX wird
um diesen Offset verschoben. Hilfreich zum Beispiel bei
einem WMS der EPSG:2056 zur Verfügung stellt, das Bild
aber aus EPSG:21781mit einem fixen Offset von
2'000'000,1'000'000 bereitstellt. Für den verwendeten
Bereich ist der Offset aber zu ungenau.
Beispiel für Stadt Zürich: http:// ... ?REQUEST=GetMap ... &GEOSHOP_OFFSET=0.907,-0.158 ...
Der WMS Layer kann nun in einer GeoShop View unter dem Namen
des Layers integriert werden. Beispiel
GEOSHOP_DIR\user\views\wmstest.vi
:
MAP
name STRING wmstest
display_name STRING 'WMS Client Test'
background_color STRING 255,255,255
layers LIST
MAP
name STRING WMS_Intergraph
display_name STRING 'Intergraph (maps1.intergraph.com)'
state STRING on
}
}
}
Die View wird schliesslich einem User zugeordnet. Der User kann nun über diese View den WMS-Layer ein- und ausschalten.