[Mapserver-DE] Probleme mit der DarstellungeinesWMS-Kartenlayers

"Jäger, Frank \(KRZ\)" F.Jaeger at KRZ.DE
Don Dez 15 17:11:41 CET 2005


Hallo!

Ich kann nichts dazu sagen, wie man die MapDatei zusammefrickeln muss, damit das klappt.
Wir benutzen den Mapserver nur als Lieferanten von WMS.
Den WMS bringen wir dann mit Mapbender ins Web.

Einen bestehenden WMS wieder in einer Mapdatei zu behandeln ist quasi ein "kaskadierender" WMS ..?
So was haben wir noch nicht versucht.

Aber ich hatte das gleiche Problem auf der Ebene "Mapbender" bei Verwendung dieses WMS.
Ich hatte zeitweise beide Layer eingeschaltet. Dann kommt nichts mehr.

Hintergrund:
Als Datengrundlage des WMS beim Land dienen sicherlich TIFF-Kacheln.
Diese TIFFs liegen für den Layer "Str. 2" nur im östlichen Teil von NRW vor und für "Str. 3" nur im westlichen Teil.
Fordert man nun Daten des Layers aus einem Bereich an, in dem der gar keine Daten hat, dann bekommt man ....
... ja was eigentlich?

Vielleicht eine "voll-transparente PNG" ?

Der Effekt ist jedenfalls im MS IE eine graue Fläche.
In Firefox soll es klappen.

Da unser "Interessengebiet" ausschließlich im östlichen Teil liegt, habe ich einfach den Layer "Str. 2" deaktiviert. Nun klappt es mit dem Mapbender.

Man muss eben sicherstellen, nicht dort etwas anzufordern, wo nichts mehr ist.

Wenn man immer BEIDE Layer anfordert ist immer mindestens einer "daneben" und man bekommt NIE etwas.
Wenn man nur EINEN Layer anfordert (und dann noch an der richtigen Stelle!) dann könnte es klappen.

Ein Bild sagt mehr als ....  / Malen mit Zahlen:

 +------------+
 |   222333   |
 | 22222333   |
 |222222333333|    Das ist NRW !
 |222222333333|    
 |  22223333  |    NRW ist nicht rechteckig, wie der Extend des WMS. 
 |    2233    |
 +------------+
  6°        9°  

 +-+ Der Rahmen ist der Extend des Dienstes.

 " " Egal was man anfordert, man bekommt "nichts", 
     weil dort keine Kacheln mehr vorhanden sind.
     
 "2" Daten im Layer "Str. 2":
     fordert man Layer 2 an, bekommt man ein Bild
     fordert man Layer 3 an, bekommt man nichts
     fordert man Layer 2 + 3 an, bekommt man auch nichts

 "3" Daten im Layer "Str. 3":
     fordert man Layer 3 an, bekommt man ein Bild
     fordert man Layer 2 an, bekommt man nichts
     fordert man Layer 2 + 3 an, bekommt man auch nichts

nichts => grau

Das Problem ist wohl, dass immer beide Layer bestellt werden ?

Wie schon angedeutet, habe ich ein anderes Verständnis davon, was ein "Layer" ist.
Ich denke da immer an übereinander liegende Folien.
Hier sind es getrennte Gebiete, die jedoch im WMS als "Layer" definiert wurden.
Der angegebene Extend des WMS ist die Summe beider Gebiete.

Sauberer wäre es m.E. gewesen, zwei getrennte WMS zu definieren.

Wie man das nun im MapFile definiert muss ein anderer sagen.

mfG
F.J.


-----Ursprüngliche Nachricht-----
Von: KlausSchiefer at web.de [mailto:KlausSchiefer at web.de]
Gesendet: Donnerstag, 15. Dezember 2005 15:05
An: Jäger, Frank (KRZ)
Betreff: AW: [Mapserver-DE] Probleme mit der
DarstellungeinesWMS-Kartenlayers


Hallo Frank,

> Könnte das die Ursache sein?
ist eine gute Frage. Ich beschäftige mich erst seit einigen Wochen mit dem
MapServer und das ist meine erste Berührung mit einem WMS. Ich möchte Daten
aus Köln darstellen und habe daher im allgemeinen Teil der Mapdatei die
Projektion auf "init=epsg:31466" festgelegt. In dem Layer fordere ich "
Orthophoto Str. 2" mit epsg:31466 an. Ich kann aber nur vermuten, dass es
keine Probleme mit Orthophoto Str. 3 gibt. Aber die meisten WMS bieten ja
mehrere Projektionen an.
Ich vermute, dass der Fehler bei mir liegt, da mir nicht klar ist, was der
Mapserver mit den Daten macht. Wenn ich einen anderen Layer des
Landesvermessungsamtes

Layer 
LAYER
  NAME "DTK10"
  TYPE  RASTER
  MINSCALE 750
  MAXSCALE 7500
  #OFFSITE 0 0 0
  STATUS ON
  PROJECTION
     "init=epsg:31466"
  END # PROJECTION
  CONNECTIONTYPE WMS
  CONNECTION "http://10.65.113.58:80/GeoOgcWms1.3/servlet/DTK10?"
  METADATA
    "wms_title" "Dtk10G"
    "wms_name" "Raster:DTK10:Dtk10G"
    "wms_server_version" "1.1.0"
    "wms_srs" "epsg:31466"
    "wms_format" "image/png"
  END
