Servicios web
Documentación sobre la funcionalidad Snap to road disponible a través del webservice HTTP-JSON/XML de la plataforma CERCALIA.
La URL base a utilizar es:
- JSON: http://ws.cercalia.com/services/json?markattributes=true&key=<clave API*>
- XML: http://ws.cercalia.com/services/xmlgeo?key=<clave API*>
* Clave de seguridad. Es la misma KEY que para la API de mapas de Cercalia
Las peticiones HTTP se pueden enviar en GET o POST
Las respuestas son en formato JSON / XML
Ajustar un track GPS a la vía y informe de excesos de velocidad
Petición para obtener la ruta real por la que ha circulado un vehículo, a partir de su track GPS
PETICIÓN:
Ejemplo de petición:
&cmd=geomtrack
&mode=regular&TRACK=[2.825850,41.969279@0,45@@70@@@A],[2.822355,41.965995@0,45@@10@@@A],[2.828963,41.968589@0,45@@10@@@B],[2.828278,41.965013@0,45@@10@@@B]&SPEEDING=10&SPEEDTOLERANCE=10&SRS=EPSG:4326
Donde:
TRACK |
Lista de puntos ordenados, separados por comas, limitado a un máximo de 5.000 puntos. Cada punto tiene el siguiente formato: [coordenada{@<compás>}{@@velocidad}{@@@atributo}] Donde:
|
SRS |
Sistema de coordenadas de la lista de puntos. Utilizar EPSG:4326 para coordenadas geográficas |
WEIGHT |
Peso usado para la resolución (opcional, por defecto distancia) |
NET |
Red usada para el cálculo (opcional) |
GEOMETRYSRS |
Sistema de coordenadas de la geometría resultante. Por defecto se usa el mismo que el parámetro SRS. Ej.: EPSG:4326 |
GEOMETRYTOLERANCE |
Indica la tolerancia (simplificación) en metros para la geometría generada (opcional). |
POINTS |
Obtener las coordenadas originales del track GPS desplazadas encima de la ruta devuelta (opcional) |
SPEEDING |
Valor booleano. Si cierto se devuelve los tramos de ruta separados por los que se excede la velocidad y los que no.
|
SPEEDTOLERANCE |
Tolerancia en Km/h sobre la velocidad máxima del tramo. Solo se considerará exceso de velocidad si la velocidad vehículo supera a la velocidad del tramo en más de speedTolerance km/h. Por defecto 0. |
Parámetros de control a bajo nivel:
ONLYTRACK |
Si true devuelve una geometría multipunto con los puntos de la ruta. Por defecto: false |
MAXDIRECTIONSEARCHDISTANCE |
Desviación máxima que puede haber entre un punto del track y un punto de la red que respete la orientación del punto. Por defecto: 10 Si no se encuentra ningún punto se procede a buscarlo sin tener en cuenta la orientación. |
MAXSEARCHDISTANCE |
Desviación máxima que puede haber entre un punto del track y un punto de la red sin tener en cuenta la orientación. Por defecto: 20 Si no se encuentra ningún punto en la red que cumpla con la distancia el punto se añade en línea recta al resultado. |
FACTOR |
Factor entre la distancia en ruta y la recta entre dos puntos. Si se supera este factor se ignora la ruta y se prefiere la línea recta. Por defecto: 2 |
RESPUESTA:
<cercalia cmd="geomtrack" version="1">
<track>
<geometry speeding="true" speedinglevel="2" distance="123">
<wkt>
LINESTRING (-3.7102887167967693 40.42997776054614, -3.7091707575880277 40.42986535088826, -3.7089192293084743 40.429844756839465, -3.708748549404491 40.42983789215513, -3.7077514194391186 40.42973492180528, -3.707419042783995 40.42971432771623, -3.706754289473746 40.42965941011441, -3.706305131831686 40.42961822188338, -3.706161401386227 40.429590763048566)
</wkt>
</geometry>
<geometry speeding="false" distance="123">
<wkt>
LINESTRING (-3.7058110584254202 40.42954271006045, -3.7054517323117726 40.42948092759633, -3.705379867089043 40.42947406287456, -3.704751046390159 40.429398550888514, -3.703717983813422 40.429220067672745, -3.7033047587827275 40.429137690642925, -3.7024064434986075 40.42898666582415, -3.7023615277344017 40.428972936278214, -3.701984235315071 40.42892488284522, -3.701409313533235 40.42880131671579, -3.7005109982491153 40.42861596709264, -3.6999360764672793 40.428485535567766, -3.6994150536024897 40.42838942796525, -3.698436860020802 40.428197754472336)
</wkt>
</geometry>
<points>
<point>
<from x="-3.074694" y="43.352639"/>
<to x="-3.0746008408859975" y="43.35254856142673"/>
</point>
</points>
</track>
<server>http://cercalia-tomcat-lbs-instance3:8080</server>
</cercalia>
Donde:
geomtrack= WKT de tipo polilínea (linestring / multilinestring) con la ruta real
speeding=
"true" -> indica que para este tramo se ha superado la velocidad máxima de la vía, teniendo en cuenta la tolerancia indicada.
"false" -> indica que para este tramo no se ha superado la velocidad máxima de la vía, teniendo en cuenta la tolerancia indicada.
speedinglevel= solo informado si speeding="true". Indica la franja de exceso de velocidad para este tramo, vinculado al valor de velocidad indicado en el parámetro &speeding=. Por ejemplo, con un valor &speeding de 10 km/h y sin speedtolerance, si un vehículo circulaba a 55 km/h en un tramo limitado a 50 km/h, el valor de speedinglevel será de 1, mientras que si circulaba a 67 km/h será de 2.
distance= indica la distancia del tramo, en metros. Permite generar una estadística de tramos conducidos o no con exceso de velocidad. En el caso que si, diferenciando por tramos de exceso de velocidad.
Representación visual de la polilínea: