ネットで地図を使ったシステムを作ろうとすると、まず考えるのがGoogle Mapsとマッシュアップすることです。
ただ、Google Mapsは作った地図を公開することが無料の前提になっていて、例えばイントラネットの中だけで使うようなシステムを作る場合は、Google Maps API Premierという有料ライセンスの契約を結ぶ必要が出てきます。また、公開する地図でもGoogleの設定する利用上限を超えるアクセスがあると課金される仕組みも導入されようとしています。→参照記事
では、無料で地図システムを作るならどうすれば良いか。
いろいろ調べてみたところ、方法は2つあるようです。
- 国土地理院が提供する「電子国土Webシステム」を使用する
- 国土交通省が提供する「国土数値情報」を使ってMapServerで地図を描く
どちらも国が提供するものを使うのですが、この2つには大きな違いがあります。
- 電子国土Webシステム → エセGoogle Mapsみたいなもの
- 国土数値情報 → 提供されるのは数値データだけだから、数値データを地図は自前で描く
電子国土WebシステムはJavaScriptでマッシュアップができたりするので、Google Mapsよりは地図の見た目とかがイケてない感じはするものの、Google Maps風の使い方ができます。ライセンスの面でも、使用方法によっては国土地理院への届出や許諾(届出だけか許諾が必要かは使い方による)が必要になりますが、どうやら無料で使えそうです。
一方、国土数値情報は、提供されるのはあくまで数値データだけです。地図の画像などは提供されません。なので、提供される数値データから地図画像を作り出すシステムを作らないといけないということになります。ただ、ライセンス的にはかなり自由で、出典情報を表示すればたいたいOKです。
国土数値情報から地図画像を作るシステムとしては、いくつかのオープンソースソフトウェア(OSS)があります。今回、私はMapServerというOSSを使って地図システムを作ったのですが、その基本的なやり方は、また別の記事で書きたいと思います。