php mapscript framework solusi praktis untuk sistem informasi geografis

16
PHP Mapscript Framework Solusi Praktis Untuk Sistem Informasi Geografis Yudhi Kurniawan 1* 1 Fakultas Sains Dan Teknologi, Universitas Ma Chung, Malang * E-mail : [email protected] ABSTRAK Sistem Informasi mempunyai fungsi untuk mengolah data menjadi informasi yang berguna bagi stakeholder yang membutuhkan, informasi yang di sajikan tidak selalu dalam bentuk data tabular melainkan bisa berbentuk data visual seperti grafik, peta, multimedia atau juga yang lainnya. Dalam paper ini akan di kaji lebih dalam tentang metode dan penggunaan framework phpmapscript sebagai salah satu metode yang digunakan untuk membangun Sistem Informasi Geografis berbasis web dengan tujuan merepresentasikan data – data spasial untuk menghasilkan informasi yang berbasis geografis secara rieltime dan akurat serta mudah di akses dimana saja. Key Words : Sistem Informasi, Grafik, Peta, Data Spasial, Framework, PHPMapscript. 1. PENDAHULUAN GIS adalah Sistem Informasi Geografis, yang menggabungkan antara perangkat keras (hardware), Perangkat Lunak (Software), dan data untuk kegiatan input data, penyimpanan data, integrasi data yang dapat di ubah dan dianalisa serta di bagikan serta diatur dan ditampilkan secara geografis (Chang 2008).

Upload: its

Post on 02-Dec-2023

0 views

Category:

Documents


0 download

TRANSCRIPT

PHP Mapscript Framework Solusi

Praktis Untuk

Sistem Informasi Geografis

Yudhi Kurniawan1*

1Fakultas Sains Dan Teknologi, Universitas Ma Chung,

Malang *E-mail : [email protected]

ABSTRAK

Sistem Informasi mempunyai fungsi untuk mengolah data

menjadi informasi yang berguna bagi stakeholder yang

membutuhkan, informasi yang di sajikan tidak selalu dalam

bentuk data tabular melainkan bisa berbentuk data visual

seperti grafik, peta, multimedia atau juga yang lainnya.

Dalam paper ini akan di kaji lebih dalam tentang metode

dan penggunaan framework phpmapscript sebagai salah

satu metode yang digunakan untuk membangun Sistem

Informasi Geografis berbasis web dengan tujuan

merepresentasikan data – data spasial untuk menghasilkan

informasi yang berbasis geografis secara rieltime dan

akurat serta mudah di akses dimana saja. Key Words : Sistem Informasi, Grafik, Peta, Data Spasial,

Framework, PHPMapscript.

1. PENDAHULUAN

GIS adalah Sistem Informasi Geografis, yang

menggabungkan antara perangkat keras (hardware),

Perangkat Lunak (Software), dan data untuk kegiatan

input data, penyimpanan data, integrasi data yang

dapat di ubah dan dianalisa serta di bagikan serta

diatur dan ditampilkan secara geografis (Chang 2008).

Font: Times Size: 9pt

Style: Italic

Dengan tujuan utama adalah ntuk mempermudah

pengambilan keputusan dari identifikasi data yang direkam

dari sebuah lokasi tertentu sesuai dengan kebutuhan yang

sudah didefinisikan.

Dengan GIS user dapat melihat secara luas, memahami dan

menginterprestasikan data dalam berbagi hubungan dan

pola, dalam sebuah visualisasi data berupa peta, laporan

dan juga bisa dilengkapi dengan grafik sebagai bentuk lain

untuk memudahkan pemahaman dan pengambilan

keputusan

.

Gambar 1 : Komponen GIS

2. APLIKASI MAP SERVER

Mapserver merupakan aplikasi freeware dan

opensource yang meungkinkan kita menampilkan data

spasial (peta) dalam platform web (Ruslan 2005).

Aplikasi ini pertama kali dikembangkan oleh

Universitas Minesota, Amerika Serikat untuk proyek

For Net (sebuah proyek untuk sumber daya alam )

