チュートリアル
PHPスクリプト
PHPを使用した簡単な地図の作成方法です。
PHPスクリプトとして以下の内容を記述することで$image_file_pathで指定した画像が出力されます。
$map = ms_nwMapObj("./config.map");
$image_file_path = dirname(__FILE__) . "/figure.png";
$img = $map->draw();
$img->saveImage($image_file_path);
Mapファイル
PHPスクリプトでms_newMapObj()関数に指定したMapファイル(config.map)として以下のような内容を記述することで、出力する地図をカスタマイズします。
MAP
STATUS ON # 地図を表示するかどうか。ほとんどの場合はON
UNITS DD # この地図の単位(緯度経度)
IMAGECOLOR 0 0 0 # 背景色 R G B
EXTENT
# 表示する領域
IMAGETYPE PNG # 地図画像を保存する形式
SCALEBAR # スケールバーオブジェクトの開始
STATUS embed # スケールバーを地図内に埋め込むという意味
UNITS KILOMETERS # スケールバーの単位
SIZE 20 10 # スケールバーの大きさ(ピクセル)
COLOR 255 255 255 # スケールバーの色
IMAGECOLOR 0 0 0 # スケールバーの背景色
INTERVALS 2 # 線の間隔の数
LABEL # ラベルオブジェクトの開始
COLOR 255 255 255 # 文字の色
END
END # スケールバーのオブジェクトの終了
LAYER # ここからレイヤーの開始
NAME "sample1" # レイヤーを識別するための名前
CONNECTIONTYPE POSTGIS # PostGISを使用するための宣言
CONNECTION "user=dbuser password=pass dbname=data host=localhsot port=5432"
# データベースとの接続情報
DATA " geom FROM t_gaiku " # 取得するカラム名とテーブル名を指定する
TYPE POLYGON # 図形の描画方法(POLYGONは多角形)
STATUS ON # レイヤーのステータス
CLASS # クラスオブジェクトの開始
COLOR 255 255 255 # 色
OUTLINECOLOR 255 0 0 # 輪郭の色
SYMBOL 0 # POLYGONの場合0で内部を塗りつぶす
END
END
END
サンプル画像
Mapファイルを色々と変更することで、様々なファイルを作成することができます。サンプルでは街区のみの表示ですが、道路、鉄道などのレイヤーを追加していくことで下記のような地図とすることができます。