Kamis, 21 Mei 2009

2. Pengenalan Mapserver

Posted in by Unknown | Edit
2.1 Pengenalan Mapserver

MapServer merupakan aplikasi freeware dan open source yang memungkinkan kita menampilkan data spasial (peta) di web. Aplikasi ini pertama kali dikembangkan di Universitas Minesotta, Amerika Serikat untuk proyek ForNet (sebuah proyek untuk menajemen sumber daya alam) yang disponsori NASA (Nasional Aeronautics and Space Administration). Dukungan NASA dilanjutkan dengan dikembangkan proyek TerraSIP untuk menajemen data lahan. Saat ini, karena sifatnya yang terbuka (open source), pengembangan MapServer dilakukan oleh pengembang dari berbagai negara

Pengembangan MapServer menggunakan berbagai aplikasi open source atau freeware seperti Shapelib untuk baca/tulis format data Shapefile, FreeType untuk merender karakter, GDAL/OGR untuk baca/tulis berbagai format data vektor maupun raster, dan Proj.4 untuk menangani beragam proyeksi peta.

Pada bentuk paling dasar, , MapServer berupa sebuah program CGI (Common Gateway Interface). Program tersebut akan dieksekusi di web server dan berdasarkan beberapa parameter tertentu (terutama konfigurasi dalam bentuk file *.MAP) akan menghasilkan data yang kemudian akan dikirim ke web browser, baik dalam bentuk gambar peta atau bentuk lain.

MapServer mempunyai fitur-fitur berikut :

  • Menampilkan data spasial dalam format vektor seperti : Shapefile (ESRI), ArcSDE (ESRI), PostGIS dan berbagai format data vektor lain dengan menggunakan 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 (customizable), dengan tampilan keluaran yang dapat diatur menggunakan file-file template
  • Dapat melakukan seleksi objek berdasar nilai, berdasar titik, area, atau berdasar sebuah objek spasial tertentu
  • Mendukung rendering karakter berupa font TrueType
  • Mendukung penggunaan data raster maupun vektor yang di-tiled (dibagi-bagi menjadi sub bagian yang lebih kecil sehingga proses untuk mengambil dan menampilkan gambar dapat dipercepat)
  • Dapat menggambarkan elemen peta secara otomatis , skala grafis, peta indeks dan legenda peta
  • Dapat menggambarkan peta tematik yang dibangun menggunakan ekspresi logik maupun ekspresi reguler
  • 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 system proyeksi secara on the fly

Saat ini, selain dapat mengakses MapServer sebagai program CGI, kita dapat mengakses MspServer sebagai modul MapScript, melalui berbagai bahasa skrip : PHP, Perl, Phyton atau Java. Akses fungsi-fungsi MapServer melalui skrip akan ebih memudahkan pengembangan aplikasi. Pengembang dapat memilih bahasa yang paling familiar.

2.2 Arsitektur Mapserver


Arsitektur Mapserver

Gb.1 Gambar arsitektur dasar dari aplikasi MapServer