yang disponsori oleh NASA (National Aeronautics

and Space Administration). Support NASA dilanjutkan

dan dikembangkan proyek TerraSIP untuk manajemen

data lahan. Saat ini karena sifatnya yang terbuka (open

source), pengembangan mapserver dilakukan oleh

pengembang dari berbagai Negara

Pada bentuk paling dasar, MapServer berupa sebuah

program CGI (Common Gateway Interface). Program

tersebut di eksekusi pada sebuah webserver dengan

konfigurasi peta yang disimpan dalam sebuah file

*.MAP, kemudian kirim dan ditampilkan oleh

webbrowser baik dalam bentuk gambar peta atau

bentuk yang lain.

Gambar 2 : Ilustrasi Aplikasi MapServer Request And View

process

2.1 Fitur MapServer

Ada beberapa fitur utama yang ada dalam

mapserver untuk mendukung fungsi sebagai server

GIS berbasis web antara lain adalah :

Menampilkan data spasial dalam format vector

seperti : Shapefile (ESRI), ArcSDE (ESRI),

PostGis dan berbagai format data vector lain

dengan dukungan penggunaan library OGR.

Menampilkan data spasial dalam format raster

seperti TIFF/GeoTIFF, EPPL7 dan berbagai

format data raster lain dengan menggunakan

library GDAL.

Menggunakan Quadtree dalam indexing data

spasial, sehingga operasi-operasi spasial dapat

dilakukan dengan cepat.

Dapat dikembangkan, dengan tampilan

keluaran yang dapat diatur menggunakan file-

file template.

Dapat melakukan seleksi obyek berdasar nilai,

titik, area, atau berdasar sebuah obyek spesial

tertentu.

Mendukung rendering karakter berupa font

TrueType.

Mendukung penggunaan data raster maupun

vector dengan mode tiled (dibagi – bagi

menjadi sub bagian yang lebih kecil sehingga

proses untuk mengambil data dan

menampilkan dapat dipercepat).

Dapat menggambarkan elemen peta secara

otomatis, skala grafis, peta indeks dan legenda

peta.

Dapat menggambarkan peta tematik yang

dibangun menggunakan ekspresi lojik maupun

ekspresi regular.

Dapat menampilkan label dari objek spasial,

dengan label dapat diatur sedemikian rupa

sehingga tidak saling tumpang tindih.

Konfigurasi dapat diatur secara on the fly

melalui parameter yang ditentukan pada URL.

Dapat menangani beragam sistem proyeksi

dalam jaringan internet.

2.2 Arsitektur MapServer

Secara umum model arsitektur yang digunakan oleh

mapserver dapat di gambarkan sebagai berikut

Gambar 3 : Arsitektur Aplikasi Peta berbasis Web

Pola interaksi yang digunakan antara klien dan server

berdasarkan skenario request dan respon. Web

browser di sisi klien mengirim request ke server web.

Karena server web tidak memiliki kemampuan untuk

memproses data spasial, maka request berkaitan

dengan pemrosesan peta akan dikerjakan oleh

mapserver sesuai dengan register yang diberikan oleh

webserver terkait alokasi task dan resource.

Hasil dari pemrosesan yang sudah dilakukan akan di

replay melalui server web yang dibungkus dalam

sebuah file dalam bentuk HTML atau applet

Gambar 4 : Perbandingan thin and thick client

Mapserver menggunakan pendekatan thin client.

Semua pemrosesan dilakukan di sisi server. Informasi

peta dikirimkan ke web browser di sisi klien dalam

bentuk file gambar (JPG, PNG, GIF atau TIFF).

Kelebihan aplikasi dengan konsep thin client ini

adalah sudah beragamnya aplikasi pendukung dalam

bentuk framework jadi seperti Chameleon atau

cartoweb.

3. KOMPONEN TEKNIS

Komponen yang ada pada sebuah aplikasi GIS

mempunyai fungsi utama untuk membaca dan menulis

data spasial, baik yang tersimpan dalam sebuah

