ここでは、国土地理院の地図タイルを、地図加工のフリーソフトである Leaflet およびそのアドオンソフト群を用いて、GoogleMap のような二次加工処理を行います。
国土地理院が日本の国土の地形図、写真、標高、地形分類、災害情報などを総合的に提供する公開ライブラリです。
Goole Mapsが自身の地図タイル(地図情報)を持っているのに対して、Leafletは地図タイルは持たず、Goole Mapsや国土地理院が公開している地図タイルを利用して、地図加工を行うソフトウェアです。オープンソースのJavaScriptライブラリで、アプリケーションを構築するためのAPIを提供します。
Leafletは膨大な機能があり、プラグインも多くあります。ここでは、Leafletの「超初歩的」な使い方の説明をします。
Leafletを利用するには、head部に
<link rel="stylesheet" href="https://unpkg.com/leaflet@1.8.01/dist/leaflet.css">
<script src="https://unpkg.com/leaflet@1.8.0/dist/leaflet.js"></script>
と記述するだけです(@1.8.0はバージョンで逐次改訂されています)。
さらに、地図を全画面表示/元の画面表示に切り替えるには下のプラグインを用います。
<link href='https://api.mapbox.com/mapbox.js/plugins/leaflet-fullscreen/v1.0.1/leaflet.fullscreen.css' rel='stylesheet'>
<script src='https://api.mapbox.com/mapbox.js/plugins/leaflet-fullscreen/v1.0.1/Leaflet.fullscreen.min.js'></script>
Goole Maps API と異なりアカウントを取得する必要もありませんし、無料での利用制限もありません。
上記の「参考URL」を参考にして、Leafletの基本的機能のプログラムを自作しました。解説書というよりも、むしろ私個人用のメモです。
次の機能は独立しています。Aの処理結果はBに引き継がれません。
Head部に次のCDNがあります。
<link rel="stylesheet" href="https://unpkg.com/leaflet@1.7.1/dist/leaflet.css">
<script src="https://unpkg.com/leaflet@1.7.1/dist/leaflet.js"></script>
<link rel="stylesheet"href="https://api.mapbox.com/mapbox.js/plugins/leaflet-fullscreen/v1.0.1/leaflet.fullscreen.css">
<script src="https://api.mapbox.com/mapbox.js/plugins/leaflet-fullscreen/v1.0.1/Leaflet.fullscreen.min.js"></script>
Body部に次の表示場所が定義されています。
<div id="地図表示場所" style="width:400px;height:400px"></div>
<div id="結果表示場所" style="color: red;"></div> // 必要なときだけ