GetRoute - web_services - 23.1

Guía de servicios web de Spectrum

Product type
Portfolio
Integrate
Product family
Product
Spectrum > Web Services
Version
23.1
Language
Español (México)
Product name
Spectrum Technology Platform
Title
Guía de servicios web de Spectrum
First publish date
2007
ft:lastEdition
2024-02-07
ft:lastPublication
2024-02-07T18:09:34.894393

Descripción

El servicio GetRoute permite obtener información de enrutamiento para un conjunto de dos puntos distintos o para múltiples puntos. Toma una ubicación de inicio y una de llegada con puntos intermedios opcionales como entrada y devuelve la ruta que es más rápida o más corta.

Nota: La respuesta del servicio REST será en formato JSON y la geometría arrojada estará en formato GeoJSON. Cuando una solicitud contiene parámetros de consulta no válidos en la URL de GET o una carga no válida para POST, se obtiene una respuesta de error acumulativa en un conjunto JSON. El nodo value en la respuesta JSON está obsoleto. Para comprobar los errores, solo se debe utilizar el nodo errors.

Formato de dirección URL de HTTP GET

El siguiente formato se utiliza para solicitudes HTTP GET. HTTP GET se utiliza para rutas simples, donde no se requiere carga JSON adicional. También se pueden agregar puntos intermedios a la solicitud HTTP GET.

 HTTP GET /rest/Spatial/erm/databases/dbsource.json?q=route&query_parameters 

Donde dbsource es el nombre de la base de datos que contiene los datos que se van a usar para la ruta. Utilice el nombre de la base de datos especificado en la herramienta Recursos de base de datos del módulo Spectrum Spatial Routing.

Formato de dirección URL de HTTP POST

El siguiente formato se utiliza para solicitudes HTTP POST:

 HTTP POST:  /rest/Spatial/erm/databases/dbsource.json?q=route&query_parameters POST BODY: Content-Type:application/json {Route Data} 

Route Data es el cuerpo POST json (Tipo de contenido: aplicación/json) para la información de ruta adicional que se va a utilizar en el cálculo que contiene puntos intermedios, actualizaciones transitorias o prioridad de tipos de camino. Para obtener información y ejemplos de estas opciones, consulte Opciones de GetRoute HTTP POST.

Parámetros de consulta

Esta operación toma los siguientes parámetros de consulta.

Parámetro Tipo Requerido Descripción
startPoint Cadena de caracteres La ubicación de inicio de la ruta en formato: x,y,coordSys. Por ejemplo: -74.2,40.8,epsg:4326
endPoint Cadena de caracteres La ubicación de llegada de la ruta en formato: x,y,coordSys. Por ejemplo: -74.2,40.8,epsg:4326
intermediatePoints Cadena de caracteres No Una lista de puntos intermedios para incluir junto con la ruta. Para incluir en la solicitud HTTP GET, use el formato: Long,Lat,Long,Lat,…,coordsys. Por ejemplo: -74.2,40.8,-73,42,epsg:4326. Para incluir un conjunto de puntos intermedios en una solicitud HTTP POST, agregue una carga MultiPoint JSON que indique los puntos que debe incluir la ruta. Si los puntos intermedios se especifican en la URL y en la carga json, esta última tiene preferencia y se ignoran los que están en de la URL.
oip Boolean No Un parámetro de procesamiento que indica si los puntos intermedios se deben optimizar. El valor predeterminado es "false". De manera predeterminada, los puntos intermedios de usarán en el cálculo en el orden especificado. Si se configura como verdadero, los puntos especificados se reordenarán en una manera óptima durante el cálculo de la ruta.
returnIntermediatePoints Boolean No

Se determina si se devuelven los puntos intermedios con la respuesta de la ruta. El valor predeterminado es "false".

Si un valor no corresponde a verdadero ni a falso, se elegirá falso de manera predeterminada. Con esta opción se devolverán los puntos intermedios en orden, como se especifica en el cuerpo POST. Si se establece el valor de opción oip en verdadero, entonces, con esta opción, se devolverán los puntos intermedios en un orden optimizado.

destinationSrs Cadena de caracteres No El sistema de coordenadas devuelve la ruta y las geometrías resultantes. El valor predeterminado es el sistema de coordenadas de los datos que se utilizan.
optimizeBy Cadena de caracteres No El tipo de optimización para usar en la ruta. Los valores válidos son tiempo o distancia. El valor predeterminado es tiempo.
returnDistance Boolean No Las direcciones de la ruta incluyen la distancia recorrida. El valor predeterminado es verdadero.
distanceUnit Cadena de caracteres No Las unidades para devolver la distancia. El valor predeterminado es m (metros). Los valores disponibles son : m(meter), km(kilometer), yd(yard), ft(foot), mi(mile).
returnTime Boolean No Las direcciones de la ruta incluyen el tiempo que tarda seguir una indicación. El valor predeterminado es verdadero.
timeUnit Cadena de caracteres No Las unidades para devolver el tiempo. El valor predeterminado es min (minutos). Los valores disponibles son: min(minuto), msec (milisegundo), s(segundo), h(hora).
language Cadena de caracteres No