shapefile (*.shp) atau tersimpan ke dalam sebuah

database (Eddy 2006).

Dalam MapServer yang sudah berjalan ada beberapa

Komponen utama yang digunakan secara peneuh untuk

menjalankan Aplikasi GIS untuk menangani data

spasial baik yang tersimpan dalam sebuah flat file atau

juga dalam DBMS yaitu :

1. SHAPELIB

Shapelib merupakan library yang ditulis

menggunakan bahasa pemrograman C yang

digunakan untuk melakukan proses read terhadap

Shapefile (*.shp) yang sudah didefinisikan ESRI

(Environmental System Research Institute).

Format dalam shapefile umum digunakan untuk

menyimpan data vector simple (tanpa topologi)

dengan atribut, shapefile merupakan format data

default yang digunakan dalam GIS.

2. GDAL.OGR

GDAL (Geographic Data Abstraction Library),

merupakan library yang berfungsi sebagai

penerjemah untuk berbagi format data raster, dan

sangat dimungkinkan untuk semua abstraksi dari

semua data format yang didukung, sehingga

beragam format data yang ada akan menghasilkan

satu format baku yang dapat digunakan untuk

pengembang dalam menampilkan bentuk/format

peta yang sesuai semisal akses data untuk yang

direpresentasikan dalam . gif, .tif, .img, .adf, .hdr

dst

3. LIBPNG/LIBJPG

Setelah data dipastikan ditulis dalam

bentuk/format yang standard yaitu .jpg atau. Png

maka komponen salanjutnya yang tidak kalah

penting adalah LIBPNG/JPG yang berfungsi untuk

menampilkan peta dalam layar dengan format

.JPG atau .PNG sehingga attribute peta bisa tampil

sesuai dengan topologi peta yang sudah di

gunakan.

4. GD/PROJECTION

Library ini digunakan sebagai media untuk

identifikasi jenis peta yang ditampilkan, biasanya

peta akan ditampilkan per layer sesuai dengan

penamaan layer masing – masing. Fungsi ini

digunakan untuk menggambar obyek geografis

yang ada seperti garis, polygon, atau bentuk

geometris lainnya.

Selain itu fungsi ini digunakna sebagai fungsi

untuk memproyeksikan peta menentukan

bagaimana objek-objek di permukaan bumi (yang

sebenarnya tidak datar) dipindahkan atau

diproyeksikan pada permukaan peta yaitu di

sebuah bidang datar, ilustrasi sebagai berikut 1

Gambar 5 : Contoh Proyeksi Peta

4. PHP/MAPSCRIPT FRAMEWORK Php/Mapscript, atau sering disebut Mapscript saja,

adalah sebuah modul yang digunakan untuk membuat

fungsi-fungsi dan class-class MapServer agar dapat

dijalankan di PHP3/PHP4.

1 Gambar peta diambil dari situs

http://www.progonos.com/furuti/MapProj/Dither/ProjCyl/projCyl.html

Secara garis besar proses pengolahan yang ditangani

oleh mapscript adalah sebagai berikut

Gambar 6 : Proses MapScript pada Web Server

Proses diawali dengan request dari client ke server.

Web Server akan menjalankan fungsi fungsi yang ada

di library Mapscript.

Data spatial yang akan digunakan berupa data bertipe

shapefile, yang merupakan file spatial standar dari

ESRI. Dengan perantara MapFile, sebagai pengatur

setting dari data yang akan ditampilkan, MapScript

akan membaca data spatial dishapefile ini,

memprosesnya sesuai permintaan dari client, kemudian

menyimpannya kedalam bentuk file gambar (GIF,JPG,

atau PNG).

File gambar ini kemudian akan diload ke client dalam

bentuk object Image HTML. Karena bentuk peta yang

ditampilkan merupakan file gambar maka kerja client

tidak berat, terutama jika dibandingkan dengan cara

lain yang menggunakan activeX.

4.1 Map File

Mapscript memerlukan sebuah file text yang berisi

setting layer-layer peta yang akan ditampilkan.

