GetMap - WMS 1.1.1 vs 1.3.0

9

Isso funciona: 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=South_Carolina_Lithology 4326 & STYLES =

Isso não ocorre (imagem em branco): 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_Carolina_Lithology & CRS = EPSG: 4326 & STYLES =

Observe que 1.1.1 -> 1.3.0 e SRS-> CRS são as únicas alterações. Este é um problema com o serviço ou meu segundo URL está incorreto?

Eu observei o mesmo problema com outros serviços WMS:

Funciona: 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.1 .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 =

Não funciona (imagem em branco): 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 = imagem / png & TRANSPARENT = TRUE & BBOX = -126,24, -66,50 & LAYERS = conus_ir_4km_900913, conus_ir_4km & CRS = EPSG: 4326 & STYLES =

Por isso, suponho que seja um problema com meus URLs 1.3.0.

ca0v
fonte
1
É interessante notar que também é necessário redefinir a ordem do BBOX: 1.1.1 mrdata.usgs.gov/services/… 1.3.0 mrdata.usgs.gov/services/…
ca0v
Estritamente, ambos trabalham (faça o que for solicitado).
nmtoken 28/01

Respostas:

6

A diferença entre o WMS 1.1.1 e 1.3.0 é duas vezes.

MUDANÇA NO 1 - Uso de CRS / SRS

Use o SRS para 1.1.1

Use o CRS para 1.3.0

MUDANÇA No 2 - SOM WMS 1.3.0

A ordem dos parâmetros para o BBOX depende de a definição do CRS ter invertido os eixos. Você verá isso na solicitação GetCapabilities em 1.3.0 - a resposta deve mostrar os eixos invertidos.

BBOX = xmin, ymin, xmax, ymax NÃO FLIPPED

BBOX = ymin, xmin, ymax, xmax FLIPPED

Eu fiz uma lista de códigos EPSG que precisam ser invertidos criando um banco de dados SpatiaLite 4.3.0 e salvando esta solicitação SQL no arquivo:

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

Você verá que o EPSG: 4326 precisa ter eixos virados.

4326 1 WGS 84 Latitude Norte Longitude Leste

ESTE É O PEDIDO 1.3.0 CORRIGIDO

A mudança é 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.3.0&WID = 256 & HEIGHT = 256 & FORMAT = image / png & TRANSPARENT = VERDADEIRO & BBOX = 24, -126,50, -66 & LAYERS = conus_ir_4km_900913, conus_ir_4km & CRS = EPSG: 4326 & STYLES =

Jason Argonaut
fonte
Estritamente, essa resposta não está correta, não são xey lançados, é a definição de xey. O BBOX ainda é xmin, ymin, xmax, ymax no WMS 1.3.0. Em um WMS, x é o primeiro eixo e y é o segundo eixo. No WMS 1.3.0, a ordem dos eixos, conforme definida pela autoridade CRS, é usada. No EPSG: 4326, a autoridade (EPSG) define o primeiro eixo (x) como latitude e (y) é longitude. O WMS 1.1.1 ignorou a ordem do eixo CRS e o EPSG: 4326 definido incorretamente como long / lat.
nmtoken 28/01
6

Substitua EPSG: 4326 por CRS: 84 e ele funciona nos dois casos:

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_Colina_Lithology&CRS:L

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&WID = 256 & ALTURA = 256 & FORMATO = imagem / png & TRANSPARENTE = VERDADEIRO & BBOX = -126,24, -66,50 & CAMADAS = conus_ir_4km_900913, conus_ir_4km & CRS = CRS: 84 & STYLES &

É possível notar que isso funciona porque no WMS 1.1.1 EPSG: 4326 está definido incorretamente como tendo eixos de coordenadas longas / lat. No WMS 1.3.0, os eixos corretos lat / long são usados.

O CRS: 84 é definido pelo OGC como tendo o mesmo dado que o EPSG: 4326 (que é o dado do World Geodetic System 1984 ~ EPSG :: 6326), mas com a ordem dos eixos longo / lat.

O CRS: 84 foi introduzido com a publicação da especificação WMS 1.3.0, para superar esse problema.

ca0v
fonte
1
Artigo de
ca0v