El idioma de las indicaciones de recorrido se debe devolver, solo si las indicaciones del camino se devuelven (si directionsStyle se define como normal o breve). El valor predeterminado es inglés (en).

Las indicaciones se pueden devolver en los siguientes idiomas:

sq
Las indicaciones se arrojan en albanés.
zh_CN
Las indicaciones se arrojan en chino.
zh_TW
Las indicaciones se arrojan en chino (Taiwán).
hr
Las indicaciones se arrojan en croata.
cs
Las indicaciones se arrojan en checo.
da
Las indicaciones se arrojan en danés.
nl
Valores predeterminados
en
Las indicaciones se arrojan en inglés. Predeterminado
en-US
Las indicaciones se arrojan en inglés (Estados Unidos).
et
Las indicaciones se arrojan en estonio.
fi
Las indicaciones se arrojan en finlandés.
fr
Las indicaciones se arrojan en francés.
de
Las indicaciones se arrojan en alemán.
hu
Las indicaciones se arrojan en húngaro.
it
Las indicaciones se arrojan en italiano.
ja
Las indicaciones se arrojan en japonés.
lv
Las indicaciones se arrojan en letón.
lt
Las indicaciones se arrojan en lituano.
no
Las indicaciones se arrojan en noruego.
pt
Las indicaciones se arrojan en portugués.
ro
Las indicaciones se arrojan en rumano.
sk
Las indicaciones se arrojan en eslovaco.
sl
Las indicaciones se arrojan en esloveno.
es
Las indicaciones se arrojan en español.
sv
Las indicaciones se arrojan en sueco.
ru
Las indicaciones se arrojan en ruso.
tr
Las indicaciones se arrojan en turco.
returnDirectionGeometry Boolean No Incluye la geometría relacionada con cada instrucción de ruta en la respuesta de ruta. El valor predeterminado es "false".
directionsStyle Cadena de caracteres No

El tipo de indicaciones de ruta que se van a devolver. El valor predeterminado es NINGUNO. Especifique este parámetro si requiere que se devuelvan las indicaciones de ruta. Las opciones al especificar las indicaciones de ruta son:

None
No se devolvieron indicaciones. Valor predeterminado, si no se especifica.
Normal
Las indicaciones de devuelven en formato completo, apropiado para las aplicaciones web.
Terse
Las indicaciones de devuelven en formato corto, apropiado para las aplicaciones móviles.
segmentGeometryStyle Cadena de caracteres No

El formato de la geometría que representa un segmento de la ruta. El valor predeterminado es NINGUNO. Especifique este parámetro si solicitó la devolución de geometrías de un segmento. Las opciones al especificar las indicaciones de ruta son:

None
No se devolverá ninguna representación geométrica de un segmento. Valor predeterminado, si no se especifica.
End
Cada segmento se la ruta se devolverá con sus extremos en una cadena de línea.
All
Cada segmento se devolverá con todos sus puntos de forma como una cadena de línea. Las cadena de línea se puede usar como una superposición en un mapa.
primaryNameOnly Boolean No Si se deben devolver todos los nombres de una calle dada o solo el nombre principal de la calle. Solo se usa cuando se devuelven las indicaciones de ruta. El valor predeterminado es falso.
majorRoads Boolean No Especifica si en el cálculo deben incluirse todos los caminos o solo los caminos principales. Si se opta por incluir solo los caminos principales, el rendimiento mejorará pero se reducirá la precisión. El valor predeterminado es "false".
historicTrafficTimeBucket Cadena de caracteres No

Especifica si el cálculo de ruta utiliza las velocidades de tráfico histórico. Estas velocidades se basan en los diferentes depósitos de momento del día. Los datos deben incluir las velocidades de tráfico histórico para utilizar esta característica. Los datos para cada país/región tienen las mismas definiciones de depósito, donde las velocidades para estos valores de depósito pueden variar. Las opciones son:

None
El valor predeterminado. No se utilizan los datos del tráfico histórico en el cálculo. En su lugar, se utiliza un valor de velocidad promedio.
AMPeak
Calcule las rutas con las velocidades máximas de la mañana. El depósito de tiempo AMPeak es el momento desde las 07:00 hasta las 10:00 hs.
PMPeak
Calcule las rutas con las velocidades máximas de la tarde. El depósito de tiempo PMPeak es el momento desde las 16:00 hasta las 19:00 hs.
OffPeak
Calcule las rutas con las velocidades fuera del horario pico (durante el día). El depósito de tiempo OffPeak es el momento desde las 10:00 hasta las 16:00 hs.
Night
Calcule las rutas con las velocidades nocturnas. El depósito de tiempo Night es el momento desde las 22:00 hasta las 04:00 hs.
avoid Cadena de caracteres No Especifica una lista separada por comas de tipos de camino que se deben evitar durante el cálculo de rutas. Este es un parámetro de cadena de caracteres. Cuando se proporciona un tipo de camino como el valor del parámetro, la ruta excluye ese tipo de caminos durante el cálculo de rutas. Por ejemplo, si se proporciona tollRoad como el valor de parámetro, la ruta calculada contiene una ruta sin carreteras de peaje.
version Cadena de caracteres No Especifica la versión del servicio REST GetRoute. Los valores válidos son 1 y 2. El valor predeterminado para version es 1.

