SEKILAS QUANTUM GIS Quantum GIS merupakan salah satu perangkat lunak open source yang dapat digunakan untuk pengelolaan data spasial dan pengembangan aplikasi Sistem Informasi Geografik. Quantum GIS dikembangkan di bawah bendera Open Source Geospatial Foundation (OSGeo), dengan sifat pengembangan terbuka, sehingga siapapun yang berkompeten dapat berkontribusi terhadap pengembangan aplikasi ini. Quantum GIS dikembangkan dengan bahasa pemrograman C++ dan bersifat multi platform, dapat dijalankan pada berbagai sistem operasi. Saat ini, versi binary (installer) Quantum GIS tersedia untuk sistem operasi Microsoft Windows, Linux (berbagai varian distro), FreeBSD dan MacOS X. Belakangan bahkan sudah mulai dicoba dijalankan di sistem operasi Android yang banyak digunakan di perangkat mobile (smartphone/tablet). Saat ini versi stabil Quantum GIS adalah 1.8.0, dan sedang dalam tahap pengembangan untuk mencapai versi mayor 2.0. Bahasan mengenai Quantum GIS akan dibagi dalam beberapa bagian berikut: User interface Elemen pembentuk Quantum GIS Fitur dasar dalam pengelolaan data vektor dan raster Konektivitas data spasial dalam DBMS (Database Management System) Penggunaan plugin dalam Quantum GIS
1. User Interface Gambar di bawah ini menampilkan tampilan Quantum GIS, dengan data berbentuk vektor dan raster di dalamnya: Menu & toolbar
Muka peta
Daftar layer
Status bar
1
Pada gambar di atas, dapat kita lihat beberapa bagian penting tampilan Quantum GIS, antara lain: Muka peta Digunakan untuk menampilkan dan editing data peta, baik berupa data vektor maupun raster. Daftar layer Berisi daftar layer yang sekarang sedang terbuka, dan dapat digunakan sebagai salah satu jalan pintas untuk pengelolaan suatu layer peta tertentu. Menu dan toolbar Digunakan untuk menjalankan fitur-fitur dan fungsi-fungsi tertentu dari Quantum GIS. Pada proses pengelolaan dan analisis data peta, kita akan menjalankan berbagai fitur dan fungsionalitas yang disediakan melalui berbagai menu dan toolbar yang tersedia. Susuna toolbar dan menu sendiri bersifat dinamis dalam Quantum GIS. Baik posisi maupun konten bisa diubah. Posisi sebuah toolbar misalnya diubah dengan menggeser-geser toolbar menggunakan mouse, atau sebuah menu bisa berubah kontennya karena adanya sebuah plugin yang terpasang, dan seterusnya. Status bar Digunakan untuk melihat berbagai status dari Quantum GIS (koordinat kursor, sistem proyeksi peta yang sedang digunakan dan sebagainya).
2. Elemen Pembentuk Quantum GIS Saat ini Quantum GIS telah menjadi sebuah aplikasi yang sangat kompleks, dengan berbagai elemen diintegrasikan ke dalamnya. Basis pengembangan Quantum GIS menggunakan Qt (www.qt-project.org), sebuah framework terbuka untuk pengembangan aplikasi dengan bahasa pemrograman C++. Sesuai dengan prinsip modularitas dalam pengembangan software, Quantum GIS juga tidak membuat lagi modul-modul atau library yang sudah ada. Beberapa library open source penting yang digunakan oleh Quantum GIS antara lain: GDAL (http://www.gdal.org/) dan OGR (http://www.gdal.org/ogr/index.html) GDAL digunakan untuk keperluan baca tulis format data raster, sedangkan OGR digunakan untuk keperluan baca tulis format data vektor. GEOS (http://trac.osgeo.org/geos) GEOS (Geometry Engine Open Source) digunakan dalam berbagai keperluan operasi dan analisis spasial, seperti misalnya dalam proses editing data vektor. Proj (http://trac.osgeo.org/proj) Proj merupakan library yang digunakan untuk menangani berbagai sistem koordinat dan proyeksi peta, termasuk dalam hal konversi antar sistem koordinat dan proyeksi peta. SpatialIndex (https://github.com/libspatialindex/libspatialindex) Library ini digunakan untuk pengindeksan data spasial, agar diperoleh performa yang tetap baik ketika menggunakan data dalam volume besar. Library-library di atas sudah terbukti berjalan dengan baik dan digunakan pada berbagai perangkat lunak SIG, termasuk perangkat lunak komersial (seperti GDAL yang juga digunakan oleh ArcGIS, produk dari ESRI, Inc).
3. Fitur Dasar Quantum GIS Dalam Pengelolaan Data Vektor dan Raster Sebagai perangkat lunak Sistem Informasi Geografik, Quantum GIS memiliki kapabilitas untuk 2
menampilkan, mengolah dan menyajikan data. Secara garis besar, Quantum GIS memiliki kemampuan sebagai berikut: a) Membaca dan mengedit data dalam format vektor dan raster, termasuk data atribut Quantum GIS dapat membaca dan mengolah data dalam banyak format, baik dalam bentuk raster maupun vektor. Sebagian diantara format data yang bisa diolah Quantum GIS, didukung oleh library GDAL dan OGR. Beberapa format data vektor yang umum digunakan dan bisa diolah Quantum GIS, antara lain: o Shapefile o MapInfo Table o S-57 o KML o AutoCAD DXF o dll Sedangkan beberapa format data raster yang umum digunakan dan bisa dioleh Quantum GIS, antara lain: o GeoTIFF o ECW o DTED o DEM o JPEG2000 o Arc/Info Grid o dll Fitur editing peta vektor, antara lain split, merge/union, vertex editing, pemindahan/drag posisi objek peta, dan sebagainya. Dalam hal editing data raster, fitur dasar Quantum GIS antara lain bisa digunakan untuk clipping, pembuatan kontur, interpolasi grid dan sebagainya. b) Konversi sistem koordinat dan proyeksi peta Konversi sistem koordinat dan proyeksi peta dapat dilakukan dengan mudah di Quantum GIS, dengan memilih opsi CRS ketika menyimpan data, seperti gambar berikut:
c) Navigasi peta Pada Quantum GIS, navigasi peta bisa dilakukan melalui toolbar khusus, dengan fungsi navigasi yang bisa digunakan antara lain: Perbesar (zoom in) tampilan peta Perkecil (zoom out) tampilan peta Penggeseran (pan) tampilan peta 3
Zoom ke layer yang aktif/terpilih Zoom ke objek yang terseleksi Zoom ke seluruh tampilan peta Zoom previous/next, untuk kembali ke tampilan sebelumnya atau sesudahnya. d) Setting tampilan peta Tampilan peta dapat diatur melalui menu Layer > Properties. Hal-hal yang dapat diatur antara lain: warna dan pola arsiran, warna dan ketebalan garis, bentuk dan ukuran simbol, dan sebagainya. Tampilan setting layer seperti berikut:
e) Digitasi dan editing data peta Quantum GIS juga memiliki toolbar khusus untuk keperluan digitasi dan editing data peta. Fitur editing yang dapat dilakukan dengan fitur dasar Quantum GIS, antara lain: Penambahan objek peta baru Pemindahan objek peta Perubahan bentuk objek peta, dengan melakukan penambahan, pemindahan, pengurangan verteks/node baru Penyalinan (copy & paste) objek peta Pemotongan (clipping) objek peta vektor dan raster Penggabungan (merge/union) objek peta Konversi raster ke vektor dan vektor ke raster dll Tampilan berikut menampilkan contoh editing data vektor dalam Quantum GIS:
4
f) Analisis Spasial Analisis spasial dalam Quantum GIS tidak banyak tersedia sebagai fungsionalitas bawaan. Fiturfitur analisis spasial, baik untuk data vektor maupun raster, lebih banyak disediakan dalam bentuk plugin atau tambahan fitur eksternal (lihat poin 5 di bawah). g) Layout dan Pencetakan Peta Pembuatan layout dan pencetakan peta, dalam Quantum GIS dilakukan melalui modul Print Composer, seperti tampilan berikut:
4. Konektivitas Data Spasial Dalam DBMS Selain data berbentuk file dan/atau folder, Quantum GIS juga mendukung pengelolaan data spasial dalam DBMS (Database Management System). Sampai versi 1.8.0, Quantum GIS secara bawaan mendukung penggunaan data spasial dalam DBMS berikut: PostgreSQL Dukungan Quantum GIS pada DBMS PostgreSQL dan PostGIS extension, sudah ada secara bawaan sejak lama. PostgreSQL, dengan bantuan extension PostGIS, merupakan pilihan yang paling umum dalam pengelolaan data spasial dalam DBMS open source. Fitur pengelolaan data, termasuk analisis spasial yang tersedia dalam PostGIS termasuk lengkap dan mendukung secara penuh spesifikasi DBMS spasial yang dibuat oleh OGC (Open Geospatial Consortium). SQLite SQLite merupakan DBMS yang sangat ringkas, sekaligus paling banyak dipasang di perangkat. Semua perangkat mobile dari Apple dan Google dengan sistem operasi Android, pasti menggunakan SQLite dalam perangkat mereka. Demikian juga browser Firefox dan browser lain berbasis Webkit seperti Safari dan Google Chrome, menggunakan SQLite untuk penyimpanan basis data internal mereka. Belakangan beberapa developer membentuk ekstensi Spatialite, yang memungkinkan penyimpanan dan pengelolaan data spasial dalam SQLite. Dukungan Quantum GIS terhadap penggunaan Spatialite tersedia baik untuk pembacaan maupun pembuatan data baru. Microsoft SQL Server Versi terbaru Quantum GIS sudah mendukung penggunaan data spasial dalam Microsoft SQL 5
Server (versi 2008 ke atas). Penyimpanan dan pengelolaan data dalam DBMS ini lebih fleksibel dibanding penggunaan dan pengelolaan data dalam bentuk file/folder. Sebagai contoh, untuk data dalam volume besar, kita bisa memilih hanya subset tertentu yang mau diedit, sehingga tidak terlalu memberatkan aplikasi. Berikut contoh subset data jalan, dengan cara melakukan filter berdasar koordinat batas (107,-7) sampai (108,6):
5. Penggunaan Plugin Dalam Quantum GIS Salah satu kelebihan Quantum GIS adalah arsitektur softwarenya yang terbuka, sehingga memungkinkan adanya penambahan kapabilitas perangkat lunak melalui penggunaan plugin atau komponen tambahan. Dalam Quantum GIS, terdapat dua pilihan metode dalam pembuatan plugin: Plugin dengan skrip berbahasa Python Plugin berbasis skrip Python lebih mudah dibuat dan didebug, karena hanya berupa baris-baris skrip tanpa perlu melakukan kompilasi program. Kekurangannya terletak pada kecepatan eksekusi. Contoh skrip yang populer berbasis Python antara lain fTools, yang pada banyak model instalasi (misalnya menggunakan Quantum GIS Installer di Windows), sudah menjadi plugin bawaan. Plugin fTools bisa digunakan untuk berbagai keperluan analisis spasial berbasis vektor seperti analisis tetangga terdekat, analisis perpotongan garis, overlay antara dua layer polygon, simplifikasi geometri, pembuatan convex hull, pembuatan polygon Voronoi, dan sebagainya. Selain fTools yang bisasanya merupakan plugin yang disertakan otomatis ketika instalasi Quantum GIS, disediakan juga tool untuk browsing dan instalasi plugin dengan mudah secara online. Berikut contoh daftar plugin berbasis Python yang bisa dipasang secara online:
6
Plugin dalam bentuk shared object, dengan menggunakan bahasa pemrograman C++ Plugin berbasis shared object (DLL dalam terminologi Windows), dapat dibuat dengan bahasa pemrograman C++. Salah satu contoh plugin dalam kategori ini adalah GRASS Plugin, yang memungkinkan kita menjalankan perintah-perintah dalam GRASS melalui Quantum GIS. Sebagai catatan, GRASS atau Geographic Resources Analysis Support System merupakan perangkat lunak open source untuk pengeolahan dan analisis data spasial dengan fitur sangat lengkap, baik untuk data vektor maupun raster. Salah satu yang biasanya menjadi kendala dalam penggunaan GRASS adalah user interfacenya yang bagi sebagian orang dianggap kurang user friendly. Keberadaan plugin GRASS dalam Quantum GIS, diharapkan dapat mengurangi kendala tersebut. Berikut contoh penggunaan fungsi GRASS v.generalize, untuk menggeneralisasi garis menggunakan algoritma Douglas Puecker:
Dengan terbukanya arsitektur Quantum GIS, sehingga semakin banyak plugin yang dibuat, memungkinkan kapabilitas dari Quantum GIS dapat berkembang dengan sangat cepat, sehingga dapat menjadi alternatif bagi perangkat lunak propriatery seperti ArcGIS, MapInfo, dan sebagainya.
7