Der WMS Dienst des AIMS kann in Topobase Reports eingebunden werden.
Dazu muß folgende Funktion (hier ein Punktförmiges Objekt) in den Report eingebunden werden:
Dim geom as Autodesk.Map.IM.Graphic.Geometry
geom = Me.Record.GeometryValue(„GEOM“)
Dim URL as String
if not (geom is nothing) then
dim x as long
dim y as long
dim xmin as long
dim ymin as long
dim xmax as long
dim ymax as long
x = (geom.Bounds.MinX + geom.bounds.MaxX) / 2
y = (geom.Bounds.MinY + geom.Bounds.MaxY) / 2
xmin = x-100
ymin = y-100
xmax = x+100
ymax = y+100
URL = „http://SERVERNAME/mapserver2014/mapagent/mapagent.fcgi?REQUEST=GETMAP&SERVICE=WMS&VERSION=1.1.1&FORMAT=image/png&Layers=VOLLSTÄNDIGER/PFAD/ZUM/LAYER1,VOLLSTÄNDIGER/PFAD/ZUM/LAYER1,&SRS=EPSG:31467&BBOX=“ & xmin & „,“ & ymin & „,“ & xmax & „,“ & ymax &“&Width=1200&Height=1200″
else
URL=““
end if
wms = URL
Voraussetzung: Die angesprochenen Layer sind „WMS aktiviert“
Die Schreibweise des Vollständigen Pfades des ist korrekt (Groß-, Kleinschreibung beachten!)
Um das Bild im Bericht zu sehen wird dort ein „Bild“ hinzugefügt.
Die Option PictureFile bekommt für obiges Beispiel den Inhalt: {fun.wms}
Die eigentliche Funktion wurde dem geospatial navigator entnommen und auf aktuelle Versionen (2012-2014) angepaßt.
Hallo
ich würde das gerne nutzen, aber noch klemmt es…
Frage: zweimal „vollständigen Pfad zum Layer 1“?
Bitte evtl. ein Beispielscript oder Bildchen ergänzen.
Danke
Hallo,
in dem Beitrag ist die vollständige Funktion enthalten. Hier noch ein „echtes“ Beispiel für den WMS Aufruf:
URL = „http://bcsgisweb/mapserver2017/mapagent/mapagent.fcgi?REQUEST=GETMAP&SERVICE=WMS&VERSION=1.1.1&FORMAT=image/png&Layers=Layer/Topobase/Gis/v_nutzung,Layer/Topobase/Gis/v_flurstueck,Layer/Topobase/Stammdaten/v_gebaeude_alk,Layer/Topobase/Gis/v_lage_tbl,Layer/Topobase/Gis/v_strasse_l_2d,Layer/Topobase/Gis/v_strasse_l_3d,Layer/Topobase/Gis/v_wasserpegel&SRS=EPSG:31467&BBOX=“ & xmin & „,“ & ymin & „,“ & xmax & „,“ & ymax &“&Width=300&Height=300″
Der Pfad ist der Pfad in dem AIMS/MapGuide Repository.
Die Funktion wird im Bericht Designer bei der Pfadangabe für das Bild eingetragen.
Ich hoffe das hilft soweit.
Danke, B.Lucas
aber da schwimme ich jetzt etwas in mangelnden Grundkenntnissen. Kann man auch einfach öffentliche WMS-Dienste anhängen wie z.B. https://www4.geodat.ch/WMS_Ortho14_TG_LV95/service.svc/get ?
Nachtrag:
Ich habe jetzt diese Funktion, die für die Syntaxprüfung OK ist:
Dim geom as Autodesk.Map.IM.Graphic.Geometry
geom = Me.Record.GeometryValue(„GEOM“)
Dim URL as String
if not (geom is nothing) then
dim x as long
dim y as long
dim xmin as long
dim ymin as long
dim xmax as long
dim ymax as long
x = (geom.Bounds.MinX + geom.Bounds.MaxX) / 2
y = (geom.Bounds.MinY + geom.Bounds.MaxY) / 2
xmin = x-500
ymin = y-500
xmax = x+500
ymax = y+500
URL = „https://www4.geodat.ch/WMS_Ortho14_TG_LV95/service.svc/get &SERVICE=WMS &VERSION=1.3.0 &FORMAT=image/png &Layers=Orthophoto_Fruehling_14 &SRS=EPSG:2056 &BBOX=“ & xmin & „,“ & ymin & „,“ & xmax & „,“ & ymax & “ &Width=300 &Height=300″
else
URL=““
end if
MEINE_WMS_FUNKTION =URL
Aber bei der Vorschau erhalte ich diese Fehlermeldung:
„Fehler in Funktion ‚MEINE_WMS_FUNKTION‘ Der eingegebene Index liegt außerhalb des Bereichs des Lesevorgangs. „
Hallo,
für den Test von WMS Diensten würde ich Gaia empfehlen.
Der Aufruf für den Dienst scheint fehlerhaft zu sein. Ich erhalte mit der Angabe oben nichts. Eine kleine Korrektur verbindet mich und zeigt mir den Layer an. Allerdings auch keine Vorschau.
https://www4.geodat.ch/WMS_Ortho14_TG_LV95/service.svc/get? Evtl. muss man sich hierfür Anmelden.
Anmelden: In Map erscheint die Abfragemaske, aber da muss man nichts eingeben.
Nachtrag:
ich vermute, das Beispiel gilt für FDO und nicht für „Oracle / IM“. WMS scheint jetzt zu laufen, aber die GEOM-Abfrage macht das Problem.