localRoadsLoadFactor

Cadena de caracteres No

Especifica el número de caminos locales que se pueden cargar en la memoria durante el cálculo de la ruta o la matriz. El número de caminos que puede cargar es directamente proporcional al valor seleccionado en el parámetro donde 1 es el mínimo y 3 es el valor máximo. Los valores válidos pueden ser 1, 2 o 3. El valor por defecto es 1. Consulte Factor de carga de caminos locales para obtener una descripción detallada, así como el impacto del parámetro en el cálculo de ruta o de matriz.

Nota: El parámetro no acepta valores decimales.

Ejemplos

Ruta simple con puntos de inicio y llegada.

http://<server>:<port>/rest/Spatial/erm/databases/usroutedatabase.json? q=route&startPoint=-73.97,40.79,epsg:4326&endPoint=-73.98,40.74,epsg:4326

Respuesta

{ 	"distance": 7779, 	"distanceUnit": "m", 	"time": 16.75, 	"timeUnit": "min" }

Ruta con puntos intermedios.

http://<server>:<port>/rest/Spatial/erm/databases/usroutedatabase.json? q=route&startPoint=-73.970257,40.794045,epsg:4326&endPoint=- 73.972103,40.786605, epsg:4326&intermediatePoints=-73.976266,40.788717,-73.973562,40.792193,-73.971802,40.794630, epsg:4326&oip=true&returnIntermediatePoints=true"/>

Respuesta

{ 	"distance": 1921, 	"distanceUnit": "m", 	"intermediatePoints": { 		"type": "MultiPoint", 		"coordinates": [ 			[-73.971802, 40.79463], 			[-73.973562, 40.792193], 			[-73.976266, 40.788717] 		] 	}, 	"time": 4.2, 	"timeUnit": "min" }

Ruta con indicaciones activadas.

http://<server>:<port>/rest/Spatial/erm/databases/usroutedatabase.json? q=route&startPoint=-73.97,40.79,epsg:4326&endPoint=-73.98,40.74, epsg:4326&language=en&directionsStyle=Normal&returnDirectionGeometry=true

Respuesta

{ 	"time": 10.58, 	"timeUnit": "min", 	"distance": 9035, 	"distanceUnit": "m", 	"language": "en", 	"directionsStyle": "Normal", 	"routeDirections": [ 		{ 			"time": 0.03, 			"timeUnit": "min", 			"distance": 25, 			"distanceUnit": "m", 			"instruction": "", 			"directionGeometry": 			{ 				"type": "LineString", 				"coordinates": 				[ 					[ 						-76.421169, 						42.69302 					], 					[ 						-76.421353, 						42.692645 					], 					... 				] 			} 		}, 		{ 			"time": 0.7, 			"timeUnit": "min", 			"distance": 394, 			"distanceUnit": "m", 			"instruction": "Turn right on W 91st St and travel West 394.0 m 			(0.7 min).", 			"directionGeometry": 			{ 				"type": "LineString", 				"coordinates": 				[ 					[ 						-76.429896, 						42.67153 					], 					... 				] 			} 		} 	] }

Respuesta de error específica de la versión

Cuando ingresa un valor de parámetro no válido (por ejemplo, puntos que quedan fuera de los límites) en una solicitud, la respuesta de error que obtiene depende de la versión que ingresó. Cuando la versión es 1, obtiene valor y error, y cuando la versión es 2, la respuesta sólo contiene el error.

  • Solicitud cuando version es 1:
    http://<server>:<port>/rest/Spatial/erm/databases/usroutedatabase.json? &q=route&startPoint=-14.321600,60.662859,epsg:4326&endPoint=-74.035208,40.695624, epsg:4326&distanceUnit=km&version=1
  • Respuesta:
    {   "value": "Point outside boundaries: (-14.3216,60.662859,0)",   "errors": [     {       "errorCode": 5008,       "userMessage": "Point outside boundaries: (-14.3216,60.662859,0)"     }   ] }
  • Solicitud cuando version es 2:
    http://<server>:<port>/rest/Spatial/erm/databases/usroutedatabase.json? &q=route&startPoint=-14.321600,60.662859,epsg:4326&endPoint=-74.035208,40.695624, epsg:4326&distanceUnit=km&version=2 
  • Respuesta:
    {   "errors": [     {       "errorCode": 5008,       "userMessage": "Point outside boundaries: (-14.3216,60.662859,0)"     }   ] }