Skip to main content.

Thursday, March 15, 2007

MapServerの導入(その2)数値地図2500の表示(PHPからの呼び出し)

前回の続きでMapServerの導入についてです。今回は数値地図2500の表示(PHPからの呼び出し)です。

PHPからの呼び出しについて
MapServerの機能をPHPから利用するには、PHPのモジュールであるMapScriptを利用します。MapServer自体はCGIなので単独でも利用できますが、MapScriptを利用することにより、より使いやすいインターフェース、レイアウトを提供することが可能となります。今回利用したMS4Wの場合は同梱されているので、別途インストールの必要はないです。必要な場合は、こちらMapScript のダウンロードとセットアップ等を参照して下さい。

MapServerで扱える地図フォーマットデータ
MapServerでは多くの種類の地図フォーマットデータをサポートしています。こちらによると、無難なフォーマットとして、以下の3つがチェックされています。
ESRI Shapefile(ESRI社のシェープファイル)
Mapinfo File(Mapinfo MIF/MID形式)
PostgreSQL(PostGIS)

参考:MapInfo豆知識(GIS豆知識)地図・GISで使われるファイル形式 - 株式会社アルプス社
各フォーマット変換には各種フリーソフトも公開されているようです。

数値地図2500について
数値地図は、GISを構築する際の最も基本的な項目のデジタル図形データです。その中で、数値地図2500は全国の都市計画区域(約96,000平方キロメートル)を対象に、道路、河川、行政区域界等の骨格的地図項目を数値化したデータです。国土地理院のサイトからダウンロードが出来ます。

MapServerで数値地図2500を表示する
本題のMapServerで数値地図2500を表示するについてです。数値地図2500はそのままではMapServerで表示出来ないので、今回は、数値地図2500→シェープファイルに変換して表示させてみました。こちらのページ、p.mapper2 で数値地図2500の表示(su2shpでシェープファイルへ変換)の「数値地図2500をsu2shpでシェープファイルに変換する」の項目を見ながら試してみました。

このフリーソフトで変換すると、同時にMapServerで表示するために必要なファイル(Mapファイル、MapScriptを利用しているPHPスクリプト等)も出力されるので、そのまま表示させてみました。以下、横浜の私の会社の近くになります。ただ、この地図を見るとどうもみなとみらい線が表示されていないよう(つまり、古い?)です。実際に地図サーバを運営するとなると当然、このあたり、地図データの維持、更新というのが大きなテーマになってくると思います。



これで、とりあえずですが、数値地図2500を表示させることが出来ました。次はPostgreSQL(PostGIS)を使ってみたいと思います。
次へ移動する

参考サイト
Yaskey - Windows で MapServer 。メモ

Think IT MapServerマスターへの道
「超・極める!PHP」(書籍)

Webプログラミング関連記事