2

地球を、オブジェクトを割り当てることができる別々の領域に分割したいと考えています。

基本的に、私は地図を持っています (Google マップまたは他の場所から、正確なソースは重要ではありません)。このマップでは、さまざまなタイプのリージョンを定義したいと考えています。たとえば、タイプ A、B、または C のリージョン、またはタイプのないリージョンがある場合があります。

私の質問は次のとおりです。これをどのように実装できますか? どのテクニックを使用しますか?

基本的に、いくつかのオプションが頭に浮かびます。

  • マップ プロジェクションを使用してマップを 2D の四角形に投影し (サブ質問: どちらを使用しますか?)、領域を四角形として定義します。明らかな利点は、射影以外に複雑な数式を気にする必要がないことです。欠点は、投影されたマップにすべての入力を投影する必要があることです。

  • 球を使用し、三角関数を使用して領域の面積を計算します。これは間違いなく数式に関する作業ですが、射影は必要ありません。

他にどのような可能性がありますか?個々の長所と短所は何ですか?

これを行う理由は、エンド ユーザーが自分のモバイル デバイスを使用して自分の現在地を取得する可能性があるためです。次に、アプリはユーザーがいる地域の種類を取得できる必要があります。

何か案は?

4

2 に答える 2

0

ほとんどの場合、マップ アプリケーションは空間インデックスを使用してマップを分割します。空間インデックスは空間充填曲線です。ヒルベルト曲線のようなもっと複雑な曲線もあります。Microsoft bing マップは z 曲線を使用します。3D 空間インデックスを使用することもできますが、非常に複雑です。しかし、ほとんどの場合、これは単にタイリングとマップのクエリを高速化するためのものです。

  1. http://msdn.microsoft.com/en-us/library/bb259689.aspx
于 2013-04-17T15:29:14.880 に答える
-2

良いニュースがあります。あなたが見ている地図 (Google マップなど) はすでに 2D 投影されているので、投影について心配する必要はありません。

幸運を

于 2013-04-17T14:34:24.353 に答える