允许检索地点之间的路线。
以下示例展示了如何使用此类获取从时代广场到中央公园(先在林肯中心停留)的路线,在地图上绘制相应位置和路线,并通过电子邮件发送地图。
// 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'), }, }, );
另请参阅
方法
方法 | 返回类型 | 简介 |
---|---|---|
add | Direction | 使用点(经纬度)添加路线必须经过的路径点。 |
add | Direction | 使用地址添加路线必须经过的航点。 |
clear | Direction | 清除当前的一组航点。 |
get | Object | 使用已设置的起点、目的地和其他选项获取路线。 |
set | Direction | 设置是否应返回备选路线,而不是仅返回排名最高的路线(默认为 false)。 |
set | Direction | 设置所需的到达时间(如果适用)。 |
set | Direction | 设置是否要避免某些类型的限制。 |
set | Direction | 设置所需的出发时间(如果适用)。 |
set | Direction | 使用点(经纬度)设置计算路线的终点位置。 |
set | Direction | 使用地址设置计算路线时所用的结束地点。 |
set | Direction | 设置路线所用的语言。 |
set | Direction | 设置出行方式(默认为驾车)。 |
set | Direction | 设置是否通过按更高效的顺序重新排列路径点来优化提供的路线(默认为 false)。 |
set | Direction | 使用点 (lat/lng) 设置计算路线时所用的起始地点。 |
set | Direction | 使用地址设置计算路线时所用的起始地点。 |
set | Direction | 设置解读地点名称时要使用的区域。 |
详细文档
add Waypoint(latitude, longitude)
使用点(经纬度)添加路线必须经过的路径点。
// Creates a DirectionFinder with a wapoint at Lincoln Center. const directionFinder = Maps.newDirectionFinder().addWaypoint( 40.772628, -73.984243, );
参数
名称 | 类型 | 说明 |
---|---|---|
latitude | Number | 航点的纬度。 |
longitude | Number | 航点的经度。 |
返回
Direction
- 用于简化调用链接的 DirectionFinder 对象。
add Waypoint(address)
使用地址添加路线必须经过的航点。
// Creates a DirectionFinder with a wapoint at Lincoln Center. const directionFinder = Maps.newDirectionFinder().addWaypoint( 'Lincoln Center, New York, NY', );
参数
名称 | 类型 | 说明 |
---|---|---|
address | String | 地址。 |
返回
Direction
- 用于简化调用链接的 DirectionFinder 对象。
clear Waypoints()
清除当前的一组航点。
const directionFinder = Maps.newDirectionFinder(); // ... // Do something interesting here ... // ... // Remove all waypoints added with addWaypoint(). directionFinder.clearWaypoints();
返回
Direction
- 用于简化调用链接的 DirectionFinder 对象
get Directions()
使用已设置的起点、目的地和其他选项获取路线。
// 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);
返回
Object
- 一个 JSON 对象,包含相应方向的一组路线,如此处所述
另请参阅
set Alternatives(useAlternatives)
设置是否应返回备选路线,而不是仅返回排名最高的路线(默认为 false)。如果为 true,则生成的对象的 routes
数组可能会包含多个条目。
// Creates a DirectionFinder with alternative routes enabled. const directionFinder = Maps.newDirectionFinder().setAlternatives(true);
参数
名称 | 类型 | 说明 |
---|---|---|
use | Boolean | true 表示返回备选路线,否则表示不返回 |
返回
Direction
- 用于简化调用链接的 DirectionFinder 对象
set Arrive(time)
设置所需的到达时间(如果适用)。
// 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);
参数
名称 | 类型 | 说明 |
---|---|---|
time | Date | 到达时间 |
返回
Direction
- 用于简化调用链接的 DirectionFinder 对象
另请参阅
set Avoid(avoid)
设置是否要避免某些类型的限制。
// Creates a DirectionFinder that avoid highways. const directionFinder = Maps.newDirectionFinder().setAvoid( Maps.DirectionFinder.Avoid.HIGHWAYS, );
参数
名称 | 类型 | 说明 |
---|---|---|
avoid | String | Avoid 中的常量值 |
返回
Direction
- 用于简化调用链接的 DirectionFinder 对象
另请参阅
set Depart(time)
设置所需的出发时间(如果适用)。
// 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);
参数
名称 | 类型 | 说明 |
---|---|---|
time | Date | 出发时间 |
返回
Direction
- 用于简化调用链接的 DirectionFinder 对象。
另请参阅
set Destination(latitude, longitude)
使用点(经纬度)设置计算路线的终点位置。
// Creates a DirectionFinder with the destination set to Central Park. const directionFinder = Maps.newDirectionFinder().setDestination( 40.777052, -73.975464, );
参数
名称 | 类型 | 说明 |
---|---|---|
latitude | Number | 终点位置的纬度 |
longitude | Number | 终点位置的经度 |
返回
Direction
- 用于简化调用链接的 DirectionFinder 对象
set Destination(address)
使用地址设置计算路线时所用的结束地点。
// Creates a DirectionFinder with the destination set to Central Park. const directionFinder = Maps.newDirectionFinder().setDestination( 'Central Park, New York, NY', );
参数
名称 | 类型 | 说明 |
---|---|---|
address | String | 结束地址 |
返回
Direction
- 用于简化调用链接的 DirectionFinder 对象
set Language(language)
设置导航所使用的语言。
// Creates a DirectionFinder with the language set to French. const directionFinder = Maps.newDirectionFinder().setLanguage('fr');
参数
名称 | 类型 | 说明 |
---|---|---|
language | String | BCP-47 语言标识符 |
返回
Direction
- 用于简化调用链接的 DirectionFinder 对象
另请参阅
set Mode(mode)
设置出行方式(默认为驾车)。
// Creates a DirectionFinder with the mode set to walking. const directionFinder = Maps.newDirectionFinder().setMode( Maps.DirectionFinder.Mode.WALKING, );
参数
名称 | 类型 | 说明 |
---|---|---|
mode | String | Mode 中的常量值 |
返回
Direction
- 用于简化调用链接的 DirectionFinder 对象
另请参阅
set Optimize Waypoints(optimizeOrder)
设置是否通过按更高效的顺序重新排列路径点来优化提供的路线(默认为 false)。
// Creates a DirectionFinder with wapoint optimization enabled. const directionFinder = Maps.newDirectionFinder().setOptimizeWaypoints(true);
参数
名称 | 类型 | 说明 |
---|---|---|
optimize | Boolean | true 表示优化订单,否则为 false |
返回
Direction
- 用于简化调用链接的 DirectionFinder 对象
另请参阅
set Origin(latitude, longitude)
使用点(经纬度)设置计算路线时所用的起始地点。
// Creates a DirectionFinder with the origin set to Times Square. const directionFinder = Maps.newDirectionFinder().setOrigin( 40.759011, -73.984472, );
参数
名称 | 类型 | 说明 |
---|---|---|
latitude | Number | 起始位置的纬度 |
longitude | Number | 起始位置的经度 |
返回
Direction
- 用于简化调用链接的 DirectionFinder 对象
set Origin(address)
使用地址设置计算路线时所用的起始地点。
// Creates a DirectionFinder with the origin set to Times Square. const directionFinder = Maps.newDirectionFinder().setOrigin( 'Times Square, New York, NY', );
参数
名称 | 类型 | 说明 |
---|---|---|
address | String | 起始地址 |
返回
Direction
- 用于简化调用链接的 DirectionFinder 实例
set Region(region)
设置解读地点名称时要使用的区域。支持的地区代码与 Google 地图支持的 ccTLD 相对应。例如,地区代码“uk”对应于“maps.google.co.uk”。
// Creates a DirectionFinder with the region set to France. const directionFinder = Maps.newDirectionFinder().setRegion('fr');
参数
名称 | 类型 | 说明 |
---|---|---|
region | String | 要使用的地区代码 |
返回
Direction
- 用于简化调用链接的 DirectionFinder 对象