END

treten die gleichen Probleme auf. Es wird nur eine graue Karte dargestellt,
die Datei 1134636408328421.img.tmp ist leer. 
Ein direkter Aufruf wie
http://10.65.113.58/GeoOgcWms1.3/servlet/DTK10?SERVICE=WMS&VERSION=1.1.0&REQ
UEST=GetMap&LAYERS=Raster:DTK10:Dtk10G&FORMAT=image%2Fpng&TRANSPARENT=TRUE&H
EIGHT=500&WIDTH=500&BBOX=2566149.9087244,%205644119.9047263,%202567490.27139
23,%205645460.2673943&SRS=EPSG%3A31466&STYLES=>
bringt das richtige Bild.
Auch CONNECTION
"http://10.65.113.58:80/GeoOgcWms1.3/servlet/DTK10?VERSION=1.1.0" bringt
keine Änderung.

Deshalb nochmals meine Verständnisfrage von gestern:
Reicht es aus, die oben aufgeführte Layerdefiniton in der Mapdatei zu
machen, um den Layer anzuzeigen? Oder muss ich mittels Mapscript noch
weitere Infos wie z.B. die Kartengröße oder die Boundingbox in der
Connection des Layers oder sonst wo übergeben.
Wenn ich den CONNECTION String des Layers bei der Verarbeitung mittels
MapScript so manipuliere, dass der String als URL-Eingabe eine Karte zeigt,
funktioniert es in der Anwendung trotzdem nicht.
Die Arbeitsweise des MapServers ist mir nicht klar.

Es wäre schön, wenn du mir einen Tipp geben könntest. 

Mit freundlichen Grüßen


Klaus

-----Ursprüngliche Nachricht-----
Von: mapserver-de-bounces at freegis.org
[mailto:mapserver-de-bounces at freegis.org] Im Auftrag von "Jäger, Frank
\(KRZ\)"
Gesendet: Donnerstag, 15. Dezember 2005 12:44
An: Org Mapserver-De at Freegis. (E-Mail)
Betreff: Re: [Mapserver-DE] Probleme mit der
DarstellungeinesWMS-Kartenlayers

Dieser Dienst enthält 2 Layer: "Str. 2" und "Str 3".

Das steht offensichtlich für 

Gauß-Krüger Meridianstreifen 2  
EPSG=31466 (=West = um 6° ~Rheinland)

und 

Gauß-Krüger Meridianstreifen 3  
EPSG=31467 (=Ost  = um 9° ~Westfalen)  


Nach meinem Verständnis sind Layer verschiedene fachliche Ebenen die man
wahlweise ein-/ausschalten kann.
Die Layer dieses Dienstes liegen aber nicht "übereinander" sondern
"nebeneinander".

Wenn man nun für Köln den Layer "Str. 3" oder für Bielefeld den Layer "Str.
2" aufruft hat man "daneben" gegriffen und wird mit einem grauen Bild
bestraft.

Könnte das die Ursache sein?

mfG
Frank Jäger

-----Ursprüngliche Nachricht-----
Von: mapserver-de-bounces at freegis.org
[mailto:mapserver-de-bounces at freegis.org]Im Auftrag von "Jörg Thomsen
(MapMedia GmbH)"
Gesendet: Mittwoch, 14. Dezember 2005 17:35
An: mapserver-de at freegis.org
Betreff: Re: [Mapserver-DE] Probleme mit der Darstellung
einesWMS-Kartenlayers


Hallo,

das Problem könnte bei den Leerzeichen in der Layerbezeichnung liegen 
(wer denkt sich sowas aus?). Gib doch mal bei wms_name die '+' mit an 
oder erstze sie durch '%20'

"wms_name" "Orthophoto+Str.+2"
oder
"wms_name" "Orthophoto%20Str.%202"

Jörg

_________________________________________________

MapMedia
Kartographie und raumbezogene Informationssysteme

Heilbronner Straße 10
D-10711 Berlin

fon:  +49.(0)30.89 06 82 70
fax:  +49.(0)30.89 06 82 73
mail: jt at mapmedia.de
net:  www.mapmedia.de
pgp:  on demand
_________________________________________________

