2.7. Exemplo 5 - Rota com pontos de interesse

Nesse exemplo, temos uma rota entre Campo Grande - MS e Rio de Janeiro - RJ, onde queremos identificar todos os postos de fiscalização presentes na rota. Para isso vamos acrescentar o parâmetro place. Em categories informamos a categoria "FISCALIZACAO" e em bufferRouteInMeters e bufferStoppingPointsInMeters especificamos que queremos um raio de busca de 10 metros durante a rota e 20 metros nos pontos de parada respectivamente.

{ "calculationMode": "THE_FASTEST", "points": [ { "latitude": -20.46326264290572, "longitude": -54.612264694166356, "siteId": "Point 1-Campo Grande-MS" }, { "latitude": -22.907660731374474, "longitude": -43.18378983504734, "siteId": "Point 2-Rio de Janeiro-RJ" } ], "place": { "categories": [ "FISCALIZACAO" ], "bufferRouteInMeters": 10, "bufferStoppingPointsInMeters": 20 } }


O resultado pode ser observado no mapa abaixo, onde cada ícone representa um ponto de interesse encontrado durante a rota:

A response é apresentada de forma truncada neste texto para facilitar a leitura. A resposta completa pode ser conferida no anexo abaixo:

Em cada leg será retornado o objeto placeCalculation com as seguintes informações:

  • total - Número inteiro com o total de pontos de interesse encontrados no trecho;

  • places - Array de objetos, onde cada objeto representa um ponto de interesse encontrada. As seguintes informações são retornadas em cada objeto:

    • id - ID interno do ponto de interesse;

    • category - Categoria a qual o ponto de interesse pertence;

    • subCategory - Subcategoria a qual o ponto de interesse pertence;

    • address - Objeto contendo informações do endereço do ponto de interesse:

      • street - Rua do ponto de interesse;

      • number - Número do ponto de interesse;

      • city - Cidade do ponto de interesse;

      • state - Estado do ponto de interesse;

      • point - Objeto com as coordenadas (latitude e longitude) do ponto de interesse.

Segue a resposta truncada:

{ "id": "62a10bb83c37ae50da44e5db", "clientId": "maplink", "totalDistance": 1419705, "totalNominalDuration": 62024, "averageSpeed": 82.4, "legs": [ { "distance": 1419705, "nominalDuration": 62024, "averageSpeed": 82.4, "points": [ { "latitude": -20.46317952376137, "longitude": -54.612278411463116 } ........(truncado)......... { "latitude": -22.907659462421773, "longitude": -43.1837901886899 } ], "placeCalculation": { "total": 6, "places": [ { "id": "61b0c57caeddba55769f812b", "category": "FISCALIZACAO", "subCategory": "BALANCAS", "address": { "street": "Rodovia Comandante João Ribeiro de Barros", "number": "KM 224+800", "city": "Pederneiras", "state": "SP", "point": { "latitude": -22.32242165, "longitude": -48.96494395 } }, "active": true }, { "id": "61b0c59c0b666c4e05a14943", "category": "FISCALIZACAO", "subCategory": "BALANCAS", "address": { "street": "Rodovia Washington Luís", "number": "KM 197+100", "city": "Corumbataí", "state": "SP", "point": { "latitude": -22.26734202, "longitude": -47.70399607 } }, "active": true }, { "id": "61b0c57caeddba55769f812c", "category": "FISCALIZACAO", "subCategory": "BALANCAS", "address": { "street": "Rodovia Washington Luís", "number": "KM 155+180", "city": "Cordeirópolis", "state": "SP", "point": { "latitude": -22.49722347, "longitude": -47.41750679 } }, "active": true }, { "id": "61b0c5810b666c4e05a148e8", "name": "KM 112", "category": "FISCALIZACAO", "subCategory": "BALANCAS", "address": { "street": "Rodovia Anhanguera", "number": "KM 112", "city": "Sumaré", "state": "SP", "point": { "latitude": -22.81269811, "longitude": -47.21068737 } }, "active": true }, { "id": "61b0c5960b666c4e05a1492f", "name": "Posto Fiscal Estado do Rio de Janeiro", "category": "FISCALIZACAO", "subCategory": "POSTO_FISCAL", "address": { "street": "Rodovia Presidente Dutra", "number": "KM 323+667", "city": "Itatiaia", "state": "RJ", "point": { "latitude": -22.50462288, "longitude": -44.6116333 } }, "active": true }, { "id": "61b0c57caeddba55769f812e", "name": "Praça de Balança Queluz", "category": "FISCALIZACAO", "subCategory": "BALANCAS", "address": { "street": "Rodovia Presidente Dutra", "number": "KM 000+827", "city": "Queluz", "state": "SP", "point": { "latitude": -22.5179217, "longitude": -44.7067999 } }, "active": true } ] } } ], "source": "MAPLINK", "createdAt": 1654721486362 }