1

私は位置認識アプリケーションを作成しています。緯度と経度の座標を持つさまざまな店舗の情報を含む XML ファイルがサーバーにあります。私のアプリケーションでは、現在の緯度と経度の座標を取得し、XML ファイルも解析できます。

しかし、XML ファイルから現在の座標に基づいて最寄りの店舗を特定するにはどうすればよいでしょうか?

Google API を使用すると、クエリに従って最も近い場所を含む xml ファイルが返されます。しかし、ここで私の場合、サーバーでxmlファイルを使用しています。

提案してください

4

2 に答える 2

3

ユーザーが緯度/経度ポイントを送信して正しいアイテムを返すことができるように、データをDB形式(sqlite/mysql)に変換したほうがよいと思います...そうしないと、解析して比較する必要があります毎回ファイル全体...しかし、それでもその式を使用できます(実際には、比較ステップをアプリ内ではなくDBクエリにシフトしているだけです)

編集: これには、haversine を実装して x の結果を返す SQL クエリの例があります: MySQL Great Circle Distance (Haversine formula)

于 2011-08-13T14:27:30.060 に答える
2

これは、地球上の 2 点間の距離を計算するための hasersine 式です。

a = sin²(Δlat/2) + cos(lat1)*cos(lat2)*sin²(Δlong/2);
c = 2*atan2(√a, √(1−a));
d = R*c;

obj-c で簡単に適応させることができます。

注意: R は地球の半径 = 6,371km です。

したがって、両方のポイントの緯度と経度の差を計算し、それに基づいて d を計算するだけです。

お役に立てれば。

于 2011-08-13T14:15:08.560 に答える