GoogleマップAPIを使用して、交通手段に基づいて2つの場所間の距離を計算するにはどうすればよいですか?
Google マップ自体のようなものを設計し、出発地と目的地を設定し、次に交通手段の種類 (車、徒歩、公共交通機関) を設定し、それらに基づいて距離を計算する必要があります。
私のアプリケーションは、モバイル アプリケーションではなく Web アプリケーションです。
GoogleマップAPIを使用して、交通手段に基づいて2つの場所間の距離を計算するにはどうすればよいですか?
Google マップ自体のようなものを設計し、出発地と目的地を設定し、次に交通手段の種類 (車、徒歩、公共交通機関) を設定し、それらに基づいて距離を計算する必要があります。
私のアプリケーションは、モバイル アプリケーションではなく Web アプリケーションです。
「方向性」という意味だと思います
ドキュメントのこの部分を見てください:
https://developers.google.com/maps/documentation/directions/#TravelModes
注意してください、あなたには使用制限があります
2 つの地理座標間の距離を計算する場合は、ハイパーション式を使用できます。2点間に同じ距離が得られます。交通手段に基づいて距離を計算したい場合は、手動で行う必要があると思います。
rad = function(x) {return x*Math.PI/180;}
distHaversine = function(p1, p2) {
var R = 6371; // earth's mean radius in km
var dLat = rad(p2.lat() - p1.lat());
var dLong = rad(p2.lng() - p1.lng());
var a = Math.sin(dLat/2) * Math.sin(dLat/2) +
Math.cos(rad(p1.lat())) * Math.cos(rad(p2.lat())) * Math.sin(dLong/2) * Math.sin(dLong/2);
var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a));
var d = R * c;
return d.toFixed(3);
}
EDITED:さまざまな交通手段に基づいてパスを表示するには、以下のようなURLを呼び出すことができます.どこが正しい方法なのかわかりません.
"http://maps.google.com/maps?saddr=" + currentLatitude+","+currentLongitude+"&daddr="+fixedLatitude+","+fixedLongitude;
Distance Matrix を使用して問題を解決しました。