KlausSchiefer schrieb:
> Hallo zusammen,
> 
>  
> 
> ich versuche unter XP mit MapServer 4.6.1 einen WMS-Layer aus dem 
> Landesverwaltungsnetz darzustellen. Der WMS-Dienst wird laut 
> Versionsinfo unterstützt. In meiner Map-Datei sieht der Eintrag 
> folgendermaßen aus:
> 
>  
> 
> LAYER
> 
>   NAME "LuftbilderLDS"
> 
>   TYPE  RASTER
> 
>   MINSCALE 750
> 
>   MAXSCALE 7500
> 
>   #OFFSITE 0 0 0
> 
>   STATUS ON
> 
>   PROJECTION
> 
>      "init=epsg:31466"
> 
>   END # PROJECTION
> 
>   CONNECTIONTYPE WMS
> 
>   CONNECTION "http://www.gis2.nrw.de/wmsconnector/wms/luftbild?"
> 
>   METADATA
> 
>     "wms_title" "Orthophoto Str. 2"
> 
>     "wms_name" "Orthophoto Str. 2"
> 
>     "wms_server_version" "1.1.0"
> 
>     "wms_srs" "epsg:31466"
> 
>     "wms_format" "image/png"
> 
>   END
> 
> END
> 
>  
> 
> Die Einträge für CONNECTION, "wms_title", "wms_name" und 
> "wms_server_version" stammen aus den Einträgen, die GetCapabilities 
> liefert. "wms_srs" "epsg:31466" ist als <SRS> dort vermerkt.
> 
> Im allgemeinen Teil der Map-Datei ist ebenfalls
> 
> PROJECTION
> 
>   "init=epsg:31466"
> 
> END #Projection
> 
> eingetragen.
> 
> Die gelieferten Bilder sind leider nur grau.
> 
> Mit einem direkten Aufruf
> 
>  
> 
>
http://www.gis2.nrw.de/wmsconnector/wms/luftbild?SERVICE=WMS&VERSION=1.1.0&R
EQUEST=GetMap&LAYERS=Orthophoto+Str.+2&FORMAT=image%2Fpng&TRANSPARENT=TRUE&H
EIGHT=250&WIDTH=250&BBOX=2569320,5647325,2569440,5647445&SRS=EPSG%3A31466&ST
YLES=&VERSION=1.1.0>
> 
>  
> 
> über der IE wird ein Luftbild dargestellt.
> 
>  
> 
> Frage: Ist hier ein Fehler zu erkennen? Oder habe ich den Vorgang noch 
> nicht ganz verstanden. Ist mit der Layerdefinition in der Map-Datei 
> alles nötige gemacht und der Rest wird vom MapServer erledigt? Oder muß 
> ich für die Darstellung des Layers weitere Schritte unternehmen?
> 
>  
> 
> Ich habe versuchsweise dem entsprechenden Layer über
> 
>  
> 
> // Parameter für Layer LuftbilderLDS übergeben
> 
> $layerLuftbilderLDS = $map->getLayerByName("LuftbilderLDS");
> 
> $connection = $layerLuftbilderLDS->connection;
> 
>  
> 
> // Daten für die BoundingBox aus $extentToSet holen
> 
> $BBOX = "BBOX=" . $extentToSet[0] . ", " . $extentToSet[1] .", " . 
> $extentToSet[2] . ", " .$extentToSet[3];
> 
>  
> 
> // String für getMap zusammensetzen
> 
> $getMap = $connection . 
>
"SERVICE=WMS&VERSION=1.1.0&REQUEST=GetMap&LAYERS=Orthophoto+Str.+2&FORMAT=im
age%2Fpng&TRANSPARENT=TRUE&HEIGHT=250&WIDTH=250&" 
> . $BBOX . "&SRS=EPSG%3A31466&STYLES=&VERSION=1.1.0>";
> 
>  
> 
> // dem Layer die neue connection zuweisen
> 
>  $layerLuftbilderLDS->connection = $getMap;
> 
>  
> 
> // Neue connection holen und ausgeben
> 
> $connection = $layerLuftbilderLDS->connection;
> 
> echo "conn: $connection<br />";
> 
>  
> 
> den gesamten Connectionstring mitgegeben.
> 
>  
> 
> Die Ausgabe entspricht bis aus die Werte der BBOX der o. g. 
> funktionierenden URL.
> 
>  
> 
>
http://www.gis2.nrw.de/wmsconnector/wms/luftbild?SERVICE=WMS&VERSION=1.1.0&R
EQUEST=GetMap&LAYERS=Orthophoto+Str.+2&FORMAT=image%2Fpng&TRANSPARENT=TRUE&H
EIGHT=250&WIDTH=250&BBOX=2566835.2808352, 
> 5644480.9090715, 2567282.0683912, 
> 5644927.6966275&SRS=EPSG%3A31466&STYLES=&VERSION=1.1.0>
> 
>  
> 
> Wenn ich diese Ausgabe über den Browser absetzte, kommt auch das 
> entsprechende Luftbild. In meiner Anwendung werden aber trotzdem nur 
> graue Karten bzw. Dateien mit der Endung 1134565754221227.img.tmp und 
> der Größe 0 produziert.
> 
>  
> 
> Hat jemand eine Idee, wo das Problem liegen könnte.
> 
>  
> 
> Mit freundlichen Grüßen
> 
>  
> 
> Klaus Schiefer
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> Mapserver-DE mailing list
> Mapserver-DE at freegis.org
> https://freegis.org/mailman/listinfo/mapserver-de

_______________________________________________
Mapserver-DE mailing list
Mapserver-DE at freegis.org
https://freegis.org/mailman/listinfo/mapserver-de

_______________________________________________
Mapserver-DE mailing list
Mapserver-DE at freegis.org
https://freegis.org/mailman/listinfo/mapserver-de




This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)