クライアント側のJavaScriptを使用して、緯度+経度(実際にはGoogle LatLngオブジェクト)の重心を簡単な平均計算で検索したいと考えています。latinngsの重心(単純平均)を求める
Stack Overflowでこれまで何度も同じような質問が寄せられていますが、JavaScriptについては簡単な答えが見つかりません。 (これは私のグーグルの失敗であるかもしれませんが、重複している場合はお詫び申し上げます)
私はこのようなことをしていますが、例えば緯度179度、 -179、およびので、重心が180ではなく0
var avg_lat, avg_lng;
for (var i = 0; i < google_latlngs.length; i++) {
avg_lat += google_latlngs[0].lat();
avg_lng += google_latlngs[1].lng();
}
avg_lat = avg_lat/google_latlngs.length;
avg_lng = avg_lng/google_latlngs.length;
する必要があります私は、クライアント側のJavaScriptでこれを効率的に行う必要があり、そして私のポイントが離れて数km以上のなさそうなので、great-円の距離や何かファンシーは本当にこの場合に必要ではありません。
ありがとうございました。
更新:OK、 JavaScriptでセントロイドを見つける方法があります。
平均値は「179」と「-179」_is_ゼロです。コードが正しく動作しています。正の数しか持たない場合は、['Math.abs()'](https://developer.mozilla.org/ja/JavaScript/Reference/Global_Objects/Math/abs)を見てください。 – Bojangles
ああ申し訳ありませんが、私は経度179と-179を意味し、セントロイドは0ではなく180でなければなりません。これは世界の半分です。質問を編集する必要がありますか? – Richard