回答編集履歴

4

 

2022/03/01 13:45

投稿

退会済みユーザー
test CHANGED
@@ -3,7 +3,7 @@
3
3
 
4
4
  > routes[] には DirectionsRoute オブジェクトの配列が格納されています。各ルートは、DirectionsRequest で指定された出発地から目的地に至る経路を示します。一般に、リクエストの provideRouteAlternatives フィールドが true に設定されている場合(このとき複数のルートが返されます)を除き、リクエストに対して返されるルートは 1 つだけです。
5
5
 
6
- というのが目にとまったので、GASで同じような関数がないか調べたところ
6
+ というのが目にとまったので、GASでprovideRouteAlternatives フィールドを制御するような関数がないか調べたところ
7
7
  [この関数](https://developers.google.com/apps-script/reference/maps/direction-finder#setalternativesusealternatives)が該当しそうということがわかりました。
8
8
 
9
9
  なので、DirectionFinderオブジェクトの生成時に

3

 

2022/03/01 13:44

投稿

退会済みユーザー
test CHANGED
@@ -1,7 +1,7 @@
1
1
  ドキュメントを流し読みしてみました。
2
2
  [このページ](https://developers.google.com/maps/documentation/javascript/directions)のところで
3
3
 
4
- > `provideRouteAlternatives` (optional) when set to true specifies that the Directions service may provide more than one route alternative in the response. Note that providing route alternatives may increase the response time from the server. This is only available for requests without intermediate waypoints.
4
+ > routes[] には DirectionsRoute オブジェクトの配列が格納されています。各ルートは、DirectionsRequest で指定された出発地から目的地に至る経路を示します。一般に、リクエストの provideRouteAlternatives フィールドが true に設定されている場合(このとき複数のルートが返されます)を除き、リクエストに対して返されるルートは 1 つだけです。
5
5
 
6
6
  というのが目にとまったので、GASで同じような関数がないか調べたところ
7
7
  [この関数](https://developers.google.com/apps-script/reference/maps/direction-finder#setalternativesusealternatives)が該当しそうということがわかりました。

2

 

2022/03/01 13:42

投稿

退会済みユーザー
test CHANGED
@@ -16,7 +16,7 @@
16
16
  ```
17
17
  としてやれば、複数のルートを取得できるでしょう。
18
18
 
19
- 最短のルートを取得するのであれば、distanceでソートしてやればよいと思うので、下記のような形ではどうでしょうか。
19
+ たとえば距離(distance)が最短のルートを取得するのであれば、distanceで昇順ソートしてやればよいと思うので、下記のような形ではどうでしょうか。
20
20
  ```
21
21
  // routeのleg[0]のdistanceで昇順ソートし先頭([0])を得る
22
22
  const nearestRoute = route.sort((a,b)=> a.legs[0].distance.value - b.legs[0].distance.value)[0]

1

2022/03/01 13:40

投稿

退会済みユーザー
test CHANGED
@@ -18,7 +18,7 @@
18
18
 
19
19
  最短のルートを取得するのであれば、distanceでソートしてやればよいと思うので、下記のような形ではどうでしょうか。
20
20
  ```
21
- // routeのleg[0]のdistanseで昇順ソートし先頭([0])を得る
21
+ // routeのleg[0]のdistanceで昇順ソートし先頭([0])を得る
22
22
  const nearestRoute = route.sort((a,b)=> a.legs[0].distance.value - b.legs[0].distance.value)[0]
23
23
  console.log(nearestRoute.legs[0].distance.value)
24
24
  ```