Class DirectionFinder

Encontrador dedireções

Permite a recuperação de rotas entre locais.
O exemplo abaixo mostra como usar essa classe para receber as direções da Times Square até o Central Park, parando primeiro no Lincoln Center, traçar os locais e o caminho em um mapa e enviar o mapa por e-mail.

// Get the directions.
const directions = Maps.newDirectionFinder()
                       .setOrigin('Times Square, New York, NY')
                       .addWaypoint('Lincoln Center, New York, NY')
                       .setDestination('Central Park, New York, NY')
                       .setMode(Maps.DirectionFinder.Mode.DRIVING)
                       .getDirections();
const route = directions.routes[0];

// Set up marker styles.

let markerLetterCode = 'A'.charCodeAt();

// Add markers to the map.
const map = Maps.newStaticMap();
for (let i = 0; i < route.legs.length; i++) {
  const leg = route.legs[i];
  if (i === 0) {
    // Add a marker for the start location of the first leg only.
    map.setMarkerStyle(
        Maps.StaticMap.MarkerSize.MID,
        Maps.StaticMap.Color.GREEN,
        String.fromCharCode(markerLetterCode),
    );
    map.addMarker(leg.start_location.lat, leg.start_location.lng);
    markerLetterCode++;
  }
  map.setMarkerStyle(
      Maps.StaticMap.MarkerSize.MID,
      Maps.StaticMap.Color.GREEN,
      String.fromCharCode(markerLetterCode),
  );
  map.addMarker(leg.end_location.lat, leg.end_location.lng);
  markerLetterCode++;
}

// Add a path for the entire route.
map.addPath(route.overview_polyline.points);

// Send the map in an email.
const toAddress = Session.getActiveUser().getEmail();
MailApp.sendEmail(
    toAddress,
    'Directions',
    `Please open: ${map.getMapUrl()}&key=YOUR_API_KEY`,
    {
      htmlBody: 'See below.<br/><img src="cid:mapImage">',
      inlineImages: {
        mapImage: Utilities.newBlob(map.getMapImage(), 'image/png'),
      },
    },
);

Consulte também

Métodos

MétodoTipo de retornoBreve descrição
addWaypoint(latitude, longitude)DirectionFinderAdiciona um ponto de passagem pelo qual a rota precisa passar, usando um ponto (lat/lng).
addWaypoint(address)DirectionFinderAdiciona um ponto de passagem pelo qual a rota precisa passar usando um endereço.
clearWaypoints()DirectionFinderLimpa o conjunto atual de waypoints.
getDirections()ObjectRecebe as rotas usando a origem, o destino e outras opções definidas.
setAlternatives(useAlternatives)DirectionFinderDefine se as rotas alternativas precisam ser retornadas ou não, em vez de apenas a rota com a classificação mais alta (padrão é "false").
setArrive(time)DirectionFinderDefine o horário de chegada desejado (quando aplicável).
setAvoid(avoid)DirectionFinderDefine se é necessário evitar determinados tipos de restrições.
setDepart(time)DirectionFinderDefine o horário de partida desejado (quando aplicável).
setDestination(latitude, longitude)DirectionFinderDefine o local de chegada para o cálculo de rotas usando um ponto (lat/lng).
setDestination(address)DirectionFinderDefine o local de chegada para o cálculo de rotas usando um endereço.
setLanguage(language)DirectionFinderDefine o idioma a ser usado para as direções.
setMode(mode)DirectionFinderDefine o modo de transporte (padrão é dirigir).
setOptimizeWaypoints(optimizeOrder)DirectionFinderDefine se a rota fornecida será otimizada ou não reorganizando os pontos de referência em uma ordem mais eficiente (padrão: "false").
setOrigin(latitude, longitude)DirectionFinderDefine o local de partida para calcular rotas usando um ponto (lat/lng).
setOrigin(address)DirectionFinderDefine o local de partida para calcular rotas usando um endereço.
setRegion(region)DirectionFinderDefine uma região a ser usada ao interpretar nomes de local.

Documentação detalhada

