setDirections は問題ありません: 公式ドキュメントによると、それらは文字列 (サーバー側の Google のジオコーダー エンジンによって暗黙的に解決される) または LatLong オブジェクトのいずれかであり、あなたのものは問題ありません。
origin: LatLng | String,
destination: LatLng | String,
https://developers.google.com/maps/documentation/javascript/directions#DirectionsRequests
ただし、完全なパスが定義されているため、表示ロジックのみを使用したいと思います。次に、道順は必ずしもあなたのためではありません。代わりにポリラインを使用することを検討してください ( https://developers.google.com/maps/documentation/javascript/overlays#PolylineArrays )。
あらゆる種類のグラフ ビジュアライザ (Google チャート: https://developers.google.com/chart/または Raphael JS ( http://g.raphaeljs.com/またはhttp://raphaeljs.com/analytics.html ) ) を使用して、標高。
コメントに答えるには、これに沿って何かを試してください ( https://developers.google.com/maps/documentation/javascript/overlays#Polylinesに基づく):
var routePath = new google.maps.Polyline({
path: kids,
strokeColor: "#FF0000",
strokeOpacity: 1.0,
strokeWeight: 2
});
routePath.setMap(map);
elevationPath = kids;
recalcHeight();
});
ご覧のとおり、まず 2 点間のルート リクエストが作成されます。ルートは一連のパスであるため、パスごとにポイントを収集し、それらを統合された配列 (または単一の「パス」) に配置し、いわゆるファサード関数を要求して、ルートのポリラインを描画します。ルート。
ポイントを収集した後、高度サービスを呼び出して、パスに沿った高度を伝えます。これが返されると、チャート API を使用してチャートを描画できます。
ただし、パスは既にあり、パスは 1 つしかありません。パスに基づいてポリラインを描画するように Google マップに指示し (変数の子供)、標高サービスに沿ってポイントの標高を返すように指示するだけです。その道。