2012-04-19 7 views

答えて

2

地図API自体はその情報を持っていません。とにかく、それはOpenStreetMapから自由に得ることができます。 hereからダウンロードできます。

マップ上に結果を表示することをお考えの方は、ご理解いただけません。もしそうなら、あなたは素敵で無料のマップAPIがほしいと思うなら、私はLeafletを提案します。 OpenLayersのように成熟しているわけではありませんが、この記事に「アンドロイド」とタグを付けたように、リーフレットはモバイル部門でお尻をつかむだけです。

+0

ありがとうございます。私が必要とするのは、アンドロイドアプリケーションでマップをレンダリングすることです。私は、道路ネットワークを形成するノードとそれらの間のアークを調整したGPSを持っているマップを持っています。 2つのデバイスが同じ道路にあることを検出するアプリケーションが必要です – Magondu

2

OpenStreetMapは、この種のプロジェクトにとっては間違いなく良いデータソースです。 Googleマップとは異なり、開発者はマップの基礎となるベクターデータにアクセスできます(完全に開いている)。これは、単にGoogleマップでは不可能な面白い新しいユースケースを可能にし、このような幾何学的計算を含む何かがそのカテゴリにはっきりとフィットするでしょう。 OpenStreetMapやその他のベクターデータのソースが必要ですが、OpenStreetMapを超えるとこれは高価になる可能性があります。

残念ながら、それはあなたの質問に対する完全な答えではありません。あなたはまだ多くの仕事をあなたが意図した方法でデータを使用してください。 2つのポイント(2つのデバイスからのGPS読み取り値)の近接度を近くの道路に計算し、そのポイントが最も近い道路を特定する必要があります。これは、QGISなどのGISパッケージやジオ対応データベースシステムPostGISの機能を使用して行う強力なジオ計算の一種です。

しかし、これらの計算をデバイスで行う必要があるため、これはあなたの質問に対する答えではありません。私はアンドロイドでこれを行うための既製のライブラリを知らない。私はあなた自身をロールバックしなければならないと思います。

もう1つの課題は、最初に適切なフォーマットでデバイスにベクターデータを取得することですが、これが最初に解決すべき課題です。ベクターデータは、このアプリ内でオンザフライダウンロード機能を使用して、全国の大規模なダウンロード、またはおそらくはより小さい地域のいずれかになります。ベクタ形式の地図を使って作業しているときに、全国が実行不可能になることはありません(これまでのところ、MayDroydという素晴らしいアプリを試しましたか?)が、コンパクトな書式設定が必要です。幸いなことに、これらの問題のいくつかは、オープンソースの既製のライブラリで解決され始めています。たとえば、MapsForgeの上に構築しようとすることができます。

だから、このデータに目を向けて、あなたがやりたい計算をするためのデバイスコードを書くという課題に戻ります。 MapsForgeのようなプロジェクトに汎用のPostGISスタイルのジオ関数が含まれていれば、これを簡単にすることができます。開発者におそらくmapsforgeに尋ねる何か。

+0

親愛なるHarryさん、spatialite-androidライブラリを使用してSpatialiteをAndroidデバイスに移植することができます。 PostGISがデスクトップ環境で提供するほとんどの機能を備えています。 –

+1

リンク:https://code.google.com/p/spatialite-android/ –

関連する問題