GetMap - WMS 1.1.1 vs 1.3.0

9

Dies funktioniert: http://mrdata.usgs.gov/services/sc?REQUEST=GetMap&SERVICE=WMS&VERSION=1.1.1&WIDTH=256&HEIGHT=256&FORMAT=image/png&BBOX=-83.4,32,-78.4,35.3&LAYERS=SL_ 4326 & STYLES =

Dies ist nicht der Fall (leeres Bild): http://mrdata.usgs.gov/services/sc?REQUEST=GetMap&SERVICE=WMS&VERSION=1.3.0&WIDTH=256&HEIGHT=256&FORMAT=image/png&BBOX=-83.4,32,-78.4,35.3&LAY = South_Carolina_Lithology & CRS = EPSG: 4326 & STYLES =

Beachten Sie, dass 1.1.1 -> 1.3.0 und SRS-> CRS die einzigen Änderungen sind. Ist dies ein Problem mit dem Dienst oder ist meine zweite URL falsch?

Ich habe das gleiche Problem mit anderen WMS-Diensten beobachtet:

Funktioniert: http://mesonet.agron.iastate.edu/cgi-bin/mapserv/mapserv?map=/mesonet/www/apps/iemwebsite/data/wms/goes/conus_ir.map&SERVICE=WMS&REQUEST=GetMap&SERVICE=WMS&VERSION1. .1 & WIDTH = 256 & HEIGHT = 256 & FORMAT = image / png & TRANSPARENT = TRUE & BBOX = -126,24, -66,50 & LAYERS = conus_ir_4km_900913, conus_ir_4km & SRS = EPSG: 4326 & STYLES =

Funktioniert nicht (leeres Bild): http://mesonet.agron.iastate.edu/cgi-bin/mapserv/mapserv?map=/mesonet/www/apps/iemwebsite/data/wms/goes/conus_ir.map&SERVICE=WMS&REQUEST = GetMap & SERVICE = WMS & VERSION = 1.3.0 & WIDTH = 256 & HEIGHT = 256 & FORMAT = image / png & TRANSPARENT = TRUE & BBOX = -126,24, -66,50 & LAYERS = conus_ir_4km_900913, conus_ir_4km & CRS = EPSGL = 4326

Ich gehe also davon aus, dass es ein Problem mit meinen 1.3.0-URLs ist.

ca0v
quelle
1
Es ist interessant festzustellen, dass es auch notwendig ist, die BBOX-Reihenfolge neu zu definieren: 1.1.1 mrdata.usgs.gov/services/… 1.3.0 mrdata.usgs.gov/services/…
ca0v
Streng arbeiten beide (tun, was sie verlangen).
nmtoken

Antworten:

6

Der Unterschied zwischen WMS 1.1.1 und 1.3.0 ist zweifach.

ÄNDERUNG NR. 1 - CRS / SRS-Verwendung

Verwenden Sie SRS für 1.1.1

Verwenden Sie CRS für 1.3.0

ÄNDERUNG NR. 2 - NUR WMS 1.3.0

Die Reihenfolge der Parameter für BBOX hängt davon ab, ob die CRS-Definition Achsen umgedreht hat. Sie sehen dies in der GetCapabilities-Anforderung unter 1.3.0 - die Antwort sollte die gespiegelten Achsen anzeigen.

BBOX = xmin, ymin, xmax, ymax NON-FLIPPED

BBOX = ymin, xmin, ymax, xmax FLIPPED

Ich habe eine Liste von EPSG-Codes erstellt, die umgedreht werden müssen, indem eine SpatiaLite 4.3.0-Datenbank erstellt und diese SQL-Anforderung dann in einer Datei gespeichert wird:

SELECT auth_srid, has_flipped_axes, ref_sys_name, axis_1_name, axis_1_orientation, axis_2_name, axis_2_orientation FROM "räumliche_ref_sys_all" WHERE auth_name = "epsg";

Sie werden dann sehen, dass EPSG: 4326 Achsen umgedreht haben muss.

4326 1 WGS 84 Breitengrad Nord Längengrad Ost

Dies ist die korrigierte 1.3.0-Anfrage

Die Änderung ist BBOX = 24, -126,50, -66

http://mesonet.agron.iastate.edu/cgi-bin/mapserv/mapserv?map=/mesonet/www/apps/iemwebsite/data/wms/goes/conus_ir.map&SERVICE=WMS&REQUEST=GetMap&SERVICE=WMS&VERSION=1.0 = 256 & HEIGHT = 256 & FORMAT = image / png & TRANSPARENT = TRUE & BBOX = 24, -126,50, -66 & LAYERS = conus_ir_4km_900913, conus_ir_4km & CRS = EPSG: 4326 & STYLES =

Jason Argonaut
quelle
Streng genommen ist diese Antwort nicht ganz richtig, es sind nicht x und y, die umgedreht werden, es ist die Definition von x und y. Die BBOX ist in WMS 1.3.0 immer noch xmin, ymin, xmax, ymax. In einem WMS ist x die erste Achse und y die zweite Achse. In WMS 1.3.0 wird die von der CRS-Behörde definierte Reihenfolge der Achsen verwendet. In EPSG: 4326 definiert die Behörde (EPSG) die erste Achse (x) als Breitengrad und (y) als Längengrad. WMS 1.1.1 ignorierte die Reihenfolge der CRS-Achsen und definierte EPSG: 4326 falsch als long / lat.
nmtoken
6

Ersetzen Sie EPSG: 4326 durch CRS: 84 und es funktioniert in beiden Fällen:

http://mrdata.usgs.gov/services/sc?REQUEST=GetMap&SERVICE=WMS&VERSION=1.3.0&WIDTH=256&HEIGHT=256&FORMAT=image/png&BBOX=-83.4,32,-78.4,35.3&LAYERS=South_CarolCC

http://mesonet.agron.iastate.edu/cgi-bin/mapserv/mapserv?map=/mesonet/www/apps/iemwebsite/data/wms/goes/conus_ir.map&SERVICE=WMS&REQUEST=GetMap&SERVICE=WMS&VERSION=1.0 = 256 & HEIGHT = 256 & FORMAT = image / png & TRANSPARENT = TRUE & BBOX = -126,24, -66,50 & LAYERS = conus_ir_4km_900913, conus_ir_4km & CRS = CRS: 84 & STYLES &

Es ist möglicherweise erwähnenswert, dass dies funktioniert, da in WMS 1.1.1 EPSG: 4326 fälschlicherweise als lang / lat-Koordinatenachsen definiert ist. In WMS 1.3.0 werden die richtigen Lat / Long-Achsen verwendet.

CRS: 84 wird von OGC so definiert, dass es das gleiche Datum wie EPSG: 4326 (das ist das Datum ~ EPSG :: 6326 des World Geodetic System 1984) hat, jedoch eine Achsenreihenfolge von lang / lat.

CRS: 84 wurde mit der Veröffentlichung der WMS 1.3.0-Spezifikation eingeführt, um dieses Problem zu lösen.

ca0v
quelle
1
Qualitätsbericht zu diesem Thema: viswaug.wordpress.com/2009/03/15/…
ca0v