android用アプリ 野外調査地図のホームページ

WmtsCapabilitiesを利用して地図タイルを表示する

 地図タイルサーバーには、サーバーが提供する地図タイルの種類やそれらのURL等の情報をまとめた WmtsCapabilities.xml ファイルやそのリクエスト方法が用意されている場合があります。本アプリのバージョン12.1以降ではそれらを利用して地図タイルを簡単に表示することができます。

 この機能の使い方の説明として、ここでは地質調査総合センターさんのウェブサイト(https://www.gsj.jp/HomePageJP.html)の地質情報配信サービス(https://gbank.gsj.jp/owscontents/)で提供されている地質図のスキャンデータの地図タイルを表示します。

 地質図地図タイルのWmtsCapabilities.xml ファイルは以下のページにあります。

 https://gbank.gsj.jp/geonavi/index.php?lang=ja#api_wmts

 このページの「WMTS メタデータのリクエスト」に示されているURLが WmtsCapabilities.xml ファイルのURLです。

 本アプリで WmtsCapabilities.xml ファイルの情報を利用して地図タイルを表示する際は、先ずそのURLをアプリに登録します。

 アプリのメニューの「地図タイル」→「WmtsCapabilities URLの登録・管理」をクリックし、「URLの新規登録」を選択します。

 

 下図のようなダイアログが表示されるので、上記の WmtsCapabilities.xml ファイルのURLをコピーしてダイアログの上の欄に貼り付けます。

 中央の欄は普通は空欄のままで良いです。下の欄にはこのURLに付ける名前を入力します。保存をクリックするとURLに付けた名前の拡張子が*.wcu のファイルがアプリのtilesフォルダに作成され、これでURLの登録は完了です。

 URLの登録が終わったら次はメニューの「地図タイル」→「登録したWmtsCapabilities URLを開く」をクリックします。「WmtsCapabilities URLを選択」画面には、登録したURLの名前の一覧が表示されます。さきほど登録したURLの名前をクリックします。

 クリックした後、URLが指し示す WmtsCapabilities.xml ファイルをインターネットを通じて読み込みます。xmlファイルのサイズによっては少し時間がかかる場合があります。読み込みが終わると下図のように地図上側にWmtsCapabilities操作パネルが表示されます。

 操作パネルの「タイル選択」ボタンをクリックすると、読み込んだ WmtsCapabilities.xml に含まれる地図タイルの一覧が表示されます。表示したい地図タイルをクリックするとその地図タイルが表示されます。また、「地図中心に近い順に並び替え」をクリックすると、WmtsCapabilities.xml に地図タイルの表示範囲が設定されている場合は、地図の中心に近い順に地図タイルの名前が並べ替えられます。

 地図の中心に近い順に並べ替えた一番上の地図タイルをクリックしてみます。

 クリックした地図タイルが表示されます。

 これで地図タイルの表示までは出来ました。同様に選択ボタンをクリックして地図タイルを複数重ねて表示することができます。

 WmtsCapabilities操作パネルの「ジャンプ」をクリックするとその地図タイルに表示範囲が設定されている場合はそこに移動します。「レイヤー削除」をクリックするとその地図タイルが消えます。「閉じる」をクリックすると、操作パネルが消えます。地図タイルが表示中の場合は、その地図タイルがそのまま表示されるので、消したい場合はレイヤーボタンをクリックして表示中のレイヤーの一覧からその地図タイルを削除します。

 操作パネルの「メニュー」をクリックすると、以下のメニューが表示されます。

 「地図タイル設定ファイル作成」は選択中の地図タイルについて、WmtsCapabilities.xmlを利用した方法ではなく通常の地図タイル設定で表示したい場合に実行します。

 実行をクリックして、キャッシュフォルダ名を入力します。

 この地図タイルに付ける名前を入力します。WmtsCapabilities.xmlでの地図タイルの名前がデフォルトで入力されています。Okをクリックすると設定が保存されます。

 メニューの「地図タイル選択」をクリックすると、さきほどの地図タイルが追加され、通常の地図タイル選択から表示できるようになっています。

 WmtsCapabilitiesメニューの「凡例URL表示」をクリックすると WmtsCapabilities.xml に凡例URLが指定されている場合は地図タイルの凡例のURLが青字で表示されます。「クリップボードにコピー」をクリックし、ブラウザ等でURLを開くと、その凡例の画像等をみることができます。

 なお、安全性に関する記述がありますが、これはインターネット上のリンクについては、リンク先が問題があるファイルである可能性について常に意識する必要があるためです。公的機関等の信用が置ける提供元の地図タイルであれば多くの場合は問題ないと思いますが、本アプリでは安全性の確認していないことを説明しています。

 WmtsCapabilitiesメニューの「地図タイル情報」をクリックすると、その地図タイルについての情報が表示されます。

 なお、ここに表示される対応ズームレベルは WmtsCapabilities.xml に記載されているもので、本アプリもこのズームレベルで地図表示を試みます。ところが、地図タイルによっては記載されたズームレベルと実際にタイルが提供されているズームレベルが異なる場合があります。本アプリはタイルがズームレベル18までの設定であれば、それ以上のズームレベルではレベル18のタイルを拡大表示します。しかしズームレベル20までの設定になっていて実際はレベル18までしかタイルがない場合は、レベル19以上では地図タイルが表示されなくなります。そのような場合にレベル19以上での地図タイル表示をするためには、先に示した方法で通常の地図タイル設定を作成した後、その地図タイル設定を編集して最大ズームレベルを実際のレベルに修正して下さい。

 ここまでは WmtsCapabilities.xml ファイルを利用する方法について説明しましたが、地図タイルサーバーにリクエストを送って WmtsCapabilities.xml と同様の内容の情報を受け取る方法でも地図タイルの表示が可能です。

 下図は地質図地図タイルと同じく地質調査総合センターさん提供の火山地質図地図タイルの利用方法のページで、サービスURLの上がWmtsCapabilities.xml、下がサーバーに送るリクエストです。本アプリへのURLの登録の際、上のWmtsCapabilities.xml 、下のリクエストのどちらでも地図タイル表示は可能です。ただし、下のリクエストの場合はサーバーからの情報に下の表にあるURLテンプレートが含まれていないようなので、URL登録画面の中央の欄に下の表のURLテンプレートを入力する必要があります。(上のWmtsCapabilities.xml を使用する場合は必要ありません。)

 また、WmtsCapabilities.xml やリクエストの他に、国土地位院のウェブ地図レイヤ定義ファイル(layer.txt等の名前のことが多い)も同様の方法で使用できます。

 今回はWmtsCapabilities.xmlファイル等のURLを登録する方法について説明しましたが、それらをダウンロードしたファイルを本アプリのtilesフォルダに入れることでも本機能は利用できます。その際は、URL登録画面でURLの代わりにダウンロードファイルのファイル名を入力してください。対象とするファイルがGiHub等にある場合などURLを登録しても本アプリがファイルを読み込めない場合などにその方法を試してみてください。URLを直接登録する方法で利用可能なサーバーについても、ダウンロードしたファイルでの利用も可能ですが、URLでの利用の方が常にサーバーが提供する最新の情報を得られるので望ましいと思います。

 本機能で表示できる地図タイルには以下の制限があります。

・参照測地系が、googlemap と同様のEPSG:3857(Web メルカトル)かEPSG:900913の地図タイルのみ表示できます。その他の地図タイルは表示できない、または、表示できても正しい位置に表示されません。

・TopoJSON形式の地図タイルは表示できません。

 最後に、WmtsCapabilities を利用して地図タイルを表示する場合と通常の地図タイル設定を作成して表示する場合には以下の違いについて説明します。

〇通常の地図タイル設定を作成して表示する場合

tilesフォルダにキャッシュフォルダを作成して、取得したタイルをキャッシュファイルとして保存するため、一度表示したタイルについては地図タイルサーバーに負荷をかけず、通信量も軽減されます。

本アプリは地図画面表示の際に、物理キャッシュとは別にメモリ上にキャッシュしてそれを描画に使用しますが、キャッシュ量の上限に達すると古いものから削除されるほか、アプリが再起動されるとメモリ上のキャッシュは消えます。しかし、tilesフォルダに物理キャッシュがあるので、そこからメモリ上のキャッシュが直ぐに再取得されます。

〇WmtsCapabilitiesを利用して地図タイルを表示する場合

tilesフォルダにキャッシュファイルを作らないため、試しにちょっと表示してみる際に後で不要なキャッシュフォルダ、ファイルが残りません。その代わり、何度も見る際はその都度サーバーからタイルの再取得を行うため、サーバーへの負荷、通信量が多くなります。

一度表示したタイルはメモリ上にキャッシュされますが、アプリの再起動等でキャッシュが消えると、再度地図タイルサーバーからの取得が必要になります。

 表示したい地図タイルを探す際などにはWmtsCapabilities.xmlを利用した状態での地図表示を行って、何度も表示したい地図タイルについては通常の地図タイル設定を作成して表示するのが良いかと思います。

使い方

使い方

PAGETOP
Copyright © 野外調査地図 All Rights Reserved.
Powered by WordPress & BizVektor Theme by Vektor,Inc. technology.