GoogleMapAPIで2点間の距離を求める
2点間の距離を求めるときには
地球は平面ではなく球体なので
これを考慮する事
曲面上の距離を求める方法は
測地線航海算法が有名だけど
google map APIを使うことで
2点間の緯度経度がわかれば
簡単に距離を求めることができる
今回は、その中の
Geometry Libraryで提供されている
computeDistanceBetween()
を使う
GeometryLibraryを使うには
HTMLのヘッダでライブラリーの読み込みをする
<script src="http://maps.google.com/maps/api/js?sensor=false&libraries-geometry"></script>
そして、computeDistanceBetween()は以下のように使う
var startPosition = new google.maps.LatLng(startLatitude, startLongitude); var endPosition = new google.maps.LatLng(endLatitude, endLongitude); var distance = google.maps.geometry.spherical.computeDistanceBetween(startPosition,endPosition);
このように、開始位置と終了位置を
LatLngで指定して
それらを引数として
computeDistanceBetween()を呼び出す
この関数は戻り値として
distanceを返し、これはメートル単位になる