Preparing MapServer/ja
From Ka-Map Wiki
このページのほとんどの文章はTyler Mitchell氏の記事を元にしています。 Build AJAX-Based Web Maps Using ka-Map (ka-Mapを利用したAjaxベースのWeb地図の作成)
Contents |
[edit] マップサーバーの準備
ka-Mapを使うには動作確認済みのマップサーバーアプリケーション設定ファイルが必要です。従来の(非Ajaxの)マップサーバーアプリケーションでは、Webページを作り、データを準備し、データを参照する設定ファイルを作成し、そして地図の外観を設定しました。一方ka-MapアプリケーションにはWebページがデフォルトで提供されており、地図データの準備とマップサーバーアプリケーション設定ファイルに集中することができます。
[edit] マップスクリプト・プログラミング・ライブラリ
ka-Mapを利用するには、マップサーバー用プログラミングライブラリであるマップスクリプトが動作していなければなりません。ka-Mapは地図を描画するためにPHPマップスクリプトAPIを使用します。マップスクリプトを動作させる最も簡単な方法は、バイナリーのマップサーバーをインストールする方法です。
ウィンドウズ用のマップサーバーはMapServer For Windows (MS4W)と呼ばれています。動作させるには単にファイルをドライブに解凍するだけです。その後、他のパッケージ(ka-Mapなど)をダウンロードして機能を付け足すことができます。MS4Wを始めるには下のサイトを見てください。
リナックス用のインストーラはFOSS GIS Suite (FGS)と呼ばれています。FGSは依存するライブラリも含む全ての標準モジュールの設定を行ってくれます。シェルスクリプトのインストーラーは、モジュールをシステムに自動的に抽出し、さらに依存するライブラリをチェック、取得してくれます。FGSを始めるには下のサイトにアクセスしてください。
もしソースコードから始めたいのでしたら、マップサーバーWebサイトMapServer websiteにより多くのインストール関連情報があります。Tyler Mitchell氏のWeb Mapping Illustratedでもインストールプロセスについての説明があります。
[edit] データの準備
マップサーバー設定ファイルを作る前にまず地図データが必要です。FreeGIS.org世界データパッケージの一部として、世界の国境データが以下のサイトで手に入ります。
これはESRIシェイプフォーマットの基本的な地図データを提供します。 まずcountries_simplから始めてください。これらのファイルはサイズを小さく抑えるために低解像度になっています。もしもっと高解像度のデータが欲しいのでしたら、hereから取得してください。
背景イメージとして、世界の雲の画像を下のサイトから取得できます。
この画像はXplanetデータと、Mapping Hacksという本の天気地図ハックから作られています。このハックを使うと、6時間毎に自動更新される世界の雲画像を利用することができます。フォーマットはTIFFで、位置情報を示すTFWファイルも含まれています。
以上の国境ファイルと画像ファイルを両方ともdataというフォルダに解凍してください。
[edit] マップサーバー設定
次に、マップサーバー設定ファイルを作ります。このファイルは、どうやってデータにアクセスし、どのように表示するかということをマップサーバーに指示する単純なテキストファイルです。通常マップファイルと呼ばれます。マップファイルはオブジェクトと呼ばれるいくつかのセクションに分かれます。セクションはオブジェクトタイプを示すキーワードで始まり、ENDというキーワードで終わります。
以下は先ほどの2つのデータレイヤーを利用した基本的なマップファイルです。
MAP
NAME global_map
STATUS ON
SIZE 600 300
EXTENT -180 -90 180 90
UNITS DD
IMAGECOLOR 255 255 255
IMAGETYPE png
WEB
IMAGEPATH "/opt/fgs/apps/kamap-0.1.1/htdocs/tmp/"
IMAGEURL "/ka-map/tmp/"
END
LEGEND
TRANSPARENT TRUE
END
SCALEBAR
TRANSPARENT TRUE
END
LAYER
NAME clouds
TYPE RASTER
STATUS ON
DATA "data/day_clouds.tif"
END
LAYER
NAME countries
TYPE LINE
STATUS ON
DATA "data/countries_simpl.shp"
CLASS
NAME "Country Boundaries"
STYLE
COLOR 200 100 100
END
END
END
END #MAP END
上のコードをglobal.mapという名前のテキストファイルとして保存してください。
[edit] マップファイルのテスト
マップファイルの設定が間違っていると問題が起こりますので、ka-Mapで使う前にテストしてください。
マップサーバーのインストール方法によってはshp2imgというプログラムに問題がある可能性があります。shp2imgはマップファイルから画像ファイルを作るコマンドラインツールです。下のように実行してください。
> shp2img -m global.map -o test.png
もし全て上手くいっていれば、test.phpという地図画像が作成されるはずです。一方、プログラムが実行に失敗したりエラーを起こしたりした場合はマップファイルに問題があります。
マップファイルが正く動作するという確証を得るためにはさらにテストが必要な場合がありますが、このテストを最初の一歩とすることができます。マップファイルから作られた地図がWebサーバーから容易にアクセスできるようにするにはWeb環境でテストする必要があります。この件については"Further Adventures"セクションでさらに議論されています。

