Zone visit analysis

Servicios web

Documentación sobre la funcionalidad de cálculo de cumplimiento de visita de zonas disponible a través del webservice HTTP-JSON/XML de la plataforma CERCALIA.

La URL base a utilizar es:

 

Cálculo del % de cumplimiento de visita de zonas

Calcular en qué % un vehículo ha pasado por todas las calles y plazas planificadas, mediante tecnología de análisis raster.

Para el análisis se utilizan los tracks GPS del vehículo (las trazas de los recorridos históricos a analizar), y las geometrías (líneas y polígonos) de las calles y plazas por donde debería pasar el vehículo. El objetivo de este análisis es detectar si el vehículo ha circulado por las zonas indicadas, independientemente del orden del recorrido.


PETICIÓN:

La petición se debe enviar en formato POST. Parámetros de la llamada:

CMD=coverage

Petición de cálculo de cobertura

KEY

Clave de seguridad. Es la misma KEY que para la API de mapas de Cercalia

XML

XML siguiendo el formato indicado por cercaliaCoverage.xsd

Formato del documento XML:

schema XML análisis cobertura

Donde:

El tag <trips> contiene una lista de geometrías en formato WKT de tipo LINESTRING o MULTILINESTRING, correspondientes al track GPS del vehículo a analizar. Estas geometrías se pintarán con el grueso indicado en el atributo width.  

El tag <zones> contiene la lista de calles y áreas para las que se analizará si el vehículo ha circulado. Cada zona se identifica con un identificador y una lista de geometrías pudiendo ser estas de tipo MULTILINESTRING, LINESTRING, POLYGON y MULTIPOLYGON.

Cada píxel de la imagen representa 1 metro cuadrado y no se pueden generar imágenes superiores a 10000 x 10000 píxeles.  Por lo que se debe asegurar que el bounding box conjunto de todas las geometrías del XML no superen los 10 km2.
 

Ejemplo de XML:

<coverage srs=”EPSG:4326”>
	<trips width=”2”>
		<geometry>LINESTRING()</geometry>
		<geometry>LINESTRING()</geometry>
		<geometry>MULTILINESTRING()</geometry>
	</trips>
	<zones>
		<zone id=”1”>
			<geometry>LINESTRING()</geometry>
			<geometry>LINESTRING()</geometry>
			<geometry>MULTILINESTRING()</geometry>
		</zone>
		<zone id=”2”>
			<geometry>POLYGON(())</geometry>
		</zone>
		<zone id=”3”>
			<geometry>POLYGON(())</geometry>
		</zone>
	</zones>
</coverage>

 

RESPUESTA:

Ejemplo de respuesta en XML:

<cercalia cmd="coverage" version="1">
<coverage percent=”56.4”>
	<zones>
		<zone id=”1” percent=”10.11”>
		<zone id=”2” percent=”50.12”>
		<zone id=”3” percent=”75.12”>
	</zones>
	<img center="314323,5129642" format="png" height="250" href="/MapesNG/Cercalia/map/map65/48126316709.png" width="350">
		<extent>
		<coord x="310850" y="5132122">
		<coord x="317795" y="5127162">
		</extent>
	</img>
</coverage>


En el tag coverage de la respuesta se obtiene el porcentaje global de cobertura sobre todas las zonas.  Dentro de cada zona también se indica el porcentaje de cobertura sobre ella.

Además, en el tag img se indican las dimensiones de la imagen generada y de la extensión que alberga.  Esta imagen se puede recuperar formando una URL con el host que ha atendido la petición y el contenido del tag href.  Siguiendo el ejemplo se recuperaría con:

http://lb.cercalia.com/MapesNG/Cercalia/map/map65/48126316709.png