File ini disebut Mapfile dengan extensi .map

Dalam file in berisikan beberapa konfigurasi stats

dan dinamis tergantung dari konsep mapserver

yang dibangun, beberapa parameter konfigurasi

adalah sebagai berikut :

# File: peta.map

MAP

NAME "WilayahPesisir"

STATUS ON

EXTENT 481906.6 9873957.1 570651.9

10010114.4

IMAGETYPE PNG

SIZE 800 600

SHAPEPATH "../shp"

IMAGECOLOR 255 255 255

UNITS dd

WEB

IMAGEPATH "/tmp/ms_tmp/"

IMAGEURL "/ms_tmp/"

END

REFERENCE

COLOR -1 -1 -1

EXTENT 92.5 -19.5 142.5 14.0

IMAGE "id_index.jpg"

OUTLINECOLOR 255 0 0

SIZE 120 80

STATUS ON

END

LEGEND

IMAGECOLOR 255 255 255

KEYSIZE 18 12

KEYSPACING 5 5

LABEL

SIZE MEDIUM

TYPE BITMAP

BUFFER 0

COLOR 0 0 89

FORCE FALSE

MINDISTANCE -1

MINFEATURESIZE -1

OFFSET 0 0

PARTIALS TRUE

END

POSITION LL

STATUS ON

TEMPLATE "legend.html"

END

QUERYMAP

COLOR 0 0 255

SIZE -1 -1

STATUS OFF

STYLE HILITE

END

SCALEBAR

STYLE 1

UNITS kilometers

END

LAYER

NAME "Kecamatan"

DATA "6kec_wil_pesisir.shp"

STATUS DEFAULT

TYPE POLYGON

METADATA

"DESCRIPTION" "Kecamatan"

"RESULT_FIELDS" "FID;KECAMATAN"

"DESC_FIELDS" "Kecamatan"

END

TEMPLATE "prop_query.html"

TOLERANCE 0

TOLERANCEUNITS PIXELS

CLASS

Name "Batas Kecamatan"

COLOR 225 200 100

OUTLINECOLOR 0 0 0

END

END

END

Tabel 1 : Struktur Parameter File .Map

Struktur file .Map yang digunakan berisi

konfigurasi dari peta yang akan di tampilkan

isinya memuat beberapa bagian penting yang

menjadi kelas utama untuk diproses, bagian –

bagian ini disebut dengan parameter yang

nantinya akan di proses oleh map script obyek

untuk penanganan obyek yang akan disajikan

dalam sebuah website.

NAME

STATUS

EXTENT

IMAGETYPE

SIZE

SHAPEPATH

IMAGECOLOR

UNITS

WEB

REFERENCE

LEGEND

QUERYMAP

SCALEBAR

LAYER

CLASS

4.2 Map Script Obyek

Modul MapScript disusun menggunakan

pendekatan pemrograman berorientasi obyek

(Object Oriented Programming) atau biasa

disingkat OOP yang sering menggunakan kelas

(class) yang akan bekerja dengan berbagai kelas

yang ada disamping fungsi dan variable khusus

juga.

Mapscript digunakan sebagai script/code program

untuk menjalankan fungsi utama dari aplikasi GIS

sehingga peta dan attributenya bisa ditampilkan

pada website.

Berikut deskripsi singkat kelas kelas pada

mapscript :

a. ClassObj

fungsi yang digunakan untuk mengatur kelas-

kelas pada sebuah obyek(layer).

b. ColorObj

Fungsi yang digunakan untuk mengatur warna

dasar dari sebuah layer dengan konsep RGB.

c. ErrorObj

Fungsi yang digunakan untuk menajemen

kesalahan (Error). Map server akan secara

otomatis menginisiasi ErrorObj ketika terjadi

kesalahan

d. GridObj

fungsi yang digunakan untuk mengatur

tampilan dari bentuk standard menjadi bentu

grid

e. ImageObj

Fungsi yang digunakan untuk menggambarkan

peta pada sebuah file semisal JPG, GIF, PNG

