Google Maps APIの距離行列リクエストは、25の宛先に制限されています。ジオロケーションを使用して現在地を取得し、収集した駅の住所のデータベースに基づいて最寄りの駅を見つけられるようにしたいと考えています。私の問題は、データベースに100以上の駅が含まれている可能性があるため、1つの大きな距離行列リクエストを複数の小さなリクエストに分割する必要があることです。Google Maps APIが結果を返すと、アドレスの形式が正規化されるため、アドレス文字列に基づいて応答を元のデータベース行とプログラムでペアリングすることが困難になります。また、これらは非同期リクエストです。つまり、応答は任意の順序で送信される可能性があります。応答と要求をペアにすることができるように、コールバック関数にインデックスを渡す方法はありますか?これを処理する最良の方法は何ですか?
質問する
1015 次
2 に答える
2
直線距離 (harsine 式を使用して地理座標から直接計算できます) を使用して、鉄道駅の最初のカットを行います。25 の最も近いステーションのみを距離行列に送信します。
于 2012-12-05T06:49:01.800 に答える
2
データベースに緯度/経度座標を保存すると、Haversine Formulaを使用して最寄りの駅を見つけることができます。このDEMOでは、この手法を使用しています。データベースは、Geonamesから取得したデータから派生しました。
于 2012-12-05T11:09:20.850 に答える