Trabalhar com polilinhas

Desenvolvedores do Espaço Econômico Europeu (EEE)

O método computeRoutes retorna o trajeto representado por uma polilinha como parte da resposta. É possível solicitar dois tipos de polilinhas:

  • Polilinha básica (padrão), representa um trajeto, mas sem informações de trânsito incorporadas à polilinha. As solicitações que retornam uma polilinha básica são cobradas pela taxa do Routes Basic. Saiba mais sobre o faturamento da API Routes.
  • A polilinha com informações de trânsito contém informações sobre as condições de tráfego ao longo do trajeto. As condições de trânsito são expressas em termos de categorias de velocidade (NORMAL, SLOW, TRAFFIC_JAM) aplicáveis a um determinado intervalo da polilinha. As solicitações de polilinhas com informações de trânsito são cobradas pela taxa do Routes Preferred. Saiba mais sobre o faturamento da API Routes.
  • A polilinha multimodal contém detalhes de transporte público e informações de trânsito. As solicitações de polilinhas multimodais são cobradas pela taxa do Routes Preferred. Saiba mais sobre o faturamento da API Routes.

Polilinha básica (padrão)

Uma polilinha é representada por um objeto Polyline. Um caminho é uma matriz de coordenadas LatLngAltitude. Para retornar uma polilinha básica, chame o método computeRoutes com a propriedade fields definida como path e chame o método createPolylines na instância da rota para receber um objeto Polyline.

O exemplo a seguir mostra como solicitar uma polilinha básica:

// Define a basic routes request.
const requestWithBasicPolyline = {
  origin: '155 Steuart St, San Francisco, CA 94105',
  destination: '450 Powell St, San Francisco, CA 94102',
  travelMode: 'WALKING',
  fields: ['path'],  // Request path field to get a polyline.
};
  

Polilinha com informações de trânsito

Para solicitar uma polilinha com reconhecimento de trânsito, adicione as seguintes propriedades à sua solicitação:

  1. Defina a propriedade travelMode como DRIVING.
  2. Defina a propriedade routingPreference como TRAFFIC_AWARE.
  3. Defina a propriedade extraComputations como TRAFFIC_ON_POLYLINE.
  4. Especifique os campos path, speedPaths e routeLabels.

O exemplo a seguir mostra como solicitar uma polilinha com informações de trânsito:

// Define a traffic aware routes request.
const requestWithTraffic = {
  origin: '200 King St San Francisco, CA 94107',
  destination: 'Pier 41, San Francisco, CA 94133',
  travelMode: 'DRIVING',
  routingPreference: 'TRAFFIC_AWARE',
  extraComputations: ['TRAFFIC_ON_POLYLINE'],
  fields: ['speedPaths'],
};
  

Mostrar polilinhas em um mapa

Para mostrar polilinhas em um mapa, chame createPolylines no objeto de rota e use o método setMap para definir o mapa da polilinha como o objeto de mapa. O objeto de mapa é usado para mostrar a polilinha no mapa.

O exemplo a seguir mostra como exibir uma polilinha em um mapa:

  // Call createPolylines to create polylines for the first route.
  mapPolylines = routes[0].createPolylines();
  // Add polylines to the map.
  mapPolylines.forEach((polyline) => polyline.setMap(map));