f. LabelCacheObj

Fungsi yang digunakan untuk membersihkan

memori yang dialokasikan sebagai cache label

dari peta yang ditampilkan

g. LabelObj

Fungsi yang digunakan untuk pengaturan

tampak label dari masing – masing layer yang

aktif dalam viewer.

h. LayerObj

fungsi yang digunakan untuk mengatur

operasi-operasi yang berhubungan dengan

pembuatan layer, penggambaran, dan query

data dari layer yang aktif.

i. LegendObj

fungsi yang digunakan untuk menampilkan

legend (table yang berisi tentang layer – layer

yang digunakan didalam peta).

Gambar 6 : Contoh Penulisan LegendObj

Dalam Script

j. LineObj

Fungsi yang digunakan untuk manampilkan

layer peta yang bertipe garis.

k. MapObj

fungsi yang digunakan untuk menampilkan

karakterristik peta yang akan ditampilkan

(fungsi utama untuk menampilkan peta).

Gambar 7 : Contoh Penulisan Fungsi MapObj

Dalam Script

l. OutputFormatObj

Fungsi yang digunakan untuk menentukan

format peta yang ditampilkan dalam jendela

viewer.

m. PointObj

Fungsi yang digunakan untuk manampilkan

layer peta yang bertipe titik

n. ProjectionObj

Fungsi yang digunakan untuk mengatur

penggunaan sistem proyeksi pada peta.

o. RectObj

Fungsi yang digunakan untuk manampilkan

layer peta yang bertipe kotak.

p. ReferenceMapObj

Fungsi yang digunakan untuk mengatur

karakteristik peta yang ditapilkan di indeks.

q. ResultCacheMemberObj

Fungsi yang digunakan untuk mengatur objek-

objek dari hasil query data attribut peta.

r. ScalebarObj

Fungsi yang digunakan untuk mengatur

karakteristik skala grafis ketika peta

ditampilkan

Gambar 8 : Contoh Penulisan Fungsi

ScalebarObj Dalam Script

s. ShapefileObj

Kelas yang digunakan untuk bekerja dengan

data peta dalam format shapefile (*.shp)

t. ShapeObj

Kelas yang digunakan untuk bekerja dengan

data peta lebih detail terutama untuk

menangani tipe dari peta misal titik, garis,

polygon.

u. StyleObj

Kelas yang digunakan untuk bekerja dengan

data peta lebih detail terutama untuk

menangani penggunaan obyek style pada peta.

v. SymbolObj

Kelas yang digunakan untuk bekerja dengan

data peta lebih detail terutama untuk

menangani penggunaan obyek simbol pada

peta.

w. WebObj

fungsi yang digunakan untuk mengatur opsi –

opsi yang berhubungan dengan web misalnya

logging aktivitas

5. KESIMPULAN PHP Map Script Framework adalah salah satu dari

sekian banyak framework yang dapat digunakan untuk

mengembangkan aplikasi GIS, dukungan sifat dari

framework ini yaitu opensource menjadi nilai tambah

ketika developer sistem bekerja karena banyaknya

dokumentasi atau forum yang dapat digunakan sebagai

referensi.

Selain itu juga ada beberapa kelebihan dasar yang

menjadi framework ini sangat penting antara lain

1. Membuat gambar peta menjadi lebih dinamis.

2. Mendukung beberapa bahasa pemrograman web

yaitu PHP, Perl, Phyton, dan Java.

REFERENCES

Kang-Tsung Chang, 2008. Introduction to Geographic

Information Systems. Fourth edition. McGraw-Hill

International Edition.

Nuryadin, Ruslan. 2005. Panduan MapServer. Bandung:

Informatika..

Prahasta, Eddy. 2006. Membangun Aplikasi Web-based

GIS Dengan MapSever. Bandung: Informatika.

University Consortium for Geographic Information

Science, 2006. Geographic Information Science and

Technology Body of Knowledge. Available at:

http://www.aag.org/bok/ AAGKnowledge_Flyer.pdf

(Akses February 2010).