1

こんにちは、swing アプリでマップを表示するためにJMapViewerを使用しています。マップ タイルを含むパネルを正常に作成しましたが、これらのマップ タイルは Map Viewer のデモ ソースで使用されている特定の領域のものです。必要な特定の領域のタイルを表示できますか? Google マップと同じように、自分の国 (パキスタン) の場所をマップに表示したいのですが、どうすればよいかわかりません。次に、JMapViewer の Layer と Layer Group について教えてください。ただのアイデア。

編集:イスラマバード地域のタイルをダウンロードしてマップに追加するにはどうすればよいですか。私がデモから学んだことはこれです:

private void loadMapTiles(){
     map().setTileSource(new OsmTileSource.Mapnik());
     map().setTileLoader(new OsmTileLoader(map()));
}

しかし、これは彼らが設定した特定の領域を示しています。

JTileDownloader をダウンロードしましたが、特定の領域の URL を取得する場所がわからないため、URL について混乱しています。

4

1 に答える 1

1
  1. JMapViewer名前付きを指定するとmap、次のようにイスラマバードが表示されます。

    Coordinate c = new Coordinate(33.7167, 73.0667);
    map.setDisplayPosition(c, 10);
    
  2. org.openstreetmap.gui.jmapviewer.Demo配布物に含まれている は、 の使用方法を示す完全な例ですLayerTree Layers Visibleチェックボックスをクリックして、効果を確認します。

補遺: これはMapQuest-OSMを 11 倍ズームで使用した結果です。Mapnikも動作するようです。必要なタイルが含まれていない場合は、ここでTileSource説明されているアプローチのいずれかが必要になる場合があります。

イスラマバード Mapnik

于 2014-08-08T00:40:58.577 に答える