質問編集履歴
1
テストコードを追加
title
CHANGED
File without changes
|
body
CHANGED
@@ -31,4 +31,51 @@
|
|
31
31
|
});
|
32
32
|
```
|
33
33
|
|
34
|
-
どなたか詳しくご教示頂ければ幸甚で御座います。
|
34
|
+
どなたか詳しくご教示頂ければ幸甚で御座います。
|
35
|
+
|
36
|
+
###テストコード
|
37
|
+
```javascript
|
38
|
+
function calcRoute(startLatLng,targetLatLng){
|
39
|
+
var request = {
|
40
|
+
origin: new google.maps.LatLng(startLatLng[0], startLatLng[1]), // スタート地点
|
41
|
+
destination: new google.maps.LatLng(targetLatLng[0], targetLatLng[1]), // ゴール地点
|
42
|
+
travelMode: google.maps.DirectionsTravelMode.WALKING // 移動手段
|
43
|
+
};
|
44
|
+
|
45
|
+
directionsService.route(request, function (response, status) {
|
46
|
+
if(directionsDisplay){
|
47
|
+
directionsDisplay.setMap(null);
|
48
|
+
directionsDisplay.setPanel(null);
|
49
|
+
}
|
50
|
+
|
51
|
+
if (status === google.maps.DirectionsStatus.OK) {
|
52
|
+
var rendererOptions = {
|
53
|
+
map: map, // 描画先の地図
|
54
|
+
draggable: true, // ドラッグ可
|
55
|
+
//preserveViewport: true // centerの座標、ズームレベルで表示
|
56
|
+
suppressMarkers: true // デフォルトのマーカーを削除
|
57
|
+
};
|
58
|
+
directionsDisplay = new google.maps.DirectionsRenderer( rendererOptions );
|
59
|
+
directionsDisplay.setDirections( response );
|
60
|
+
directionsDisplay.setMap(map);
|
61
|
+
|
62
|
+
/*ルートの詳細表示*/
|
63
|
+
directionsDisplay.setPanel(document.getElementById("directions_panel"));
|
64
|
+
|
65
|
+
/* 出発地点・到着地点マーカーが移動された時 */
|
66
|
+
google.maps.event.addListener(directionsDisplay, 'directions_changed',function() {
|
67
|
+
currentDirections=directionsDisplay.getDirections();
|
68
|
+
var route=currentDirections.routes[0];
|
69
|
+
var s="";
|
70
|
+
for(var i=0; i<route.legs.length; i++) {
|
71
|
+
var routeSegment=i+1;
|
72
|
+
s+=route.legs[i].start_address+'to';
|
73
|
+
s+=route.legs[i].end_address+'\n';
|
74
|
+
s+=route.legs[i].distance.text;
|
75
|
+
}
|
76
|
+
dbg("directions_changed:"+s);
|
77
|
+
});
|
78
|
+
}
|
79
|
+
});
|
80
|
+
}
|
81
|
+
```
|