addWaypoint(latitude, longitude)

Adiciona um ponto de passagem pelo qual a rota precisa passar, usando um ponto (lat/lng).

// Creates a DirectionFinder with a wapoint at Lincoln Center.
const directionFinder = Maps.newDirectionFinder().addWaypoint(
    40.772628,
    -73.984243,
);

Parâmetros

NomeTipoDescrição
latitudeNumberLatitude do ponto de passagem.
longitudeNumberLongitude do ponto de passagem.

Retornar

DirectionFinder: o objeto DirectionFinder para facilitar o encadeamento de chamadas.


addWaypoint(address)

Adiciona um ponto de passagem pelo qual a rota precisa passar usando um endereço.

// Creates a DirectionFinder with a wapoint at Lincoln Center.
const directionFinder = Maps.newDirectionFinder().addWaypoint(
    'Lincoln Center, New York, NY',
);

Parâmetros

NomeTipoDescrição
addressStringUm endereço.

Retornar

DirectionFinder: o objeto DirectionFinder para facilitar o encadeamento de chamadas.


clearWaypoints()

Limpa o conjunto atual de waypoints.

const directionFinder = Maps.newDirectionFinder();
// ...
// Do something interesting here ...
// ...
// Remove all waypoints added with addWaypoint().
directionFinder.clearWaypoints();

Retornar

DirectionFinder: o objeto DirectionFinder para facilitar o encadeamento de chamadas.


getDirections()

Recebe as rotas usando a origem, o destino e outras opções definidas.

// Logs how long it would take to walk from Times Square to Central Park.
const directions = Maps.newDirectionFinder()
                       .setOrigin('Times Square, New York, NY')
                       .setDestination('Central Park, New York, NY')
                       .setMode(Maps.DirectionFinder.Mode.WALKING)
                       .getDirections();
Logger.log(directions.routes[0].legs[0].duration.text);

Retornar

Object: um objeto JSON que contém o conjunto de rotas para as direções, conforme descrito aqui.

Consulte também


setAlternatives(useAlternatives)

Define se as rotas alternativas precisam ser retornadas ou não, em vez de apenas a rota com a classificação mais alta (padrão é "false"). Se for verdadeiro, a matriz routes do objeto resultante poderá conter várias entradas.

// Creates a DirectionFinder with alternative routes enabled.
const directionFinder = Maps.newDirectionFinder().setAlternatives(true);

Parâmetros

NomeTipoDescrição
useAlternativesBoolean"true" para retornar rotas alternativas ou "false", caso contrário.

Retornar

DirectionFinder: o objeto DirectionFinder para facilitar o encadeamento de chamadas.


setArrive(time)

Define o horário de chegada desejado (quando aplicável).

// Creates a DirectionFinder with an arrival time of 2 hours from now.
const now = new Date();
const arrive = new Date(now.getTime() + 2 * 60 * 60 * 1000);
const directionFinder = Maps.newDirectionFinder().setArrive(arrive);

Parâmetros

NomeTipoDescrição
timeDateo horário de chegada

Retornar

DirectionFinder: o objeto DirectionFinder para facilitar o encadeamento de chamadas.

Consulte também


setAvoid(avoid)

Define se é necessário evitar determinados tipos de restrições.

// Creates a DirectionFinder that avoid highways.
const directionFinder = Maps.newDirectionFinder().setAvoid(
    Maps.DirectionFinder.Avoid.HIGHWAYS,
);

Parâmetros

NomeTipoDescrição
avoidStringum valor constante de Avoid

Retornar

DirectionFinder: o objeto DirectionFinder para facilitar o encadeamento de chamadas.

Consulte também


setDepart(time)

Define o horário de partida desejado (quando aplicável).

// Creates a DirectionFinder with a departure time of 1 hour from now.
const now = new Date();
const depart = new Date(now.getTime() + 1 * 60 * 60 * 1000);
const directionFinder = Maps.newDirectionFinder().setDepart(depart);

Parâmetros

NomeTipoDescrição
timeDateo horário da partida

