Más contenido relacionado La actualidad más candente (20) Similar a Map server入門 - FOSS4G 2012 Hokkaido (20) Map server入門 - FOSS4G 2012 Hokkaido2. セッションの内容
インストール
MapServerとは?
演習
MapServer入門 - FOSS4G 2012 Hokkaido -
2
3. インストール
MapServer入門 - FOSS4G 2012 Hokkaido -
3
4. インストールの前に…
Apacheがサービスとしてインストールされます
サービス名は[Apache MS4W Web Server]なので被らないはず。
インストール先はMS4Wのフォルダ内なので被らないはず。
Webブラウザで http://localhost/ を開く
→つながってしまったら…ひとまず停める。またはMS4Wインストール時にポートを変える。
テキストエディタはUTF8対応を使いましょう
Windows付属のメモ帳はちょっと…(BOMが付く)
TeraPad,Vim,Emacsなどがお勧め
MapServer入門 - FOSS4G 2012 Hokkaido -
4
5. MS4W(MapServer for Windows)を使いま
す
Windows版Mapserverと関連するアプリケーションのパッケージ
学習用途にオススメ(実運用も出来ます)
MS4W 3.0.6(2012/05/26リリース)の標準コンポーネント
Apache HTTP Server version 2.2.22
PHP version 5.4.3
MapServer CGI 6.0.3
MapScript 6.0.3 (CSharp, Java, PHP, Python)
Includes support for Oracle 11g, and SDE data (if you have associated client/dlls)
MrSID support built-in
GDAL/OGR 1.9.1 and Utilities
MapServer Utilities
PROJ Utilities
Shapelib Utilities
Shp2tile Utility
Shpdiff Utility
AVCE00 Utilities
OGR/PHP Extension 1.0.0
OWTChart 1.2.0
MapServer入門 - FOSS4G 2012 Hokkaido -
5
6. MS4Wのダウンロード
1. 公式サイト : http://www.maptools.org/ms4w/
(ms4wでググればOK!)
2. Download(or Latest Version)からインストーラをダウン
ロード
setup.exe installer(142KB)はオンラインインストーラ
↑今回はこちらを使います
zip Archive(49MB)はオフラインインストーラ
ms4w-3.0.6-setup.exe
MapServer入門 - FOSS4G 2012 Hokkaido -
6
7. MS4Wのインストール-1
注意事項
管理者権限で実行する。
「発行元」に関するセキュリティ警告が出るが実行する。
基本的には全てデフォルトでインストール。
今回はコンポーネント構成にOpenLayersを追加
インストールパスはCドライブ直下(c:)にする。
少なくとも日本語パスやスペースを含むパスは避ける(安全策)
他のWebサーバ(Apache/IIS, etc.)があればポートを変更する。
MapServer入門 - FOSS4G 2012 Hokkaido -
7
8. MS4Wのインストール-2
インストーラ実行画面の一覧
右クリックで
ログをクリップボード
に
コピーできる
MapServer入門 - FOSS4G 2012 Hokkaido -
8
9. MS4Wのインストール-3
インストール結果の確認
http://localhost/
をWebブラウザで開く
http://localhost/cgi-bin/mapserv.exe
CGIで動作します
Linuxでは末尾の.exe不要
9 MapServer入門 - FOSS4G 2012 Hokkaido -
10. MS4Wのインストール 余談
オフラインでインストールしたい
既存Apache(Webサーバ)を使いたい
オンラインインストーラはオフラインzipをダウンロード・展開して、Apacheの設定してるだけ。
Apacheのインストール知識があれば、オンラインインストールの結果&ログファイルを参考にすると
良い。
OSGeo4Wを薦められたけど…
現在(2012/7)はMapServerが一つ前のメジャーバージョン(5.x)、
6.xと完全な互換性は無いので注意!!
MapServer入門 - FOSS4G 2012 Hokkaido -
10
12. MapServerとは?
公式サイト http://mapserver.org/
2012/07/01現在のバージョンは6.0.3
地図をWebページで表示するための「マッピングエンジ
ン」の代表格。
90年代中期から開発が始まり、2004年に国際化対応される。
国内の官公庁・一般企業のサイトでの採用も進み、
Mapionの地図描画にも採用されている。
標準規格のOGC(Open GIS Consortium)仕様に対応。
Linux(UNIX)、Mac OS X、Windowsバイナリが配布されてい
る。
もちろんオープンソースなのでソースからビルドできる。
12 MapServer入門 - FOSS4G 2012 Hokkaido -
13. MapServerが提供する機能
地図描画機能
地図表現に必要な点・線・塗り、注記、記号などの描画設定。
縮尺による描画設定の切り替え。
設定方法・・・Mapfileと呼ばれるテキストファイル。
地図表示機能
Shapefile、地理DBなどから地図データ(画像、ベクトル)を作成する。
整飾(凡例、参照図、スケールバー画像など)も作成できる。
On-the-flyに投影法変換もできる→I/Oそれぞれで投影法が混在できる。
OGCに基づくWebサービスに対応
WMS,WFS,GML,SLD etc…
mapserver –v で確認する
開発言語・環境への対応
PHP,Python,Perl,Ruby,Java,.NET
総合GIS環境ではない
UI、解析、データ管理機能は外部ツールを使用する。
13 MapServer入門 - FOSS4G 2012 Hokkaido -
14. 対応データ
対応データフォーマット
ベクトル・・・ ESRI Shapefile, PostGIS(DB), GML/KML,GPX,Spatilite, etc…
ラスタ・・・TIFF/GeoTIFF, Erdas LAN/GIS, GIF/PNG/JPEG(world fileが必要)
gdalinfo --formats、ogrinfo --formatsで確認する(環境変数を適用するためにMS4W-Shellを使用する)
14 MapServer入門 - FOSS4G 2012 Hokkaido -
15. MapServerで使用するGIS用語
以下は押さえておきたい
ESRI Shapefile (シェープファイル)
GeoTIFF (ジオティフ)
PostGIS (ポストジス、ポスジス)
投影法、座標系、測地系、SRID(A Spatial Reference System Identifier)
WMS、WFS
英語ですが http://mapserver.org/glossary.html にも載ってます。
15 MapServer入門 - FOSS4G 2012 Hokkaido -
16. ESRI Shapefileとは
地図情報を格納するためのベクター形式ファイル(点・
線・面)。
ArcGISでお馴染みのESRI社が設計・リリースし、GISではデ
ファクトスタンダードになっている。
ファイルは形状(.shp)、属性(.dbf)、インデクス(.shx)の3つ
一組。
投影定義の.projなどのオプションファイルもある
MapServerの標準的なデータ形式の一つ。
属性は固定長、2GBの壁、フィールド数制限があり、大規
模データには向かない。
16 MapServer入門 - FOSS4G 2012 Hokkaido -
17. GeoTIFF
地理情報向けラスタ形式の代表的フォーマット。
TIFFフォーマットのタグに投影法・測地系、四隅座標など
が記録されている。
GIF/JPEG/PNGはworld fileを用いる→画像+world fileでは投影法・測地系は判らない。
詳細はgdalinfoやlistgeo(libgeotiff lib utility)で確認する。
公式サイト→http://trac.osgeo.org/geotiff/
17 MapServer入門 - FOSS4G 2012 Hokkaido -
18. PostGIS
OSSのデータベース、PostgreSQLの地理空間情報拡張。
データ格納だけではなく、各種演算機能が豊富に提供され
ている。
空間計測・関係、ジオメトリの構築・変換、フォーマット
変換。
基本的なSQLを覚える必要はあるが、大規模データやネッ
トワーク共有(DBサーバを分ける)を考えているなら必携。
公式サイト→http://postgis.refractions.net/
日本語に翻訳されたマニュアル(農研機構)
→http://www.finds.jp/docs/pgisman/
18 MapServer入門 - FOSS4G 2012 Hokkaido -
19. 投影法、座標系、測地系、SRID
球体の地球を平面に投影する方法(メルカトル、正距方位
など)
数値(座標)の組み合わせの意味
地理座標系(緯度経度)
平面直角座標系(日本全国に19原点、メートル単位のXY座標)
UTM/ユニバーサルメルカトル(地球を南北方向の帯で分割、メートル単位のXY座標)
ある位置を経緯度・標高により表すときの前提条件
日本測地系(旧日本測地系、Tokyo Datum)
世界測地系(新日本測地系、JGD2000)
↑のパラメータをIDで管理・指定するのがSRID(EPSGコード
)
4301:緯度経度 日本測地系(Tokyo)
4326:緯度経度 世界測地系(WGS84)
4612:緯度経度 世界測地系(JGD2000)
3857 or 900913:Webメルカトル、Google投影
日本でよく使われるコード→ http://www.finds.jp/docs/pgisman/2.0.0/postgis.html#srs_in_japan
19 MapServer入門 - FOSS4G 2012 Hokkaido -
20. WMS・WFS
OGC(Open GIS Consortium)の定めるWeb標準プロトコル
OGCの定める規格に対応することで、異なるアプリケーション、データベース間での地理空間情
報を交換できる。
WMS(Web Map Service)
ベクトル/ラスター形式の地図データをラスター形式で生成、取得する。
WebブラウザではWMSでの利用が一般的。
WFS(Web Feature Service)
ベクトル形式の地図データをGML(Geography Markup Language)形式で生成、取得。
デスクトップGISや属性取得・表示用途に使用される。
Webブラウザでもレンダリングできるが、現段階では重い→HTML5,WebGL/MapGL普及に期待。
GMLもOGCが仕様策定。
20 MapServer入門 - FOSS4G 2012 Hokkaido -
21. 演習
21 MapServer入門 - FOSS4G 2012 Hokkaido -
22. 演習データの配置
1. 演習データ一式(mapserverフォルダ)を
c:ms4wapachehtdocs にコピー。
2. http://localhost/mapserver.html をWebブラウザで開く。
3. example01/index.htmlをエディタで開き、<img>タグのsrc
パラメータを確認する。
src=“/cgi-bin/mapserv.exe?map=../htdocs/mapserver/example01/example.map&mode=map”
• mapパラメータ・・・Mapfileのパス。MapServer CGIからの相対パス指定。
• modeパラメータ・・・生成するファイル種別。”map”は地図画像を生成する。
• 詳しくは http://mapserver.org/cgi/controls.html
22 MapServer入門 - FOSS4G 2012 Hokkaido -
23. 使用するデータ
今回の講習ではOpenStreetMapのベクトルデータを使用し
ています。
QGISのOpenStreetMapプラグインで表示範囲のベクトルデ
ータをダウンロードし、Shapefileに変換しました。
23 MapServer入門 - FOSS4G 2012 Hokkaido -
24. 例1)レイヤーを表示する
線形上の道路を単一シンボルで表示する
Mapfileの基本的要素で構成してみる
example01/index.htmlとexample01/example.mapをテキスト
エディタで開く
24 MapServer入門 - FOSS4G 2012 Hokkaido - Map data © OpenStreetMap contributors, CC BY-SA
25. Mapfile解説 - 例1)レイヤーを表示する
MAP
# データフォルダを相対パスで指定 MAP,LAYER,CLASSなどのオブジェクトから構成されて
SHAPEPATH "../data" いる。オブジェクトはENDで閉じられる。
PROJECTION SHAPEPATH・・・データフォルダのパス。絶対パス、
"init=epsg:4326" # WGS84 あるいはマップファイルからの相対パス指定
END
EXTENT 141.330 43.040 141.380 43.080 PROJECTION・・・地図の投影法
EXTENT・・・地図の出力範囲
IMAGETYPE PNG
IMAGECOLOR 255 255 240 IMAGETYPE・・・画像形式
SIZE 500 400
IMAGECOLOR・・・背景色
LAYER
NAME "道路" SIZE・・・画像サイズ(px)
# osm_line_road.shpでも良い
DATA osm_line_road MAP・・・MAPオブジェクトは必須であり、常に最も
STATUS DEFAULT 外側になる。
TYPE LINE
LAYER・・・データソース、スタイルから構成される
CLASS
STYLE
。
COLOR 255 128 0 NAME・・・省略可だが、なるべく付ける。
WIDTH 2.0
END DATA・・・データソース(ファイル名)。拡張子を省略
END
END するとShapefileと見なす。
END
TYPE・・・ジオメトリタイプ。POINT/LINE/POLYGON、
RASTER。
CLASS・・・LAYERを分類するための構成要素。
STYLE・・・視覚的設定の項目。
25 MapServer入門 - FOSS4G 2012 Hokkaido -
26. Mapfileの基本
オブジェクト名は大文字小文字の区別無し
オブジェクトの順序は自由だが、階層関係は重要
インデントはタブでも空白でも良い。
無くてもエラーにはならないがバグの元!
文字列はダブルクォート推奨
コメントは # で始める
26 MapServer入門 - FOSS4G 2012 Hokkaido -
27. デバッグテクニック
画像が表示されない…(意図したとおりにならない)
画像だけ表示してみる(Webブラウザのコンテキストメニューから)
http://localhost/cgi-bin/mapserv.exe?map=../htdocs/mapserver/example01/example.map&mode=map
Mapfileにデバッグ設定を加える(パフォーマンスチューニングにも使える)
MAP
DEBUG 2
CONFIG "MS_ERRORFILE" "/ms4w/tmp/ms_error.txt"
# データフォルダを相対パスで指定
SHAPEPATH "../data"
DEBUG ・・・ 0-5で出力レベルを変更する
CONFIG “MS_ERRORFILE” ・・・ログファイルを指定。絶対パス or Mapfileからの相対パス。累積
されるので長期運用時は注意!
27 MapServer入門 - FOSS4G 2012 Hokkaido -
28. 演習1)Mapfileの編集とデバッグ
1. DATAパラメータの文字列(ファイル名)を適当に変えてみ
る。
2. 前ページのデバッグテクニックを試してみる。
3. DEBUGレベルを変更して、ログファイルの内容を観察す
る。
28 MapServer入門 - FOSS4G 2012 Hokkaido -
29. 例2)属性によるスタイル設定
道路種別属性によって描画設定を変えてみる
一つのLAYERに複数のCLASSを定義する
分類に使用する属性項目、属性値の指定を理解する
29 MapServer入門 - FOSS4G 2012 Hokkaido - Map data © OpenStreetMap contributors, CC BY-SA
30. Mapfile解説 - 例2)属性によるスタイル設定
LAYER CLASSITEM・・・LAYERを分類するためのフィールド名
NAME "道路"
DATA osm_line_road EXPRESSION・・・CLASSITEMの属性値。各CLASSに一つ定義する。
STATUS DEFAULT LAYERの最後のCLASSでEXPRESSIONを定義しないことで「その他」を定
TYPE LINE 義できる。
CLASSITEM "HIGHWAY"
CLASS EXPRESSIONを宣言すると、そのLAYERではフィールド名を省略できる
EXPRESSION "trunk"
STYLE 。
COLOR 127 201 127
WIDTH 3.0
数値も文字列も引用符が必要。
END 複雑な条件は定義できない。
END
# else
CLASS
STYLE
COLOR 128 128 128
WIDTH 0.5
END
END
END
30 MapServer入門 - FOSS4G 2012 Hokkaido -
31. 演習2)属性によるスタイルの変更
CLASSITEMとEXPRESSIONを使用して描画設定を拡張する
パラメータは以下を使用(cf. http://wiki.openstreetmap.org/wiki/JA:Key:highway)
種別 属性値(文字列) 色(RGB) 線幅
国道 trunk 緑(127 201 127) 2.0
主要道路 primary 赤(228 109 113) 1.5
地方道 secondary オレンジ(253 191 11) 1.5
一般道 tertiary 青(65 105 125) 1.0
その他 - 灰(128 128 128) 0.5
※色と線幅は参考値です
31 MapServer入門 - FOSS4G 2012 Hokkaido -
32. 演習2)解答
LAYER CLASS
NAME "道路" NAME "地方道"
DATA osm_line_road EXPRESSION "secondary"
STATUS DEFAULT STYLE
TYPE LINE COLOR 253 191 11
WIDTH 1.0
CLASSITEM "HIGHWAY" END
END
CLASS
NAME "国道" CLASS
EXPRESSION "trunk" NAME "一般道"
STYLE EXPRESSION "tertiary"
COLOR 127 201 127 STYLE
WIDTH 1.5 COLOR 65 105 225
END WIDTH 1.0
END END
END
CLASS
NAME "主要道路" # else
EXPRESSION "primary" CLASS
STYLE NAME "その他"
COLOR 228 109 113 STYLE
WIDTH 1.5 COLOR 128 128 128
END WIDTH 0.5
END END
END
END
32 MapServer入門 - FOSS4G 2012 Hokkaido - Map data © OpenStreetMap contributors, CC BY-SA
33. 例3)複合条件
CLASSITEMのメリット・デメリット
メリット・・・EXPRESSIONのフィールド名を省略できる。
デメリット・・・単一条件しか指定できない。数値の大小が指定できない。条件毎にCLASSが必
要。
EXPRESSION http://mapserver.org/mapfile/expressions.html
複合条件を使う場合はCLASSITEMを使わずに、EXPRESSION
にフィールド名も含めて記述する
フィールド名を[]で囲む。文字列フィールドは”*フィール
ド名+”。
演算子は AND,OR,NOTあるいは&&,||,!の様に文字列・記号
の両方が使える。
33 MapServer入門 - FOSS4G 2012 Hokkaido -
34. Mapfile解説 - 例3)複合条件の例
# CLASSITEM "HIGHWAY" CLASSITEM
を
CLASS
無効に
NAME "国道"
EXPRESSION ("[HIGHWAY]" = "trunk")
STYLE
“*フィールド名+” = “属性
COLOR 127 201 127
値”
WIDTH 1.5
END
END
CLASS
NAME "主要道路/地方道/一般道"
EXPRESSION ("[HIGHWAY]" = "primary“ OR "[HIGHWAY]" eq "secondary“ || "[HIGHWAY]" = "tertiary“)
STYLE
COLOR 228 109 113
WIDTH 1.5 条件を()で囲む
END
END
34 MapServer入門 - FOSS4G 2012 Hokkaido - Map data © OpenStreetMap contributors, CC BY-SA
35. 演習3)複合条件
道路名(フィールド名 NAME)が付与されている道路を赤、
それ以外を全て同じ灰にする。
マニュアルによると…
length ( “String1” )
returns the number of characters of “String1”
上記に加えて道路種別が primary 且つ 道路名が付与されて
いる道路は青にする。
35 MapServer入門 - FOSS4G 2012 Hokkaido -
36. 演習3)解答
CLASS
NAME "名前付きの道路"
EXPRESSION (length("[name]") > 0)
STYLE
COLOR 255 32 32
WIDTH 2.0
END
END
CLASS
STYLE
COLOR 128 128 128
WIDTH 0.5
END
END
36 MapServer入門 - FOSS4G 2012 Hokkaido - Map data © OpenStreetMap contributors, CC BY-SA
37. 演習3)解答
CLASS
NAME "名前付きの主要道路"
EXPRESSION (length("[name]") > 0 && "[HIGHWAY]" = "primary")
STYLE
COLOR 32 32 255
WIDTH 2.0
END
END
CLASS
NAME "名前付きの道路(主要道路を除く)"
EXPRESSION (length("[name]") > 0)
STYLE
COLOR 255 32 32
WIDTH 2.0
END
END
CLASS
STYLE
COLOR 128 128 128
WIDTH 0.5
END
END
37 MapServer入門 - FOSS4G 2012 Hokkaido - Map data © OpenStreetMap contributors, CC BY-SA
38. 例4)ラベル(注記)表示
ラベル(注記)を表示する
FONTSET・・・フォントのエイリアスとファイル名のリスト
LABELITEM・・・表示するテキストのフィールド名
LABEL・・・ラベル設定。CLASSにぶら下がり、STYLEと並列。
38 MapServer入門 - FOSS4G 2012 Hokkaido - Map data © OpenStreetMap contributors, CC BY-SA
39. Mapfile解説 - 例4)ラベル(注記)表示
FONTSET "../fonts/fonts.list“
~~~~~~
mincho ipaexm.ttf
LAYER
gothic ipaexg.ttf
NAME "注記"
DATA osm_polygon
STATUS DEFAULT
TYPE POLYGON フィールド
名
LABELITEM "NAME"
~~~~~~
LABEL http://ossipedia.ipa.go.jp/ipafont/index.html
TYPE TRUETYPE
# FONT mincho
FONT gothic データソースの
#ENCODING SJIS 文字コード
ENCODING CP932
SIZE 8
COLOR 255 0 0
END
END
END
39 MapServer入門 - FOSS4G 2012 Hokkaido -
40. 例5)WMSサーバとして使う
JavaScriptによるWebマップライブラリであるOpenLayersと
の組み合わせによるWMSサーバの設定
今までのMapfileにWMS設定を加える。
OpenLayersの基礎も少しかじってみる。
40 MapServer入門 - FOSS4G 2012 Hokkaido - Map data © OpenStreetMap contributors, CC BY-SA
41. Mapfile解説 -例5)WMSサーバとして使う
WEB
METADATA
"wms_title" "WMS Server"
"wms_onlineresource" "http://localhost/cgi-bin/mapserv.exe?map=../htdocs/mapserver/example05/example.map&"
"wms_srs" "EPSG:4326"
MapServer6.0から必要
"ows_enable_request" "*"
に
END
# IMAGEPATH "/ms4w/tmp/ms_tmp/"
# IMAGEURL "/ms_tmp/" 一時ファイルのディレクトリと
URL
END
~~~~~~~~
LAYER
LAYER-NAMEは重要
NAME "label“
STATUS ON
~~~~~~~~
LAYER STATUSをDEFAULTからONに変更
NAME “line“ DEFAULTは常に表示されてしま
STATUS ON う
41 MapServer入門 - FOSS4G 2012 Hokkaido -
42. OpenLayers解説 -例5)WMSサーバとして使う
<script type="text/javascript">
var lon = 141.360; map = new OpenLayers.Map( 'map', {
controls : controls,
var lat = 43.060;
maxScale : 1000,
var zoom = 8;
minScale : 500000
var map;
});
CGIに渡すパラメー var layer = new OpenLayers.Layer.WMS( "MapServer WMS",
function init(){ タ "/cgi-bin/mapserv.exe",
var controls = [ {
new OpenLayers.Control.MousePosition(), map : "../htdocs/mapserver/example05/example.map",
new OpenLayers.Control.KeyboardDefaults(), layers: "line",
new OpenLayers.Control.Navigation(), format: "image/jpeg“ 表示するレイヤ
new OpenLayers.Control.LayerSwitcher(), }, {
LAYER
new OpenLayers.Control.Scale(), isBaseLayer : true NAME “line”
new OpenLayers.Control.PanZoomBar() }
]; );
map.addLayer(layer);
map.setCenter(new OpenLayers.LonLat(lon, lat), zoom);
OpenLayersの
}
レイヤパラメータ
</script>
42 MapServer入門 - FOSS4G 2012 Hokkaido -
43. OpenLayersとMapserver(WMS)の関係
WMS
(MapServer)
JavaScript
(Webブラウザ)
mapserver CGIに渡すパラメータ
前ページで明示的に MAP:../htdocs/mapserver/example05/example.map
指定 LAYERS:line
FORMAT:image/jpeg
SERVICE:WMS
VERSION:1.1.1
REQUEST:GetMap
STYLES:
SRS:EPSG:4326
BBOX:141.33082992616,43.061780384578,141.3456030782,43.076553536614
画像サイズのデフォ WIDTH:256
ルトは256x256 HEIGHT:256
面倒な座標計算は
OpenLayersが担当
43 MapServer入門 - FOSS4G 2012 Hokkaido -
45. 演習5)WMSサーバとして使う
※例4)のMapfileをベースにします。
エリア(とラベル)レイヤも表示されるように変更する。
画像フォーマットを変えてみる。(jpeg/png/gif)
OpenLayersのパラメータを変更してみる。(maxScale、
Controlなど)
MapSeverのレイヤを、OpenLayers上のレイヤで分離してみ
る。
45 MapServer入門 - FOSS4G 2012 Hokkaido -
46. 演習5)解答
エリア(とラベル)レイヤも表示されるように変更する。
lesson-1.html(JavaScript)
var layer = new OpenLayers.Layer.WMS( "MapServer WMS - Road&Area",
"/cgi-bin/mapserv.exe",
{
map : "../htdocs/mapserver/example05/example.map",
layers: "line,label",
format: "image/jpeg"
}, {
LAYER-NAMEを
isBaseLayer : true
カンマで列挙す
} ); る
MapServerが生成する画像
は
複数レイヤが合成されてい
予めlabel,lineレイヤは記述しておくが る
layersに指定しないと描画されない。(例5の状態)
→Mapfileを変更しないでも描画レイヤを設定できる。
46 MapServer入門 - FOSS4G 2012 Hokkaido -
47. 演習5)解答
MapSeverのレイヤを、OpenLayers上のレイヤで分離してみる
。
var layerLine = new OpenLayers.Layer.WMS( "MapServer WMS - Road",
lesson-2.html(JavaScript)
(JavaScript修正のみでOK)
"/cgi-bin/mapserv.exe",
var layerLabel = new OpenLayers.Layer.WMS( "MapServer WMS - Area",
{
"/cgi-bin/mapserv.exe",
map : "../htdocs/mapserver/example05/example.map",
{
layers: "line",
map : "../htdocs/mapserver/example05/example.map",
format: "image/png",
layers: "label",
transparent: true
format: "image/png",
}, {
transparent: true
isBaseLayer : false
}, { 透過画像に変更
} ); どちらかのisBaseLayer
isBaseLayer : true をfalseにする
} );
map.addLayer(layerLabel);
map.addLayer(layerLine);
47 MapServer入門 - FOSS4G 2012 Hokkaido -
48. 演習5)解答
MapSeverのレイヤを、OpenLayers上のレイヤで分離してみる
。
isBaseLayer:falseのレイヤは
表示/非表示を切り替えられ
る
• MapServerは単一レイヤの透過画像を生成
• OpenLayersがブラウザ上でレイヤを重ねる
→画像を再取得しないで表示/非表示が切り替えられ
る
48 MapServer入門 - FOSS4G 2012 Hokkaido -
49. 謝辞
お疲れ様でした!
FOSS4G 2011 Tokyoで行われたMapServerハンズオン
(株式会社オークニーさま)
を参考に作成しました。
OpenStreetMapのベクトルデータを使用しました。
49 MapServer入門 - FOSS4G 2012 Hokkaido -