Idioma:
  • Português
  • Español

Distance Matrix

La API Distance Matrix es un servicio que proporciona distancia y tiempo de viaje para una variedad de orígenes y destinos considerando las especificaciones ingresadas en la request. La API devuelve información basada en la ruta recomendada entre los puntos de inicio y finalización.



Simulación de uso

Vamos a simular la obtención de la matriz de distancias entre 3 sitios, donde el método de cálculo de ruta elegido fue el más corto.

  • MASP

  • CEAGESP

  • ZOO de São Paulo

Visualización de puntos en el mapa

Datos de entrada

El parámetro avoidanceTypes tiene la función de incluir restricciones que se tendrán en cuenta en la construcción de la ruta, los valores disponibles son: TUNNELS, BRIDGES, FERRIES.


El parámetro “calculationMode se completó con THE_SHORTEST, esto asegura que la ruta calculada por la API de Distance Matrix es la ruta más corta, para el modo de cálculo más rápido, se usa el valor “THE_FASTEST”.

En los parámetros de “destinations” y “origins” se agregaron las coordenadas de los 3 sitios para que la API calcule la matriz de distancias entre los puntos. El parámetro siteid se utiliza para identificar los sitios con sus respectivos pares de coordenadas.

El parámetro restrictionZones» no se usó en esta simulación, pero este parámetro es capaz de determinar qué áreas deben evitarse al calcular el itinerario (usando la API de Restriction Zone). En esta simulación no se utilizó el parámetro “speedPreferences”, pero con él es posible editar las velocidades de las carreteras de forma manual, esto provoca que la API ignore las velocidades medias estándar previamente definidas.

El parámetro startDate determina la fecha y hora en que comenzará el viaje. Este parámetro es obligatorio solo si el parámetro useRealSpeeds es igual a true.

El parámetro useRealSpeeds es el mismo que false; En esta simulación se utilizaron las velocidades estándar de las carreteras.

Los parámetros VehicleSpecification permiten especificar las características del vehículo de transporte tales como: Tipo de carga, Altura máxima, Longitud máxima, Longitud máxima entre ejes, peso máximo, peso máximo para materiales peligrosos, peso máximo para materiales explosivos, peso máximo para materiales contaminantes, peso máximo por eje y ancho máximo. Para esta simulación, estos parámetros no se utilizaron.

Para la simulación se utilizó el perfil del itinerario de la ruta “BRAZIL”.


Ejemplo de request

En el caso de la simulación anterior, el código de request sería:

Ejemplo de request API Distance Matrix
{
    "avoidanceTypes": [],
    "calculationMode": "THE_SHORTEST",
    "destinations": [
        {
            "latitude": -23.561603,
            "longitude": -46.655840,
            "siteId": "MASP"
        },
        {
            "latitude": -23.535016,
            "longitude": -46.735701,
            "siteId": "CEAGESP"
        },
        {
            "latitude": -23.650886,
            "longitude": -46.626675,
            "siteId": "ZOO"
        }
    ],
    "origins": [
        {
            "latitude": -23.561603,
            "longitude": -46.655840,
            "siteId": "MASP"
        },
        {
            "latitude": -23.535016,
            "longitude": -46.735701,
            "siteId": "CEAGESP"
        },
         {
            "latitude": -23.650886,
            "longitude": -46.626675,
            "siteId": "ZOO"
        }
    ],
    "restrictionZones": [],
    "speedPreferences": [],
    "startDate": 0,
    "useRealSpeeds": false,
    "tripProfile": "MAPLINK",
    "vehicleSpecification": {
        "loadTypes": [
            "RAW_MATERIALS"
        ],
        "maxHeight": 0,
        "maxLength": 0,
        "maxLengthBetweenAxles": 0,
        "maxWeight": 0,
        "maxWeightForDangerousMaterials": 0,
        "maxWeightForExplodingMaterials": 0,
        "maxWeightForPollutingMaterials": 0,
        "maxWeightPerAxle": 0,
        "maxWidth": 0
    }
}

Ejemplo de response

En el caso de la simulación anterior, el código de response sería:

Ejemplo de response API Distance Matrix
{
    "id": "5f6295695f9698634f2de3bb",
    "clientId": "*",
    "elements": [
        {
            "origin": "MASP",
            "destination": "MASP",
            "distance": 0,
            "nominalDuration": 0,
            "averageSpeed": 0.0,
            "speedProfilePenalty": 0
        },
        {
            "origin": "MASP",
            "destination": "CEAGESP",
            "distance": 11820,
            "nominalDuration": 1203,
            "averageSpeed": 35.37,
            "speedProfilePenalty": 0
        },
        {
            "origin": "MASP",
            "destination": "ZOO",
            "distance": 13744,
            "nominalDuration": 1516,
            "averageSpeed": 32.64,
            "speedProfilePenalty": 0
        },
        {
            "origin": "CEAGESP",
            "destination": "MASP",
            "distance": 10724,
            "nominalDuration": 1125,
            "averageSpeed": 34.32,
            "speedProfilePenalty": 0
        },
        {
            "origin": "CEAGESP",
            "destination": "CEAGESP",
            "distance": 0,
            "nominalDuration": 0,
            "averageSpeed": 0.0,
            "speedProfilePenalty": 0
        },
        {
            "origin": "CEAGESP",
            "destination": "ZOO",
            "distance": 19612,
            "nominalDuration": 2074,
            "averageSpeed": 34.04,
            "speedProfilePenalty": 0
        },
        {
            "origin": "ZOO",
            "destination": "MASP",
            "distance": 12240,
            "nominalDuration": 1390,
            "averageSpeed": 31.7,
            "speedProfilePenalty": 0
        },
        {
            "origin": "ZOO",
            "destination": "CEAGESP",
            "distance": 19657,
            "nominalDuration": 1932,
            "averageSpeed": 36.63,
            "speedProfilePenalty": 0
        },
        {
            "origin": "ZOO",
            "destination": "ZOO",
            "distance": 0,
            "nominalDuration": 0,
            "averageSpeed": 0.0,
            "speedProfilePenalty": 0
        }
    ],
    "createdAt": 1600296299267
}


Resumen de cálculo

Salida Llegada Distancia Duración Velocidad media Perfil de velocidad penalizada
MASP MASP 0 km 0 segundos 0 km/h 0
MASP CEAGESP 11.82 km 1203 segundos 35.37 km/h 0
MASP ZOO 13.74 km 1516 segundos 32.34 km/h 0
CEAGESP MASP 10.72 km 1125 segundos 34.32 km/h 0
CEAGESP CEAGESP 0 km 0 segundo 0 km/h 0
CEAGESP ZOO 16.61 km 2074 segundos 34.04 km/h 0
ZOO MASP 12.24 km 1390 segundos 31.70 km/h 0
ZOO CEAGESP 19.65 km 1932 segundos 36.63 km/h 0
ZOO ZOO 0 km 0 segundos 0 km/h 0
End of Content