1

2点間の距離を計算するための良い解決策を探しています。

ジオポイントを距離で並べ替えたい。

私は持っています:

Cursor c = database.rawQuery("SELECT name,latitude,longitude,((longitude-21.15)*(longitude-21.15) +(latitude-54.05)*(latitude-54.05)) AS len FROM Object ORDER BY len;", null);

しかし、これは間違った解決策です...距離が間違っています...

私を助けてください。

4

3 に答える 3

0

距離の二乗を計算しています。SQLite には平方根関数がないため、Java コードでこれを計算する必要があります。

距離でソートするだけでよい場合は、現在のコードで問題ありません。

于 2013-03-18T10:36:08.627 に答える
-1

android.location.Locationクラスのstatic メソッドdistanceBetweenを使用できます。次に、計算された距離に基づいて、SortedMap のようなオブジェクトのソートされたコレクションを生成できます。

于 2013-03-18T11:32:08.733 に答える