Retornar

DirectionFinder: o objeto DirectionFinder para facilitar o encadeamento de chamadas.

Consulte também


setDestination(latitude, longitude)

Define o local de chegada para o cálculo de rotas usando um ponto (lat/lng).

// Creates a DirectionFinder with the destination set to Central Park.
const directionFinder = Maps.newDirectionFinder().setDestination(
    40.777052,
    -73.975464,
);

Parâmetros

NomeTipoDescrição
latitudeNumbera latitude do local final
longitudeNumbera longitude do local de destino

Retornar

DirectionFinder: o objeto DirectionFinder para facilitar o encadeamento de chamadas


setDestination(address)

Define o local de chegada para o cálculo de rotas usando um endereço.

// Creates a DirectionFinder with the destination set to Central Park.
const directionFinder = Maps.newDirectionFinder().setDestination(
    'Central Park, New York, NY',
);

Parâmetros

NomeTipoDescrição
addressStringo endereço final

Retornar

DirectionFinder: o objeto DirectionFinder para facilitar o encadeamento de chamadas.


setLanguage(language)

Define o idioma a ser usado para as direções.

// Creates a DirectionFinder with the language set to French.
const directionFinder = Maps.newDirectionFinder().setLanguage('fr');

Parâmetros

NomeTipoDescrição
languageStringum identificador de idioma BCP-47

Retornar

DirectionFinder: o objeto DirectionFinder para facilitar o encadeamento de chamadas.

Consulte também


setMode(mode)

Define o modo de transporte (padrão é dirigir).

// Creates a DirectionFinder with the mode set to walking.
const directionFinder = Maps.newDirectionFinder().setMode(
    Maps.DirectionFinder.Mode.WALKING,
);

Parâmetros

NomeTipoDescrição
modeStringum valor constante de Mode

Retornar

DirectionFinder: o objeto DirectionFinder para facilitar o encadeamento de chamadas.

Consulte também


setOptimizeWaypoints(optimizeOrder)

Define se a rota fornecida será otimizada ou não reorganizando os pontos de referência em uma ordem mais eficiente (padrão: "false").

// Creates a DirectionFinder with wapoint optimization enabled.
const directionFinder = Maps.newDirectionFinder().setOptimizeWaypoints(true);

Parâmetros

NomeTipoDescrição
optimizeOrderBoolean"true" para otimizar o pedido ou "false" para não fazer isso.

Retornar

DirectionFinder: o objeto DirectionFinder para facilitar o encadeamento de chamadas.

Consulte também


setOrigin(latitude, longitude)

Define o local de partida para calcular rotas usando um ponto (lat/lng).

// Creates a DirectionFinder with the origin set to Times Square.
const directionFinder = Maps.newDirectionFinder().setOrigin(
    40.759011,
    -73.984472,
);

Parâmetros

NomeTipoDescrição
latitudeNumbera latitude do local de partida
longitudeNumbera longitude do local de partida

Retornar

DirectionFinder: o objeto DirectionFinder para facilitar o encadeamento de chamadas.


setOrigin(address)

Define o local de partida para calcular rotas usando um endereço.

// Creates a DirectionFinder with the origin set to Times Square.
const directionFinder = Maps.newDirectionFinder().setOrigin(
    'Times Square, New York, NY',
);

Parâmetros

NomeTipoDescrição
addressStringo endereço inicial

Retornar

DirectionFinder: a instância do DirectionFinder para facilitar a encadeamento de chamadas.


setRegion(region)

Define uma região a ser usada ao interpretar nomes de local. Os códigos de região compatíveis correspondem aos ccTLDs aceitos pelo Google Maps. Por exemplo, o código de região "uk" corresponde a "maps.google.co.uk".

// Creates a DirectionFinder with the region set to France.
const directionFinder = Maps.newDirectionFinder().setRegion('fr');

Parâmetros

NomeTipoDescrição
regionStringo código da região a ser usado

Retornar

DirectionFinder: o objeto DirectionFinder para facilitar o encadeamento de chamadas.

Consulte também