Aplikasi mapserver sederhana terdiri dari:

  • Map File - Konfigurasi tfile teks yang terstruktur untuk sebuah aplikasi mapserver. Mendefiniskan bentuk area peta, memberitahukan dimana data peta dan konfigurasi dan juga output gambar peta, dan temporary folder peta. Juga mendefinisikan informasi layer termasuk layer peta dan data atributnya, termasuk juga sumber data (data source), proyeksi dan penyimbolan (symbology). Ekstensi filenya harus berupa .map atau kalo tidak mapserver tidak akan bisa mengenalinya.

  • Geographic Data - MapServer can utilize many geographic data source types. The default format is the ESRI shapefile. Many other data formats can be supported, this is discussed further below in Adding data to your site.

  • HTML Pages - the interface between the user and MapServer . They normally sit in Web root. In it’s simplest form, MapServer can be called to place a static map image on a html page. To make the map interactive, the image is placed in an html form on a page.

    CGI programs are ‘stateless’, every request they get is new and they don’t remember anything about the last time that they were hit by your application. For this reason, every time your application sends a request to MapServer, it needs to pass context information (what layers are on, where you are on the map, application mode, etc.) in hidden form variables or URL variables.

    A simple MapServer CGI application may include two html pages:

    • Initialization File - uses a form with hidden variables to send an initial query to the http server and MapServer. This form could be placed on another page or be replaced by passing the initialization information as variables in a URL.

    • Template File - controls how the maps and legends output by MapServer will appear in the browser. By referencing MapServer CGI variables in the template html, you allow MapServer to populate them with values related to the current state of your application (e.g. map image name, reference image name, map extent, etc.) as it creates the html page for the browser to read. The template also determines how the user can interact with the MapServer application (browse, zoom, pan, query).

      See also

      Templating

  • MapServer CGI - The binary or executable file that receives requests and returns images, data, etc. It sits in the cgi-bin or scripts directory of the http server. The Web server user must have execute rights for the directory that it sits in, and for security reasons, it should not be in the web root. By default, this program is called mapserv

  • HTTP Server - serves up the html pages when hit by the user’s browser. You need a working HTTP (Web) server, such as Apache or Microsoft Internet Information Server, on the machine on which you are installing MapServer.


Arsitektur aplikasi pemetaan di web dibagi menjadi dua pendekatan sebagai berikut :
  • Pendekatan Thin Client
    Pendekatan ini menfokuskan diri pada sisi server. Hampir semua proses dan analisis data dilakukan berdasarkan request di sisi server. Data hasil pemrosesan kemudian dikirimkan ke klien dalam format standard HTML, yang di dalamnya terdapat file gambar dalam format standard (misalnya GIF, PNG atau JPG) sehingga dapat dilihat menggunakan sembarang web browser. Kelemahan utama pendekatan ini menyangkut keterbatasan opsi interaksi dengan user yan kurang fleksibel.

  • Pendekatan Thick Client
    Pada pendekatan ini, pemrosesan data dilakuakn di sisi klien menggunakan beberapa teknologi seperti kontrol ActiveX atau applet. Kontrol ActiveX atau applet akan dijalankan di klien untuk memungkinkan web browser dengan format data yang tidak dapat ditangani oleh web browser dengan kemampuan standard. Dengan adanya pemrosesan di klien, maka transfer data antara klien dengan web server akan berkurang

MapServer menggunakan pendekatan thin client. Semua pemrosesan dilakukan di sisi sever. Informasi peta dikirinkan ke web browser di sisi klien dalam bentuk file gambar (JPG, PNG, GIF atau TIFF).

File dokumentasi MapServer lebih lengkap bisa diunduh http://www.mapserver.org/documentation.html

Sumber:
  • http://student.eepis-its.edu/~syafur/IES/Syafur/buku_ta/Arifinbuku.doc
  • Dokumentasi MapServer: http://www.mapserver.org/documentation.html

4 Comments


  1. bayu says:

    iraha atuh kang, ngajarkeun na

    3 Juni 2009 pukul 02.38

  2. Anonim

    Maaf mas.. numpang tanya.. saya sudah mencoba menggunakan mapserver chameleon untuk menampilkan data peta. Pertanyaan saya, bagaimana cara menampilkan peta tematik yang datanya menggunakan MySQL?? ada tutorialnya??

    6 Desember 2009 pukul 19.07

  3. Sabri Andrian says:

    susah juga ya map servernya, tapi perlu di coba lah
    Kunjungi website saya ya https://sabri.mahasiswa.atmaluhur.ac.id
    Website kampus saya
    http://www.atmaluhur.ac.id

    6 November 2018 pukul 00.48

  4. Unknown says:

    untuk pertama kali memang susah untuk di pahami contoh dari mapserver ini. Di tunggu updatean lebih dalam map server serta cara pembuatan/ pengembangannya
    kunjungi juga website saya https://felix.mahasiswa.atmaluhur.ac.id/
    + website kampus saya http://atmaluhur.ac.id/
    terima kasih.

    23 November 2018 pukul 19.28

Leave a Comment