Web-GIS Dengan MapServer - Bagian 1
-
Upload
don-sovoreign -
Category
Documents
-
view
230 -
download
0
Transcript of Web-GIS Dengan MapServer - Bagian 1
-
7/23/2019 Web-GIS Dengan MapServer - Bagian 1
1/29
Web-GIS dengan MapServer
2012 Beni K. [1]
Web-GIS dengan MapServer (1)
A. Struktur File MAP
MapServer memerlukan (minimal sebuah) mapfile (berakhiran .MAP) yang
mendeskripsikan apa dan di mana sumber datanya, dan bagaimana cara (data)
tersebut harus ditampilkan. Selain itu di dalam file .MAP ini juga terkandung
mekanisme konfigurasi dasar untuk MapServer.
Ketentuan Penulisan untuk MapFile
1.
Baris-baris teks atau angka yang berada di dalam file teks MapFile tidak bersifatcase-sentive.
2. Penulisan string yang berisi (campuran) beberapa karakter non-alphanumerik (di
luar karakter huruf dan angka) atau keywords milik MapServer harus diapit oleh
tanda petik. Sementara itu, disarankan agar semua string diapit oleh tanda petik
ganda ().
3. Setiap mapfile dapat digunakan untuk mendefinisikan maksimal 50 layer peta.
4. Penulisan string untuk path dilakukan secara absolut atau relatif terhadap lokasi
(sub-direktori) dimana mapfile yang bersangkutan berada. Sebagai tambahan,
file-file data dapat diletakkan relatif terhadap sub-direktori yang disebutkan
sebagai parameter SHAREPATH.5. Susunan atau isi mapfile memiliki hirarki struktur dengan objek MAP
berkedudukan sebagai root. Sementara objek-objek yang lain berada di bawah
objek ini.
6. Pengguna dapat menyisipkan baris-baris komentar, di dalam mapfile dengan
cara mengawali komentar yang bersangkutan dengan tanda #.
7. Penulisan nama atribut (field) diapit oleh tanda kurung siku ([]). Sementara
nama atribut itu sendiri bersifat case-sensitive.
Objek-objek di dalam MapFile
1. Map
Mendefinisikan objek master (objek yang menyimpan semua objek lain yang berada
di dalamnya) milik mapfile yang bersangkutan. Selain itu, objek root ini juga
mendefinisikan objek dan pameter-parameter peta/aplikasi seperti halnya: config,
-
7/23/2019 Web-GIS Dengan MapServer - Bagian 1
2/29
Web-GIS dengan MapServer
2012 Beni K. [2]
datapattern, debug, status, units, size, extent, fontset, imagecolor, layer, legend,dan
lain sebagainya.
#
#Baris baris komentar untuk MAPFILE
#MAP...
...END # Akhir MAP
2. Layer
Sering digunakan ini mendefinisikan layer-layer yang kemudian membentuk
tampilan peta dijitalnya. Layer-layer digambarkan sesuai dengan urutan
kemunculannya (penulisan) di dalam mapfile terkait. Dengan demikian, layer
pertama akan diletakkan di dasar sehingga tampilannya bisa tertutupi oleh
tampilan layer berikutnya. Sementara itu, layer yang terakhir (ditulis paling
bawah) akan muncul paling atas dengan menutupi layer-layer yang berada di
bawahnya.
##Baris baris komentar untuk MAPFILE
#
MAP...
LAYER...
END # Akhir definisi objek layer...
END # Akhir MAP
3. Class
Mendefinisikan kelas-kelas tematik untuk suatu layer yang ditentukan. Oleh karena
itu, setiap layer, paling tidak, memiliki satu kelas. Ketika suatu layer memiliki lebihdari satu kelas, maka keanggotaan kelas-kelasnya ditentukan oleh nilai-nilai terkait
(data values) beserta ekspresi yang digunakan untuk mengevaluasinya.
#
#Baris baris komentar untuk MAPFILE
-
7/23/2019 Web-GIS Dengan MapServer - Bagian 1
3/29
Web-GIS dengan MapServer
2012 Beni K. [3]
#
MAP...
LAYER...
CLASS...
END # Akhir definisi objek class...
END # Akhir definisi objek layer
...END # Akhir MAP
4. Label
Mendefinisikan label yang kemudian sering dipakai sebagai anotasi (atau teks)
unsur-unsur spasial. Label juga bisa digunakan sebagai symbol melalui
pemanfaatan berbagaifont truetype.
#
#Baris baris komentar untuk MAPFILE#
MAP
...LAYER
...CLASS
...LABEL
...END # Akhir definisi objek label
...END # Akhir definisi objek class
...
END # Akhir definisi objek layer...
END # Akhir MAP
5. Style
Menyimpan parameter-parameter simbol yang dipakai. Dengan adanya ojek ini,
setiap kelas dapat memiliki simbol dengan tipe, ukuran dan warna tersendiri.
-
7/23/2019 Web-GIS Dengan MapServer - Bagian 1
4/29
Web-GIS dengan MapServer
2012 Beni K. [4]
#
#Baris baris komentar untuk MAPFILE#
MAP...
LAYER...
CLASS...
STYLE
...END # Akhir definisi objek style
...LABEL
...END # Akhir definisi objek label
...END # Akhir definisi objek class
...END # Akhir definisi objek layer
...
END # Akhir MAP
Membuat MapFile Pertama (Satu Layer)
1.
Buat folder baru dengan nama latihandi direktori appsyang ada di dalam folder
ms4w(dalam contoh ini folder ms4wada di driver D:, sehingga terdapat nanti
akan didapatkan path d:\ms4w\apps\latihan).
2. Kopikan data peta dan file pendukungnya ke dalam folder latihan tersebut,
sehingga didapatkan struktur file sbb:
D:\ms4w\apps\latihan\dataD:\ms4w\apps\latihan\list.txtD:\ms4w\apps\latihan\mapD:\ms4w\apps\latihan\petaD:\ms4w\apps\latihan\data\downloadD:\ms4w\apps\latihan\data\duniaD:\ms4w\apps\latihan\data\indonesiaD:\ms4w\apps\latihan\data\sumber_peta.txtD:\ms4w\apps\latihan\data\download\fao_soilD:\ms4w\apps\latihan\data\download\worldD:\ms4w\apps\latihan\data\download\fao_soil\seasestl.zipD:\ms4w\apps\latihan\data\download\fao_soil\seaswel.zipD:\ms4w\apps\latihan\data\download\world\world_countries_shp.zipD:\ms4w\apps\latihan\data\download\world\world_countries_tab.zipD:\ms4w\apps\latihan\data\dunia\shp
-
7/23/2019 Web-GIS Dengan MapServer - Bagian 1
5/29
Web-GIS dengan MapServer
2012 Beni K. [5]
D:\ms4w\apps\latihan\data\dunia\shp\countriesD:\ms4w\apps\latihan\data\dunia\shp\gridD:\ms4w\apps\latihan\data\dunia\shp\pointD:\ms4w\apps\latihan\data\dunia\shp\world.dbfD:\ms4w\apps\latihan\data\dunia\shp\world.sbnD:\ms4w\apps\latihan\data\dunia\shp\world.sbx
D:\ms4w\apps\latihan\data\dunia\shp\world.shpD:\ms4w\apps\latihan\data\dunia\shp\world.shxD:\ms4w\apps\latihan\data\dunia\shp\world_wo_ind.dbfD:\ms4w\apps\latihan\data\dunia\shp\world_wo_ind.shpD:\ms4w\apps\latihan\data\dunia\shp\world_wo_ind.shxD:\ms4w\apps\latihan\data\dunia\shp\countries\WorldCountries.dbfD:\ms4w\apps\latihan\data\dunia\shp\countries\WorldCountries.prjD:\ms4w\apps\latihan\data\dunia\shp\countries\WorldCountries.shpD:\ms4w\apps\latihan\data\dunia\shp\countries\WorldCountries.shxD:\ms4w\apps\latihan\data\dunia\shp\grid\Grid1.dbfD:\ms4w\apps\latihan\data\dunia\shp\grid\Grid1.shpD:\ms4w\apps\latihan\data\dunia\shp\grid\Grid1.shxD:\ms4w\apps\latihan\data\dunia\shp\grid\Grid15.dbf
D:\ms4w\apps\latihan\data\dunia\shp\grid\Grid15.shpD:\ms4w\apps\latihan\data\dunia\shp\grid\Grid15.shxD:\ms4w\apps\latihan\data\dunia\shp\grid\Grid5.dbfD:\ms4w\apps\latihan\data\dunia\shp\grid\Grid5.shpD:\ms4w\apps\latihan\data\dunia\shp\grid\Grid5.shxD:\ms4w\apps\latihan\data\dunia\shp\grid\readme.txtD:\ms4w\apps\latihan\data\dunia\shp\grid\start.aprD:\ms4w\apps\latihan\data\dunia\shp\grid\utmzones.dbfD:\ms4w\apps\latihan\data\dunia\shp\grid\utmzones.shpD:\ms4w\apps\latihan\data\dunia\shp\grid\utmzones.shxD:\ms4w\apps\latihan\data\dunia\shp\grid\WLanden.dbfD:\ms4w\apps\latihan\data\dunia\shp\grid\WLanden.shpD:\ms4w\apps\latihan\data\dunia\shp\grid\WLanden.shxD:\ms4w\apps\latihan\data\dunia\shp\point\readme.txtD:\ms4w\apps\latihan\data\dunia\shp\point\start.aprD:\ms4w\apps\latihan\data\dunia\shp\point\WLanden.dbfD:\ms4w\apps\latihan\data\dunia\shp\point\WLanden.shpD:\ms4w\apps\latihan\data\dunia\shp\point\WLanden.shxD:\ms4w\apps\latihan\data\dunia\shp\point\Wpunten.dbfD:\ms4w\apps\latihan\data\dunia\shp\point\Wpunten.shpD:\ms4w\apps\latihan\data\dunia\shp\point\Wpunten.shxD:\ms4w\apps\latihan\data\indonesia\rasterD:\ms4w\apps\latihan\data\indonesia\shpD:\ms4w\apps\latihan\data\indonesia\tabD:\ms4w\apps\latihan\data\indonesia\raster\geotiffD:\ms4w\apps\latihan\data\indonesia\raster\tiffD:\ms4w\apps\latihan\data\indonesia\raster\geotiff\ind_back_geo.tfwD:\ms4w\apps\latihan\data\indonesia\raster\geotiff\ind_back_geo.tifD:\ms4w\apps\latihan\data\indonesia\raster\geotiff\ind_back_geo.txtD:\ms4w\apps\latihan\data\indonesia\raster\tiff\ind_back.tifD:\ms4w\apps\latihan\data\indonesia\shp\ind_cities.dbfD:\ms4w\apps\latihan\data\indonesia\shp\ind_cities.shpD:\ms4w\apps\latihan\data\indonesia\shp\ind_cities.shxD:\ms4w\apps\latihan\data\indonesia\shp\ind_provinces.dbfD:\ms4w\apps\latihan\data\indonesia\shp\ind_provinces.shpD:\ms4w\apps\latihan\data\indonesia\shp\ind_provinces.shx
-
7/23/2019 Web-GIS Dengan MapServer - Bagian 1
6/29
Web-GIS dengan MapServer
2012 Beni K. [6]
D:\ms4w\apps\latihan\data\indonesia\tab\ind_cities.datD:\ms4w\apps\latihan\data\indonesia\tab\ind_cities.idD:\ms4w\apps\latihan\data\indonesia\tab\ind_cities.mapD:\ms4w\apps\latihan\data\indonesia\tab\ind_cities.tabD:\ms4w\apps\latihan\data\indonesia\tab\ind_provinces.datD:\ms4w\apps\latihan\data\indonesia\tab\ind_provinces.id
D:\ms4w\apps\latihan\data\indonesia\tab\ind_provinces.indD:\ms4w\apps\latihan\data\indonesia\tab\ind_provinces.mapD:\ms4w\apps\latihan\data\indonesia\tab\ind_provinces.tabD:\ms4w\apps\latihan\map\canada.mapD:\ms4w\apps\latihan\map\cities_query.htmlD:\ms4w\apps\latihan\map\example2-1.htmlD:\ms4w\apps\latihan\map\id_index.jpgD:\ms4w\apps\latihan\map\Indonesia01.mapD:\ms4w\apps\latihan\map\Indonesia02.mapD:\ms4w\apps\latihan\map\keymap.pngD:\ms4w\apps\latihan\map\kota_query.htmlD:\ms4w\apps\latihan\map\latihan01.htmlD:\ms4w\apps\latihan\map\latihan01.map
D:\ms4w\apps\latihan\map\latihan01a.mapD:\ms4w\apps\latihan\map\latihan01b.mapD:\ms4w\apps\latihan\map\latihan01c.mapD:\ms4w\apps\latihan\map\latihan02.htmlD:\ms4w\apps\latihan\map\latihan02.mapD:\ms4w\apps\latihan\map\latihan02a.mapD:\ms4w\apps\latihan\map\latihan02b.mapD:\ms4w\apps\latihan\map\latihan02c.mapD:\ms4w\apps\latihan\map\latihan02t.htmlD:\ms4w\apps\latihan\map\latihan02z.htmlD:\ms4w\apps\latihan\map\latihan03.htmlD:\ms4w\apps\latihan\map\latihan03.mapD:\ms4w\apps\latihan\map\latihan03a.mapD:\ms4w\apps\latihan\map\latihan04.htmlD:\ms4w\apps\latihan\map\latihan04.mapD:\ms4w\apps\latihan\map\latihan04a.mapD:\ms4w\apps\latihan\map\latihan05.htmlD:\ms4w\apps\latihan\map\latihan05.mapD:\ms4w\apps\latihan\map\latihan06.mapD:\ms4w\apps\latihan\map\legend.htmlD:\ms4w\apps\latihan\map\legend_orig.htmlD:\ms4w\apps\latihan\map\legend_simple.htmlD:\ms4w\apps\latihan\map\maplab01.mapD:\ms4w\apps\latihan\map\prop_query.htmlD:\ms4w\apps\latihan\map\province_query.htmlD:\ms4w\apps\latihan\map\query_kota.htmlD:\ms4w\apps\latihan\map\query_prop.htmlD:\ms4w\apps\latihan\peta\downloadD:\ms4w\apps\latihan\peta\duniaD:\ms4w\apps\latihan\peta\indonesiaD:\ms4w\apps\latihan\peta\sumber_peta.txtD:\ms4w\apps\latihan\peta\download\fao_soilD:\ms4w\apps\latihan\peta\download\worldD:\ms4w\apps\latihan\peta\download\fao_soil\seasestl.zipD:\ms4w\apps\latihan\peta\download\fao_soil\seaswel.zipD:\ms4w\apps\latihan\peta\download\world\MweGrid.zip
-
7/23/2019 Web-GIS Dengan MapServer - Bagian 1
7/29
Web-GIS dengan MapServer
2012 Beni K. [7]
D:\ms4w\apps\latihan\peta\download\world\MweHoogte.zipD:\ms4w\apps\latihan\peta\download\world\MwePoints.zipD:\ms4w\apps\latihan\peta\download\world\MwePop.zipD:\ms4w\apps\latihan\peta\download\world\MweTimezone.zipD:\ms4w\apps\latihan\peta\download\world\MwoCountries.zipD:\ms4w\apps\latihan\peta\download\world\SweGrid.zip
D:\ms4w\apps\latihan\peta\download\world\SweHoogte.zipD:\ms4w\apps\latihan\peta\download\world\SwePoints.zipD:\ms4w\apps\latihan\peta\download\world\SwePop.zipD:\ms4w\apps\latihan\peta\download\world\SweTimezone.zipD:\ms4w\apps\latihan\peta\download\world\SwoCountries.zipD:\ms4w\apps\latihan\peta\download\world\world_countries_shp.zipD:\ms4w\apps\latihan\peta\download\world\world_countries_tab.zipD:\ms4w\apps\latihan\peta\dunia\shpD:\ms4w\apps\latihan\peta\dunia\shp\countriesD:\ms4w\apps\latihan\peta\dunia\shp\gridD:\ms4w\apps\latihan\peta\dunia\shp\world.dbfD:\ms4w\apps\latihan\peta\dunia\shp\world.sbnD:\ms4w\apps\latihan\peta\dunia\shp\world.sbx
D:\ms4w\apps\latihan\peta\dunia\shp\world.shpD:\ms4w\apps\latihan\peta\dunia\shp\world.shxD:\ms4w\apps\latihan\peta\dunia\shp\world_wo_ind.dbfD:\ms4w\apps\latihan\peta\dunia\shp\world_wo_ind.shpD:\ms4w\apps\latihan\peta\dunia\shp\world_wo_ind.shxD:\ms4w\apps\latihan\peta\dunia\shp\countries\WorldCountries.dbfD:\ms4w\apps\latihan\peta\dunia\shp\countries\WorldCountries.prjD:\ms4w\apps\latihan\peta\dunia\shp\countries\WorldCountries.shpD:\ms4w\apps\latihan\peta\dunia\shp\countries\WorldCountries.shxD:\ms4w\apps\latihan\peta\dunia\shp\grid\Grid1.dbfD:\ms4w\apps\latihan\peta\dunia\shp\grid\Grid1.shpD:\ms4w\apps\latihan\peta\dunia\shp\grid\Grid1.shxD:\ms4w\apps\latihan\peta\dunia\shp\grid\Grid15.dbfD:\ms4w\apps\latihan\peta\dunia\shp\grid\Grid15.shpD:\ms4w\apps\latihan\peta\dunia\shp\grid\Grid15.shxD:\ms4w\apps\latihan\peta\dunia\shp\grid\Grid5.dbfD:\ms4w\apps\latihan\peta\dunia\shp\grid\Grid5.shpD:\ms4w\apps\latihan\peta\dunia\shp\grid\Grid5.shxD:\ms4w\apps\latihan\peta\dunia\shp\grid\readme.txtD:\ms4w\apps\latihan\peta\dunia\shp\grid\start.aprD:\ms4w\apps\latihan\peta\dunia\shp\grid\UTMZONES.dbfD:\ms4w\apps\latihan\peta\dunia\shp\grid\UTMZONES.shpD:\ms4w\apps\latihan\peta\dunia\shp\grid\UTMZONES.shxD:\ms4w\apps\latihan\peta\dunia\shp\grid\WLanden.dbfD:\ms4w\apps\latihan\peta\dunia\shp\grid\WLanden.shpD:\ms4w\apps\latihan\peta\dunia\shp\grid\WLanden.shxD:\ms4w\apps\latihan\peta\indonesia\rasterD:\ms4w\apps\latihan\peta\indonesia\shpD:\ms4w\apps\latihan\peta\indonesia\tabD:\ms4w\apps\latihan\peta\indonesia\raster\geotiffD:\ms4w\apps\latihan\peta\indonesia\raster\tiffD:\ms4w\apps\latihan\peta\indonesia\raster\geotiff\ind_back_geo.tfwD:\ms4w\apps\latihan\peta\indonesia\raster\geotiff\ind_back_geo.tifD:\ms4w\apps\latihan\peta\indonesia\raster\geotiff\ind_back_geo.txtD:\ms4w\apps\latihan\peta\indonesia\raster\tiff\ind_back.tifD:\ms4w\apps\latihan\peta\indonesia\shp\ind_cities.dbf
-
7/23/2019 Web-GIS Dengan MapServer - Bagian 1
8/29
Web-GIS dengan MapServer
2012 Beni K. [8]
D:\ms4w\apps\latihan\peta\indonesia\shp\ind_cities.shpD:\ms4w\apps\latihan\peta\indonesia\shp\ind_cities.shxD:\ms4w\apps\latihan\peta\indonesia\shp\ind_provinces.dbfD:\ms4w\apps\latihan\peta\indonesia\shp\ind_provinces.shpD:\ms4w\apps\latihan\peta\indonesia\shp\ind_provinces.shxD:\ms4w\apps\latihan\peta\indonesia\tab\ind_cities.dat
D:\ms4w\apps\latihan\peta\indonesia\tab\ind_cities.idD:\ms4w\apps\latihan\peta\indonesia\tab\ind_cities.mapD:\ms4w\apps\latihan\peta\indonesia\tab\ind_cities.tabD:\ms4w\apps\latihan\peta\indonesia\tab\ind_provinces.datD:\ms4w\apps\latihan\peta\indonesia\tab\ind_provinces.idD:\ms4w\apps\latihan\peta\indonesia\tab\ind_provinces.indD:\ms4w\apps\latihan\peta\indonesia\tab\ind_provinces.mapD:\ms4w\apps\latihan\peta\indonesia\tab\ind_provinces.tab
3. Buat sebuah mapfile sederhana yang pertama dengan nama latihan01.mapdi
bawah direktori latihan/map. Mapfile ini akan digunakan untuk menampilkansebuah layer (dalam hal ini layer Proponsi) peta di layar web browser.
# File: latihan01.map
MAP
NAME "Indonesia"
STATUS ONEXTENT 92.5 -19.5 142.5 14.0
IMAGETYPE PNG
SIZE 450 300SHAPEPATH "../data/indonesia/shp"IMAGECOLOR 255 255 255
WEB
IMAGEPATH "/tmp/ms_tmp/"IMAGEURL "/ms_tmp/"
END
LAYER
NAME "Propinsi"DATA "ind_provinces.shp"STATUS DEFAULT
TYPE POLYGON
CLASSCOLOR 225 200 100
OUTLINECOLOR 0 0 0
-
7/23/2019 Web-GIS Dengan MapServer - Bagian 1
9/29
Web-GIS dengan MapServer
2012 Beni K. [9]
END
END
END
4. Keterangan Mapfile.
MapFile di atas terdiri dari 3 object, keterangannya adalah sebagai berikut sesuai
dengan urutan baris-barisnya:
a. Object MapFile tersebut memiliki objek Map dengan nama Indonesia.
b.
File (sementara) yang dihasilkan oleh program CGI MapServer akan bertipe
PNG. Pengguna dapat memilih format lain yang didukung: misalnya JPG,
GIF, dan lain sebagainya.
c.
Jangkauan atau batas-batas koordinat peta dijital hasil program CGI
MapServer (image) adalah (92.5 -19.5); (142.5 14.0), atau [Xmin, Ymin];
[Xmax, Ymax]. Nilai-nilai ini diambil atau dipilih dari (sebagian) cakupan peta
dijital (layer atau shapefile) aslinya.
d.
Semua layer dibuat ON (dimunculkan).
e.
Ukuran (file) citra (peta dijital raster) hasil program CGI MapServer ini dibuat
berukuran 450 [piksel horizontal] x 300 [piksel vertical].
f.
Data spasial yang digunakan oleh MapFile ini berlokasi relative pada direktori
"..\data\indonesia\shp. Jika menggunakan alamat absolute maka ditulis
menjadi d:/ms4w/apps/latihan/data/indonesia/shp.
g.
Warna inisialisasi atau latar-belakang untuk tampilan petanya (juga tampildi dalam browser-nya) dibuat berwama putih (255 255 255).
h.
Nama satu-satunya layer yang akan ditampilkan adalah Propinsi.
i.
Nama shapefile yang digunakan sebagai layer District adalah
ind_provinces.shp.
j. Layer Propinsi ini berisi unsur-unsur spasial yang bertipe poligon.
k. Di dalam layer Propinsi ini hanya terdapat sebuah kelas untuk menyajikan
peta dengan warna (225 200 100) untuk isian unsur & wama hitam (0 0 0)
untuk garis pembatas unsur-unsur poligonnya.
Memunculkan Peta di Web Browser
Ketik pada URL web browser sebagai berikut:
http://localhost:8000/cgi-
bin/mapserv.exe?map=/ms4w/apps/latihan/map/latihan01.map&mode=map
-
7/23/2019 Web-GIS Dengan MapServer - Bagian 1
10/29
Web-GIS dengan MapServer
2012 Beni K. [10]
Keterangan:
1. Penulisan string URL dituliskan tanpa spasi;
2. String http://locahost:8000/cgi-bin/mapserv.exe? digunakan untuk memanggil
program aplikasi CGI (MapServer) yang terdapat di server local (di sini Apache
berjalan pada nomor port 8000);
3. mapserv.exe?map=/ms4w/apps/latihan/map/latihan01.map, adalah nama
lengkap mapfile (lengkap berikut nama path-nya) yang akan digunakan oleh
program CGI sebagai dasar untuk menampilkan peta dijitalnya;
4. Karakter & (atau ampersand) digunakan sebagai tanda pemisah antar
parameter yang diberikan kepada program aplikasi CGI, dalam hal ini
MapServer);
5. Secara default yang akan ditampilkan adalah layer Propinsi karena property
dari layer diset DEFAULT. Untuk menampilkan layer lainnya (jika ada), dapat
ditambahkan string &layer=nama_layer_lainnya&mode=map. Jika
menggunakan keyword Layers (sebagai pengganti Layer), pengguna dapat
menyebutkan beberapa layer yang akan di-ON-kan secara bersamaan dalam satu
satu baris dengan diselingi spasi di antara nama-nama layer-nya. Pada
MapServer versi 4.4 ke atas, pengguna dapat meng-ON-kan semua layer-nya
secara otomatis dengan memakai paramater LAYERS=all. Sementara yang
ledua, mode=map, akan menentukan mode operasi MapServer:
a. Browse: pembuatan peta (dan halaman) interaktif penuh. Ini merupakan
mode default,
-
7/23/2019 Web-GIS Dengan MapServer - Bagian 1
11/29
Web-GIS dengan MapServer
2012 Beni K. [11]
b.
Query: pencarian unsur spasial (unsur yang terdekat) akan dipicu oleh event
Click di atas tampilan peta;
c. NQuery: pencarian unsur spasial (semua unsur yang memenuhi ketentuan)
yang juga dipicu oleh event Click di atas peta atau oleh selection box yang
didefinisikan sendiri oleh pengguna;
d.
Map: peta (image) yang dihasilkan langsung dikirimkan ke client (browser)
tanpa terlebih dahulu disimpan di (sub) direktori image (sementara) yang
berasa di server-nya (server tidak menyimpan image sementara). Dengan
demikian, penggunaan parameter mode=map" akan menyebabkan pengguna
dapat melihat tampilan peta yang bersangkutan tanpa menghasilkan
halaman HTML. Sementara itu, penggunaan parameter mode=browse"
memerlukan file template.
Menampilkan Layer lainnyaSekarang akan ditambahkan satu layer lagi (ind_cities.shp) berisi lokasi kota-
kota besar di Indonesia. Untuk menampilkan lokasi kota, akan ditambahkan
simbol, pada contoh ini lingkaran. Untuk dapat menggunakan simbol, harus
ditentukan file yang berisi definisi symbol. Misalkan file symbol diletakaan di
folder etc dengan nama symbols.sym, maka dipanggil dengan perintah berikut:
SYMBOLSET ../etc/symbols.sym
Edit file latihan01.mapdan simpan dengan nama latihan02.map.Kemudiansisipkan definisi objek LAYER berikut di bawah definisi layer ind_provinces.shp:
LAYER
NAME "Kota"
DATA "ind_cities.shp"STATUS DEFAULT
TYPE POINT
CLASS
NAME "kota1"SYMBOL 7SIZE 8
COLOR 255 0 0
END
END
-
7/23/2019 Web-GIS Dengan MapServer - Bagian 1
12/29
Web-GIS dengan MapServer
2012 Beni K. [12]
Dari definisi layer di atas, layer ind_cities.shpakan digambarkan menggunakan
simbol dengan nomor indeks 7 dari file symbols.sym yang terdapat pada folder
etc. Simbol tersebut adalah lingkaran, sesuai dengan definisi pada file
symbols.sym seperti di bawah ini:
SymbolName 'circle'
Type ELLIPSE
Filled TRUEPoints
1 1END
END
Isi lengkap dari file latihan02.map:
# File: latihan02.map
MAP
NAME "Indonesia"
STATUS ONEXTENT 92.5 -19.5 142.5 14.0
IMAGETYPE PNGSIZE 450 300
SHAPEPATH "../data/indonesia/shp"IMAGECOLOR 255 255 255
SYMBOLSET "../etc/symbols.sym"
WEB
IMAGEPATH "/tmp/ms_tmp/"
IMAGEURL "/ms_tmp/"END
LAYER
NAME "Propinsi"DATA "ind_provinces.shp"STATUS DEFAULT
TYPE POLYGON
CLASS
COLOR 225 200 100OUTLINECOLOR 0 0 0
-
7/23/2019 Web-GIS Dengan MapServer - Bagian 1
13/29
Web-GIS dengan MapServer
2012 Beni K. [13]
END
END
LAYER
NAME "Kota"
DATA "ind_cities.shp"STATUS DEFAULT
TYPE POINT
CLASS
NAME "kota1"SYMBOL 7
SIZE 8COLOR 255 0 0
END
END
END
Ketik di URL web browser sbb:
http://localhost:8000/cgi-
bin/mapserv.exe?map=/ms4w/apps/latihan/map/latihan03.map&mode=map
-
7/23/2019 Web-GIS Dengan MapServer - Bagian 1
14/29
Web-GIS dengan MapServer
2012 Beni K. [14]
Menampilkan Label
Untuk menampilkan label, digunakan objek LABEL. Pada contoh ini, akan
ditampilkan label nama kota pada layer ind_cities.shp. Sisipkan definisi objek
LABEL berikut pada mapfile:
LABEL
FONT fritqat-italicTYPE truetype
SIZE 7POSITION AUTO
PARTIALS FALSEOUTLINECOLOR 255 255 255
COLOR 0 0 255END
Definisi objek LABEL di atas akan berada di dalam blok definisi objek CLASS
dari layer ind_cities.shp. Karena untuk menampilkan label diperlukan font, maka
harus disertakan sintaks berikut:
FONTSET ../etc/fonts.txt"
Sintaks di atas menyatakan bahwa definisi font yang dapat digunakan:
(diantaranya adalah font fritqat-italic" yang pada objek LABEL atas) terdapat
pada file fonts, txtyang berada pada direktori etc.
Simpan semua perubahan di atas ke file dalam latihan03.map, sehingga
menjadi seperti di bawah ini:
# File: latihan03.map
MAP
NAME "Indonesia"STATUS ON
EXTENT 92.5 -19.5 142.5 14.0IMAGETYPE PNG
SIZE 450 300
SHAPEPATH "../data/indonesia/shp"IMAGECOLOR 255 255 255
SYMBOLSET "../etc/symbols.sym"FONTSET "../etc/fonts.txt"
UNITS dd
-
7/23/2019 Web-GIS Dengan MapServer - Bagian 1
15/29
Web-GIS dengan MapServer
2012 Beni K. [15]
WEB
IMAGEPATH "/tmp/ms_tmp/"IMAGEURL "/ms_tmp/"
LOG "/ms_tmp/err.log"END
LEGEND
POSITION lcEND
SCALEBARSTYLE 1
UNITS kilometersEND
LAYER
NAME "Propinsi"
DATA "ind_provinces.shp"STATUS DEFAULT
TYPE POLYGON
CLASS
Name "Batas Propinsi"COLOR 225 200 100
OUTLINECOLOR 0 0 0END
END
LAYER
NAME "Kota"DATA "ind_cities.shp"
STATUS DEFAULTTYPE POINT
LABELITEM "NAME"
CLASSNAME "Kota Besar"
SYMBOL 7SIZE 8
COLOR 255 0 0
LABEL
FONT fritqat-italic
-
7/23/2019 Web-GIS Dengan MapServer - Bagian 1
16/29
Web-GIS dengan MapServer
2012 Beni K. [16]
TYPE truetype
SIZE 7POSITION AUTO
PARTIALS FALSEOUTLINECOLOR 255 255 255
COLOR 0 0 255END
END
END
END
Akses Data Menggunakan OGR
Library OGR digunakan pada MapServer untuk keperluan baca tulis berbagai
format data peta vektor dan beberapa data spasial dalam DBMS. Sekarang akan
mencoba memodifikasi file latihan01.map supaya dapat menampilkan file dalam
format Maplnfo, salah satu format data yangg didukung oleh OGR. Hal yang
harus berubah hanya pada bagian
DATA "ind_provinces.shp"
Diubah sehingga menjadi:
CONNECTIONTYPE OGR
CONNECTION "ind_provinces.tab"
Teks di atas memerintahkan MapServer untuk membuka file ind_provinces.tab
dengan memanfaatkan library OGR.
Jika diperlukan dapat disesuaikan path ke data dalam format Maplnfo. Untuk
keperluan ini, ubah di bagian SHAPEPATH berikut:
SHAPEPATH "../data/indonesia/shp"
nenjadi:
SHAPEPATH "../data/indonesia/tab"
Simpan semua perubahan tadi ke file latihan04.map. Isi lengkap file
latihan04.mapadalah sebagai berikut:
# File: latihan04.map
-
7/23/2019 Web-GIS Dengan MapServer - Bagian 1
17/29
Web-GIS dengan MapServer
2012 Beni K. [17]
MAP
NAME "Indonesia"STATUS ON
EXTENT 92.5 -19.5 142.5 14.0IMAGETYPE PNG
SIZE 450 300SHAPEPATH "../data/indonesia/tab"
IMAGECOLOR 255 255 255
WEB
IMAGEPATH "/tmp/ms_tmp/"IMAGEURL "/ms_tmp/"
END
LAYER
NAME "Propinsi"CONNECTIONTYPE OGR
CONNECTION "ind_provinces.tab"
STATUS DEFAULTTYPE POLYGON
CLASS
COLOR 225 200 100OUTLINECOLOR 0 0 0
END
END
END
Menampilkan Peta Berformat Raster
MapServer memiliki kapabilitas untuk menampilkan peta dalam format raster,
baik sebagai fitur bawaan maupun dengan menggunakan library GDAL. File
raster dalam format GeoTIFF merupakan salah satu format yang dapat
digunakan pada MapServer. File dalam format GeoTIFF sebenarnya serupa
dengan file gambar biasa dalam format TIFF, dengan tambahan informasi
referensi geografis. Informasi ini disisipkanke ke dalam file TIFF tadi.
-
7/23/2019 Web-GIS Dengan MapServer - Bagian 1
18/29
Web-GIS dengan MapServer
2012 Beni K. [18]
Untuk menampilkan peta dari raster GEOTIFF tersebut, buat file
latihan05.mapdengan isi seperti di bawah ini:
# File: latihan05.map
MAP
NAME "Indonesia"
STATUS ONEXTENT 92.5 -19.5 142.5 14.0
IMAGETYPE PNG
SIZE 450 300SHAPEPATH "../data"
IMAGECOLOR 255 255 255
WEB
IMAGEPATH "/tmp/ms_tmp/"IMAGEURL "/ms_tmp/"END
LAYER
NAME backgroundTYPE RASTER
STATUS DEFAULTDATA "./indonesia/raster/geotiff/ind_back_geo.tif"
END
LAYER
NAME "Propinsi"
DATA "./indonesia/shp/ind_provinces.shp"
STATUS DEFAULTTYPE POLYGON
CLASS
COLOR -1 -1 -1
OUTLINECOLOR 0 0 0END
END
END
-
7/23/2019 Web-GIS Dengan MapServer - Bagian 1
19/29
Web-GIS dengan MapServer
2012 Beni K. [19]
Hasil tampilan di web browser:
Pada gambar di atas, dapat dilihat layer raster ind_back_geo.tiff dapat
ditumpuk dengan layer vektor ind_provinces.shp secara pas (match) karena
keduanya memiliki referensi geografis yang sama.
B. Struktur File Template
File template pada MapServer dapat digunakan untuk reberapa keperluan,
seperti mengatur tampilan dan user interface, atau untuk mengatur kenampakan
legenda. File template biasanya digunakan terutama pada penggunaan
MapServer sebagai program CGI. Bab ini akan membahas dua jenis file template,
yakni file template MapServer dan file template untuk pengaturan legenda.
Secara umum, file template berupa file HTML (dengan ekstensi *.html) yangdapat digunakan untuk mengatur tampilan peta dan menambahkan fungsi-
fungsi lain yang dibutuhkan, misalnya navigasi peta. File template mengandung
kata kunci berupa karakter-karakter khusus, yang diapit oleh tanda kurung siku
([....]). Berbagai kata kunci tersebut akan diganti oleh program MapServer setiap
kali file template tersebut diproses. Dengan penggantian seperti ini
memungkinkan berbagai informasi dikirimkan ke MapServer atau sebaliknya.
-
7/23/2019 Web-GIS Dengan MapServer - Bagian 1
20/29
Web-GIS dengan MapServer
2012 Beni K. [20]
File Template MapServer
File template MapServer digunakan untuk mengatur kenampakan peta.
Penggunaan MapServer sebagai program CGI, ditambah dengaj sebuah file
template, akan memungkinkan membentuk user interface sehingga pengguna
dapat secara interaktif menggunakan aplikasi peta yang telah kita buat.
Kata kunci yang dapat digunakan pada file template dibagi menjadi kategori-
kategori berikut:
1. Umum
2. File acuan
3. Geometri gambar
4. Geometri peta
5. Layer
6.
Zoom (perbesaran atau pengecilan peta)
Harap diperhatikan bahwa kata kunci pada file template bersifat case sensitive,
(antara huruf kecil dengan huruf besar/kapital memiliki arti yang berbeda).
a.Kategori Umum1. [version]
Kata kunci ini akan diganti dengan versi MapServer.
2.
[id]
Identifikasi unik sesi koneksi.
3.
[host]Nama host tempat server web dijalankan.
4. [port]
Port yang digunakan web server.
5.
[nama variabel post atau get]
Variabel ini akan digantikan oleh nilai parameter yang dikirimkan ke
MapServer. Misalnya, jika ketika memanggil MapServer dengan tambahan
parameterparam1 =2000, maka nilai paramterparam1dapat diakses dengan
menggunakan kata kunci [paraml].
6. [web_metadata_web]
Kata kunci ini digunakan untuk mengakses metadata objek web, misalnya
[web_projection].Projectionmerupakan salah satau metadata untuk objek
web.
-
7/23/2019 Web-GIS Dengan MapServer - Bagian 1
21/29
Web-GIS dengan MapServer
2012 Beni K. [21]
b.Kategori File Acuan1. [img]
Path relatif ke direktori root web (misalnya direktori /var/www/htdocspada
Slackware, atau c:\Inetpub\wwwrootpada Windows, menunjukkan lokasi file
gambar peta yang dibuat MapServer.
2.
[ref]
Path relatif ke direktori root web, yang menunjukkan lokasi gambar peta
indeks.
3. [legend]
Path relatif ke direktori root web, tempat gambar legenda peta akan dibentuk
oleh MapServer. Sejak versi 3.5.1, didefinisikan sebuat file template untuk
manangani tampilan legenda peta.
4. [scalebar]
Path relatif terhadap direktori root web, tempat gambar skala grafis disimpan.
5.
[queryfile]
Path ke tempat file query disimpan, jika parameter CGI savequery diset.
6.
[map]
Path ke tempat file *.map disimpan, jika parameter CGI savemap diset.
c. Kategori Geometri Gambar Peta1.
[center]
Koordinat titik tengah gambar peta, dalam piksel.
2. [center_x] dan [center_y]
Absis dan ordinat titik tengah peta, dalam piksel.
3.
[mapsize]Ukuran gambar peta (lebar dan tinggi), dalam satuan piksel Kedua nilai
dipisahkan dengan karakter spasi.
4. [mapwidth] dan [mapheight]
Masing-masing mewakili lebar dan tinggi gambar peta, dalam piksel.
5. [scale]
Skala peta saat ini (saat file template diproses).
6.
[cellsize]
Ukuran satu piksel di gambar peta, dinyatakan dalam satuan peta (misalnya
1 piksel mewakili 10 meter).
d.Kategori Geometri Peta1. [mapx] dan [mapy]
Absis dan ordinat tempat klik mouse di atas gambar peta.
2. [mapext]
-
7/23/2019 Web-GIS Dengan MapServer - Bagian 1
22/29
Web-GIS dengan MapServer
2012 Beni K. [22]
Koordinat batas peta, dengan masing-masing nilai dipisahkan dengan
karakter spasi.
3. [minx], [miny], [maxx], [maxy]
Nilai koordinat batas peta yang barn.
4. [dx] dan [dy]
Perbedaan antara koordinat batas peta lama dengan yang baru.
5.
[rawext]
Koordinat batas peta, sebelum disesuaikan dengan ukuran window tempat
menggambar. Masing-masing nilai dipisahkan dengan karakter spasi.
6. [rawminx], [rawminy], [rawmaxx], [rawmaxy]
Masing-masing nilai menyatakan absis dan ordinat dari koordinat batas peta.
Kata kunci ini hanya berlaku untuk MapServer dengan dukungan proyeksi
(menggunakan libproj).
7.
[maplon] dan [maplat]
Koordinat peta (bujur dan lintang), tempat klik mouse di atas gambar peta.
8.
[mapext_latlon]
Koodinat batas terluar peta, jika digunakan sistem proyeksi tertentu, dan
MapServer menggunakan library libproj.
9. [minlon], [minlat], [maxlon], [maxlat]
Nilai koordinat bujur dan lintang yang menyatakan nilai koordinat batas
terluar peta. Kata-kunci ini hanya dapat digunakan pada MapServer yang
mendukung libproj.
e.
Kategori Layer1. [layers]
Daftar layer aktif, dipisahkan dengan karakter spasi.
2. [toggle_layers]Daftar semua layer yang statusnya dapat diubah, misalnya semu; layer yang
terdefinisi pada file *.map dan statusnya bukan default
3. [nama_layer_check] atau [nama_layer_select]
Kata kunci ini akan diganti dengan string "checked" atau selected". Ganti
nama_layer dengan nama layer yang bersesuaian, sehingga misalnya menjadi
[jalan_check] atau [sungai_select].
4.
[layer_metadata]Kata kunci ini menyatakan metadata tertentu dari sebuah layer. Misalnya jika
layer jalan memiliki metadata arah, maka kata kunci menjadi [jalan_arah].
Antara nama layer dan metadata dipisahkai oleh karakter garis bawah
(underscore).
-
7/23/2019 Web-GIS Dengan MapServer - Bagian 1
23/29
Web-GIS dengan MapServer
2012 Beni K. [23]
f. Kategori Zoom1. [zoom_nilaizoom_check] atau [zoom_nilaizoom_select]
Kata kunci yang digunakan untuk memeriksa nilai faktor skala perbesaran.
Nilai default faktor skala berkisar antara -25 sampai 25. Kata kunci ini akan
diganti dengan kata checked", selected atau bergantung nilai faktor skala
yang digunakan. Sebagai contoh, jika nilai faktor skala sekarang adalah 12,
maka kata kunci [zoom_12_select] akan diganti menjadi kata selected".
2. [zoomdir_-1|0| 1_check] atau [zoomdir_-1|0|1_select]
Kata kunci ini akan diganti dengan kata checked", "selected" atau bergantung
pada nilai arah zoom. Misalnya jika nilai arah zoom adalah 1, maka kata kunci
[zoomdir_l_check] akan diganti dengai kata checked".
File Template Query
File template query digunakan untuk mengatur tampilan keluaran intuk data-
data hasil query. Kata kunci yang dapat digunakan pada file template query
adalah sebagai berikut:
1. [shpext]
Koordinat batas luar objek peta ditambah dengan buffer sebesar 5 persen.
Kata kunci ini hanya dapat digunakan ketika memroses hasil query.
2. [shpminx], [shpminx], [shpminx], [shpminx]
Absis/ordinat minimum dan maksimum dari sebuah objek peta. Kata kunci ini
hanya dapat digunakan ketika memroses hasil query.
3.
[shpmid]Koordinat titik tengah objek peta. Kata kunci ini hanya dapat digunakan
ketika memroses hasil query.
4. [shpmidx], [shpmidy]
Masing-masing menyatakan absis dan ordinat objek peta. Kata kunci ini
hanya dapat digunakan ketika memroses hasil query.
5. [shpidx]
Absis/ordinat minimum dan maksimum dari sebuah objek peta. Kata kunci ini
hanya dapat digunakan ketika memroses hasil query.
6. [shpclass]
Nilai indeks classobjek peta. Kata kunci ini hanya dapat digunakan ketikamemroses hasil query.
7. [shpxy format]
Kata kunci ini digunakan untuk menampilkan daftar koordinat objek peta,
dengan format tertentu. Nilai default [shpxy] akan mengembalikan daftar
koordinat dalam bentuk xl, yl, x2, y2 dan seterusnya. Kata kunci ini hanya
dapat digunakan ketika memroses hasil query.
-
7/23/2019 Web-GIS Dengan MapServer - Bagian 1
24/29
Web-GIS dengan MapServer
2012 Beni K. [24]
Format dapat berupa:
a. cs =Menyatakan separator koordinat, default adalah spasi.
b. xh =, xf =Karakter yang akan ditampilkan sebelum dan sesudah absis (default xh
=, xf =)
c. yh =, yf =Karakter yang akan ditampilkan sebelum dan sesuda ordinat (default
tanpa karakter)
d. ph =, pf =, ps =Karakter yang akan ditampilkan sebelum dan sesuda separator antar
bagian objek peta (default tanpa karakter)
e. sh =, sf =Karakter yang akan ditampilkan sebelum dan sesuda sebuah objek (defaut
tanpa karakter)
f. precision =Jumlah desimal yang akan digunakan ketika menampilkan angka
koordinat (default 0, tanpa angka desimal)
g. proj =Menampilkan definisi proyeksi peta (default tanpa keterangan proyeksi
peta)
Contoh penggunaan: [shpxy xh=( yf=)] akan menghasilkan daftar
koordinat berbentuk (xl yl),(x2 y2),(x3 y3) dan seterusnya.
8. [tileindex]
Nilai indeks dari file yang sekarang digunakan. Jika objek pet sekarang tidak
menggunakan tile, maka kata kunci ini aka diganti dengan -1. Kata kunci
ini hanya dapat digunaka ketika memproses hasil query.
9. [namaitemDBASE]
Nama field tabel atribut dari layer yang di-query.
10.[namajoin_namaitemDBASE]
Kata kunci ini digunakan untuk proses join satu ke satu. Nilai pertama adalahnama join, sedangkan nilai kedua adalah nama field. Kata kunci ini hanya
dapat digunakan ketika memroses hasil query.
11.[join_namajoin]
Kata kunci ini digunakan untuk proses join satu ke banyak (one to many).
12.[metadata_kunci]
Nilai metadata dari layer yang di-query.
-
7/23/2019 Web-GIS Dengan MapServer - Bagian 1
25/29
Web-GIS dengan MapServer
2012 Beni K. [25]
13.
Beberapa nilai substitusi lain di bawah ini dapat digunakan pada mode query
yang memungkinkan hasilnya lebih dari satu:
[nr]
Jumlah rekord hasil query.
[nl]
Jumlah layer yang di-guery dan mengembalikan keluaran.
[nlr]
Jumlah rekord hasil query dari layer aktif saat ini.
[rn]
Nomor rekord hasil query pada semua layer, dimulai dari 1.
[lrn]
Nomor rekord hasil query pada layer aktif saat ini
[cl]
Nama layer aktif saat ini.
File Template Legenda
File template untuk legenda peta juga berupa file HTML dengan tambahan tag-
tag khusus. Cara penulisan tag file template legenda tidak sama dengan cara
penulisan tag HTML. Tag HTML yang umum biasanya diapit karakter , sedangkan tag legenda diapit oleh karakter kurung siku ([...]). Berbeda
dengan kata kunci pada file template MapServer, tag pada file template legenda
diawali dengan tag pembuka [...] dan diakhiri dengan tag penutup [/...].
File template legenda akan ditunjuk oleh parameter TEMPLATE pada objekLEGEND. Contoh definisi objek LEGEND pada file *.map:
LEGEND
STATUS ONKEYSIZE 18 12
# LABEL object
LABELTYPE BITMAP
SIZE MEDIUMCOLOR 0 0 89
ENDTEMPLATE "legenda.html"
END
Jika parameter TEMPLATE didefinisikan pada objek LEGEND, maka file
template akan dibaca dan diproses untuk menghasilkan file HTML berisi legenda
peta. Isi file HTML tersebut kemudian akan disisipkan pada file HTML utama
-
7/23/2019 Web-GIS Dengan MapServer - Bagian 1
26/29
Web-GIS dengan MapServer
2012 Beni K. [26]
(misalnya file template MapServer seperti dijelaskan pada bagian 9sebelumnya),
pada tempat di mana kata kunci [legend] berada.
Jika parameter TEMPLATE didefinisikan pada objek LEGEND, maka kata kunci
[legend] pada file template MapServer akan diganti dengan file HTML yang
berasal dari file template legenda. Contoh isi file template MapServer padakondisi ini, dapat dilihat di bawah ini:
Legenda
[legend]
Pada contoh tadi, baris tempat kata kunci [legend] berada, akan diganti dengan
hasil pemrosesan file template legenda.
Jika parameter TEMPLATE tidak didefinisikan pada objek LEGEND, maka kata
kunci [legend] pada file template MapServer akan diganti dengan path ke file
legenda dalam bentuk gambar. Berikut contoh isi file template MapServer pada
kondisi ini:
Legenda
Pada contoh di atas, baris tempat kata kunci [legend] akan diganti dengan path
ke file gambar hasil pemrosesan MapServer, sehingga (misalnya) menjadi
berbentuk:
Daftar tag pada file template legenda akan dijelaskan di bawah ini:
1.
[leg_header_html]... [/leg_header_html]
Tag ini digunakan sebagai header legenda.
2.[leg_footer_html]...[/leg_footer_html]
-
7/23/2019 Web-GIS Dengan MapServer - Bagian 1
27/29
Web-GIS dengan MapServer
2012 Beni K. [27]
Tag ini digunakan sebagai footer legenda.
3.[leg_group_htmlparameter]... [/leg_group_html]
Tag ini digunakan untuk mengelompokkan layer jika layer perlu
dikelompokkan. Pengelompokan layer menjadi group-group tertentu
dimungkinkan dengan menggunakan parameter GROUP dari objek LAYER.
Parameter yang dapat digunakan pada tag ini (opsional):
opt_flag = bit mask
Parameter ini akan mengontrol tampilan group, dan berlaku untuk
seluruh layer pada group yang sama. Jika minimal ada satu layer yang
memenuhi syarat, maka group akan muncul pada legenda.
Bit maskdinyatakan dalam biner 4 bit (misalnya 1111, atau 1001, 1011
dan seterusnya). Jika keempat bit dinyatakan denga ABCD (dari kiri ke
kanan), maka:
A 0/1: tampil/sembunyikan group bertipe ANNOTATION
B 0/1: tampil/sembunyikan group bertipe QUERY
C 0/1: tampil/sembunyikan group dengan status OFF
D 0/1: tampil/sembunyikan group diluar skala
Contoh: jika opt_flagdiberi nilai 12 (atau biner 1100), maka grup bertipe
ANNOTATION dan QUERY akan disembunyikan, sedangkan group
dengan status OFF atau di luar skala, akan ditampilkan.
Di dalam tag leg_group_html ini, kita dapat menggunaki beberapa kata
kunci berikut:o [leg_layer_name]
Kata kunci ini akan diganti dengan nama layer.
o [leg_icon width = height = ]
Kata kunci ini dapat kita gunakan untuk menentukan lebar dan
tinggi gambar yang mewakili kelas pertama layer yang
bersangkutan. Nilai lebar dan tinggi bersifat opsional.
o [metadata name = ]
Kata kunci ini akan digantikan oleh nilai metadata nama.
4.[leg_class_htmlparameter]... [/leg_header_html]
Tag ini digunakan untuk menampilkan kelas-kelas layer. Jika tidak
didefinisikan, maka hanya akan muncul nama layer, tanpa gambar yang
mewakili kelas. Parameter tag ini sama dengan parameter leg_group_html,
yakni opt_flag.
-
7/23/2019 Web-GIS Dengan MapServer - Bagian 1
28/29
Web-GIS dengan MapServer
2012 Beni K. [28]
Di dalam tag leg_class_htmlini, kita dapat menggunakan beberapa kata kunci
berikut:
[leg_class_name]
Kata kunci ini akan diganti dengan nama kelas.
[leg_class_title]
Kata kunci ini akan diganti dengan judul kelas. [leg_icon width = height = ]
Kata kunci ini dapat kita gunakan untuk menentukan lebar dan tinggi
gambar yang mewakili kelas pertama layer yang bersangkutan. Nilai lebar
dan tinggi bersifat opsional.
[metadata name = ]
Kata kunci ini akan digantikan oleh nilai metadata nama.
5.[if name =fieldoper=eq|neq|isset|isnull value=nilai] ... [/if]
Tag ini dapat digunakan pada semua tag leg_*_htmluntuk keperluan seleksi
kondisi. Fielddapat diganti dengan kata kunci, operdapat berisi salah satu
dari eq(sama dengan), neq(tidak sama dengan), isset(punya nilai), atau isnull
(tidak punya nilai). Nilai akan diisi oleh sesuatu yang diperbandingkan
dengan kata kunci.
Daftar kata kunci pengganti field bergantung pada konteks tempat tag if
digunakan. Berikut tabel yang daftar kata kunci untuk masing-masing
konteks:
-
7/23/2019 Web-GIS Dengan MapServer - Bagian 1
29/29
Web-GIS dengan MapServer
Contoh-contoh penggunaan:
[if name=layer_type oper=eq value=2].....
[/if]
Contoh sintaks di atas akan menyeleksi apakah layer bertpe POLYGON atau
bukan. Jika tipe layer adalah POLYGON, ma bagian bertanda akan
diproses.