Как получить данные о местоположении точек из слоя листов WMS? - PullRequest
1 голос
/ 25 апреля 2020

Я очень плохо знаком с работой с картами, и мне было поручено собрать данные о точках с этого сайта: https://mapadefosas.mjusticia.es/exovi_externo/CargarMapaFosas.htm#

Пока мне удалось выяснить, как Загрузите карту и один из слоев:

library("leaflet")
library("leaflet.extras")
library("shiny")

x.WGS=-3.87988
y.WGS=40.26270
leaflet() %>% setView(x.WGS, y.WGS, zoom = 5) %>%
  addTiles() %>%
  addWMSTiles(
    baseUrl = "https://mapadefosas.mjusticia.es/geoserver/wms",
    layers = "INTERVENIDA",
    options = WMSTileOptions(format = "image/png", transparent = TRUE), attribution = "") 

Но я немного застрял в том, как я могу получить информацию о баллах из этого. Может кто-нибудь помочь? Насколько я понимаю, блестящая упаковка должна быть здесь полезной, но я не уверен, как это сделать.

1 Ответ

1 голос
/ 26 апреля 2020

Вы не можете. Вы получаете изображений с конечной точки WMS , которые содержат небольшие графические флаги и вообще не имеют машиночитаемых данных. Сравните, например, с WFS или векторными плитками , стеками протоколов, которые служат аналогичным целям, но предоставляют доступ к необработанным (э) географическим объектам.

Тем не менее, есть некоторые хитрости, которые можно применить к этой конкретной конечной точке WMS . Если вы внимательно посмотрите на XML документа GetCapabilities для этой конечной точки , вы заметите, что можете попросить конечную точку WMS предоставить вам изображения в нескольких форматах, например image/png или image/jpeg; но эта конкретная конечная точка предоставляет неформатные форматы, такие как application/rss+xml (AKA GeoRSS).

Поэтому, если вы берете один из URL-адресов запроса в средстве просмотра OpenLayers, измените image/png на application/rss+xml и выполните ручной запрос к конечной точке WMS, например ...

https://mapadefosas.mjusticia.es/geoserver/wms?LAYERS=PROSPECTADA&SRS=EPSG:4326&FORMAT=application/rss+xml&TRANSPARENT=true&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&EXCEPTIONS=application/vnd.ogc.se_inimage&BBOX=-10.12451171875,34.287109375,5.12451171875,45.712890625&WIDTH=694&HEIGHT=520

... тогда вы получите правильно сформированный, разбираемый XML документ, который выглядит как ...

<?xml version="1.0" encoding="UTF-8"?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:georss="http://www.georss.org/georss" version="2.0"><channel>    <title>exovi:OV_VISTA_4326_PROSPECTADA</title><description>Generated from exo2</description><link><![CDATA[https://mapadefosas.mjusticia.es:443/geoserver/wms?service=wms&request=GetMap&version=1.1.1&format=application%2Frss+xml&layers=exovi%3AOV_VISTA_4326_PROSPECTADA&styles=prospectada&height=520&width=694&transparent=true&bbox=-10.12451171875%2C34.287109375%2C5.12451171875%2C45.712890625&srs=EPSG%3A4326]]>    </link><atom:link href="https://mapadefosas.mjusticia.es:443/geoserver/wms?service=wms&amp;request=GetMap&amp;version=1.1.1&amp;format=application%2Frss+xml&amp;layers=exovi%3AOV_VISTA_4326_PROSPECTADA&amp;styles=prospectada&amp;height=520&amp;width=694&amp;transparent=true&amp;bbox=-10.12451171875%2C34.287109375%2C5.12451171875%2C45.712890625&amp;srs=EPSG%3A4326" rel="self"/><item><title>OV_VISTA_4326_PROSPECTADA.fid--343d670c_171b1be4379_4def</title><link><![CDATA[https://mapadefosas.mjusticia.es:443/geoserver/wms/reflect?featureid=OV_VISTA_4326_PROSPECTADA.fid--343d670c_171b1be4379_4def&layers=exovi%3AOV_VISTA_4326_PROSPECTADA&format=application%2Fatom%2Bxml]]></link><guid><![CDATA[https://mapadefosas.mjusticia.es:443/geoserver/wms/reflect?featureid=OV_VISTA_4326_PROSPECTADA.fid--343d670c_171b1be4379_4def&layers=exovi%3AOV_VISTA_4326_PROSPECTADA&format=application%2Fatom%2Bxml]]></guid>         <description><![CDATA[<h4>OV_VISTA_4326_PROSPECTADA</h4>
<ul class="textattributes">
<li><strong><span class="atr-name">CARTOGRAFICA_UTM_ID</span>:</strong> <span class="atr-value">177</span></li>
<li><strong><span class="atr-name">FOSA_NM</span>:</strong> <span class="atr-value">186/2009 ASTU</span></li>
<li><strong><span class="atr-name">FOSA_ID</span>:</strong> <span class="atr-value">186</span></li>
<li><strong><span class="atr-name">DENOMINACION_TX</span>:</strong> <span class="atr-value">Fosa en la Avda. de Oviedo, hacia el nº 28</span></li>

<li><strong><span class="atr-name">LOCALIDAD_TX</span>:</strong> <span class="atr-value">Noreña</span></li>
<li><strong><span class="atr-name">PROVINCIA_TX</span>:</strong> <span class="atr-value">Asturias</span></li>
<li><strong><span class="atr-name">LOCALIDAD_ALTERNATIVA_TX</span>:</strong> <span class="atr-value">Noreña</span></li>
<li><strong><span class="atr-name">RAZON_TX</span>:</strong> <span class="atr-value">FUSILAMIENTO</span></li>
<li><strong><span class="atr-name">FOSA_ESTADO_TX</span>:</strong> <span class="atr-value">DESAPARECIDA</span></li>
<li><strong><span class="atr-name">ESTADO_ACTUAL_FOSA_TX</span>:</strong> <span class="atr-value">BAJO CONSTRUCCIÓN</span></li>
<li><strong><span class="atr-name">NUM</span>:</strong> <span class="atr-value">0</span></li>
</ul>
]]></description><georss:point>43.394316667 -5.706486111</georss:point></item>    <item><title>OV_VISTA_4326_PROSPECTADA.fid--343d670c_171b1be4379_4df0</title><link><![CDATA[https://mapadefosas.mjusticia.es:443/geoserver/wms/reflect?featureid=OV_VISTA_4326_PROSPECTADA.fid--343d670c_171b1be4379_4df0&layers=exovi%3AOV_VISTA_4326_PROSPECTADA&format=application%2Fatom%2Bxml]]></link><guid><![CDATA[https://mapadefosas.mjusticia.es:443/geoserver/wms/reflect?featureid=OV_VISTA_4326_PROSPECTADA.fid--343d670c_171b1be4379_4df0&layers=exovi%3AOV_VISTA_4326_PROSPECTADA&format=application%2Fatom%2Bxml]]></guid><description><![CDATA[<h4>OV_VISTA_4326_PROSPECTADA</h4>

После этого вы сможете передавать это через XML или анализатор GeoRSS и преобразовывать ваши данные по желанию. В зависимости от вашего набора навыков и инструментов, вы можете попробовать другой формат, отличный от изображения. Нет необходимости работать с Leaflet, если вы можете просто загрузить данные.


(Обратите внимание, что эта конкретная конечная точка предлагает данные в формате GeoRSS на момент написания этой статьи и что другие конечные точки WMS могут предоставлять или не предоставлять форматы, отличные от изображений, как настроено их администраторами)

...