0

ポイントを地図上に表示するac#silverlightアプリケーションを書いています。

基本的に必要なことは次のとおりです。 1. 場所のデータセットがあります。たとえば、(現在の場所の) データセットから最も近い 10 の場所を見つける必要があります。また、「ロンドン」などの場所を検索して、そこから最も近い場所を読み取り可能な XML ファイルで提供する必要があります。2. 次に、アクセスできる API を使用して、これらの 10 の場所に関する情報を要求し、残りのインターフェイスを介してデータを返す必要があります。

ポイント2は大丈夫です。しかし、ポイント 1 について最善の方法は何でしょうか。人々はそこにあるデータセットを bing や google などのマッピング API にアップロードし、現在の場所を提供したり、指定した場所を検索したりした場合に必要な結果を返すようにしていますか?

ご指導ありがとうございました

4

1 に答える 1

0

独自のデータベースをセットアップしていますか? もしそうなら、 PostGIS拡張機能を備えた PostgreSQL のようなものを見ることができます。または、このライセンスを持っている場合は、Microsoft SQL Server 2008 Spatial を見ることができます。これらのデータベースはどちらも、空間クエリを処理できます。基本的に現在の場所を入力として使用し、その場所に最も近い 10 個のポイント/フィーチャを選択する SQL クエリを作成できます。

MapQuest のData Manager ( Developer Servicesの一部) にデータをアップロードして、 Search APIを使用して Data Manager のデータ テーブルを検索し、必要に応じて機能を返すようなこともできます。結果の形式として XML を指定できます。Search API を使用する利点は、半径、四角形、ルート ラインに沿った検索など、さまざまな種類の検索ができることだと思います。たとえば、2 つの場所の間にルートをプロットした場合、そのルートの距離内にあるすべてのものを見つけることができます。空間データベースでもこれを行うことができますが、経験のレベルによっては、セットアップが難しい場合があります。

それは、あなたが自分でどれだけやりたいか、そしてあなたが持っているデータセットの大きさに依存します. これがあなたを正しい方向に向けるのに役立つことを願っています!

于 2012-01-10T16:47:03.990 に答える