2016-07-21 4 views
0

Android上でOpenStreetMapを使用して中心点が(25.60156、-80.41306などの)特定の位置に対応するビットマップとしてマップを生成するにはどうすればよいですか?南北に約100メートル、東から西に約70-100メートルのエリアですか?レンダリングOpen Streetmapマップを既知の縮尺のビットマップとして表示

この例では、国/州のアウトライン、郡の概要、主要道路などの詳細情報をマップに含めたいとします。私は都市名、小道、交通路、水域などの物を使って地図を散らばってはいけません。

OSMマップをAndroidアプリに埋め込む方法を示す数百の例を見てきましたマップアプリケーションとしては、ELSE(OpenGL ES 2.0テクスチャとしての使用に適した8192 x 4096ビットマップのような)で使用するビットマップとしてマップを生成するためのライブラリとしてOSMを使用することに関する驚くほどの情報はほとんどないようです。

私はGoogle Mapsを使用することはもちろん可能ですが、私の言う限りでは、Google Mapsはこれを行うためのAPIが欠けているだけでなく、TOSによって何かを行うことを明示的に禁じられていますGoogle MapViewとしてそれをそのまま埋め込む以外に地図データを作成します。

無料の公開GISデータを使用するなど、他のアイデアにもオープンしています...しかし、ほとんどの「フリー」なGISデータでもESRIによって何らかの形で邪魔され、または、ソフトウェアによって生成されたデータファイルの所有権を主張することによって)。

注:一部のパブリックサーバーからマップデータを取得し、Androidのすべてのマップ生成をローカルで実行することをお勧めしますが、それが完全に望遠の場合は、Webサーバー上にマップビットマップを生成する方法があります必要に応じてアプリのユーザーに提供してください。

答えて

1

あなたが探しているのは、おおまかには、特定の地理的領域のビットマップを作成してイメージとして返すWebサービスの「静的マップ」です。多くの企業がこれをサービスとして提供しており、HTMLやテクスチャの画像を携帯端末で使用できるようにする傾向があります。

ここにはGoogle Maps Static implementationMapbox Static Maps APIがあります。両方とも、不要なビジュアルフィーチャを削除するカスタムスタイルをサポートしています。それはMapbox Studioの一部としてMapboxの焦点ですが、Google Maps supports styled mapsです。

全開示:私はMapboxのために働いています。

メートル単位で測定された特定のスケールで画像を要求するという点で、このtable of resolution and scaleはあなたに向かうはずです。

関連する問題