ISO/TC 211 - DRAFT INTERNATIONAL STANDARD ISO/DIS 19128 (Geographic information - Web map server interface)
Diambil dari http://www.isotc211.org/
Diambil dari http://www.isotc211.org/
MapFish merupakan framework yang fleksibel dan lengkap untuk membangun aplikasi web-mapping. Menekankan pada produktivitas dan pengembangan kualitas tinggi.
MapFish mendasarkan pada kerangka web Python Pylons. MapFish menggunakan Pylons dengan spesifik fungsionalitas pada geospasial. Sebagai contoh MapFish menyediakan tools spesifik untuk membuat web services yang memperbolehkan query dan editing objek geografis.
MapFish juga menyediakan JavaScript toolbox RIA-oriented, environment testing JavaScript, dan tools untuk mengkompresi kode JavaScript. Toolbox JavaScript tersusun dari ExtJS, OpenLayers , GeoExt JavaScript toolkits, dan komponen spesifik untuk berinteraksi dengan web services MapFish.
MapFish kompatibel dengan standar Open Geospatial Consortium. Hal ini dicapai melalui OpenLayers atau GeoExt mendukung beberapa norma OGC, seperti WMS, WFS, WMC, KML, GML dll.
MapFish adalah open source, dan didistribusikan di bawah GPLv3 lisensi.
Installasi
Instalasi sistem dependensi
Pada Unix, Python versi 2.5 atau 2.6 dan file-file pengembangan Python harus diinstal.
Catatan
Pada sistem berbasis Debian dapat digunakan apt-get install python2.5 python2.5-dev untuk menginstal Python 2,5 dan file perkembangannya PostGIS. GEOS dan Postgres / PostGIS juga diperlukan: sudo apt-get install postgresql-3.0.0 libgeos
Di Windows Python 2,5 , dan Python untuk ekstensi Windows harus diinstal.
Untuk Windows, kita mengasumsikan di sisa halaman ini, Python 2,5 diinstal di C: Python25 \.
Untuk menginstal MapFish, download skrip instalasi, dan jalankan dari terminal.
Pada sistem Unix:
python go-mapfish-framework-1.2.py --no-site-packages env
Pada sistem Windows:
C: \> C:\Python25\python.exe go-mapfish-framework-1.2.py --no-site-packages env
Perintah ini akan menciptakan lingkungan Python virtual bernama env dan menginstal MapFish dan dependensinya ke dalamnya.
Catatan
Yang disebut skrip go sebetulnya menginstal dua Python eggs untuk MapFish:
- yang mapfish egg untuk kerangka server
- yang mapfish.plugin.client egg untuk toolbox Javascript
Sekarang mengaktifkan lingkungan virtual.
Pada sistem Unix:
env $ source env/bin/activate
Pada sistem Windows:
C: \> env \ Scripts \ activate.bat
Prompt perintah Anda sekarang harus terlihat seperti ini:
(Env) $
Untuk memeriksa MapFish yang diinstal dengan benar, masukkan:
(Env) $ paster create --list-templates
dan periksa bahwa output adalah:
Available templates:
basic_package: A basic setuptools-enabled package
mapfish: MapFish application template
mapfish_client: MapFish client plugin template
paste_deploy: A web application deployed through paste.deploy
pylons: Pylons application template
pylons_minimal: Pylons minimal application template
MapFish terinstal, selamat!
Apabila kita mempunyai Layer yang bertipe point, maka kita bisa menambahkan/mengupdate point tersebut dalam database PostgreSQL.
Misal kita mempunyai tabel map_point yang mempunyai field2 sebagai berikut:
TABLE map_point
(
id character varying(254),
nama character varying(254),
x double precision,
y double precision,
the_geom geometry,
)
dimana x dan y adalah koordinat titik tersebut dan the_geom adalah koordinat dalam format PostGIS.
Kita bisa menambah/mengupdate titik tersebut tanpa menyentuh field the_geom dengan membuat Trigger.
Pertama kita membuat function yang bernama map_point_change(), seperti dibawah ini :
CREATE OR REPLACE FUNCTION map_point_change()
RETURNS trigger AS
$BODY$DECLARE
the_geom_insert text;
the_geom_update text;
BEGIN
IF (TG_OP = ‘INSERT’) THEN
the_geom_insert = ST_GeomFromText(’POINT(’|| new.x || ‘ ‘ || new.y ||’)', 4326);
UPDATE map_aset SET the_geom = the_geom_insert WHERE gid=new.gid;
ELSIF (TG_OP = ‘UPDATE’) THEN
IF new.x <> old.x OR new.y <> old.y THEN
the_geom_update = ST_GeomFromText(’POINT(’|| new.x || ‘ ‘ || new.y ||’)', 4326);
UPDATE map_aset SET the_geom = the_geom_update WHERE gid=new.gid;
END IF;
RETURN NEW;
END IF;
RETURN NEW;
END;
$BODY$
LANGUAGE ‘plpgsql’ VOLATILE
COST 100;
ALTER FUNCTION map_point_change() OWNER TO postgres;
Lalu buat Trigger seperti dibawah ini :
CREATE TRIGGER map_point_change
AFTER INSERT OR UPDATE
ON map_point FOR EACH ROW
EXECUTE PROCEDURE map_point_change();
Template MapServer yang satu sudah tidak di develop lagi oleh pembuatnya.
Situsnya pun kini menghilang, padahal template yang satu ini sangat bagus untuk para user yang menginginkan untuk bisa mendigit, mengedit dan menghapus data secara live di web dengan menggunakan data dari database PostgreSQL maupun Oracle.
Langkah untuk menginstall bisa dibaca di folder docs nya FIST, berikut step stepnya :
1. Installing MS4W
* Unzip ms4w di c:\
* Double click file di c:\ms4w\apache-install.bat file.
2. Konfigurasi MS4W untukFIST
* Buka file c:\ms4w\Apache\conf\httpd.conf dan tambah file di bawah ini :
# set the FIST document root
Alias /fist/ “/ms4w/apps/fist/htdocs/”
<Directory “/ms4w/apps/fist/htdocs/”>
AllowOverride None
Options none
Order allow,deny
Allow from all
</Directory>
* PDFlib tidak dicompile dengan PHP di versi MS4W ini, jadi tugas di bawah diperlukan :
download file php_pdf.dll (php-5.2.1) dari http://pecl4win.php.net/ext.php/php_pdf.dll
tempatkan file php_pdf.dll di direktori C:\ms4w\Apache\php\ext\
* Buka file c:\ms4w\Apache\cgi-bin\php.ini dan uncomment/tambah baris berikut :
extension=php_gd2.dll
extension=php_pdf.dll
extension=php_pgsql.dll
* Buka file c:\ms4w\Apache\cgi-bin\php.ini dan modifikasi baris berikut :
display_errors=Off
log_errors=On
* Double klik file c:\ms4w\apache-restart.bat.
3. Install FIST
* Unzip fist ke c:\ms4w\apps\
* Buat direktori c:\temp\ , dimana error log FIST dibuat.
* Buka FIST-Admin di browser dan login (username dan password adalah ‘default’). Langkah ini mengkonfigurasi dan mengecek installasi:
http://localhost/fist/fist-Admin/
* Buka contoh sites FIST di browser :
http://localhost/fist/fistMain.php?site=example_world_win
http://localhost/fist/fistMain.php?site=example_bc_win
4. Settingan config untuk localhost, ini aku tulis karena aku sering kesulitan saat menginstall di localhost pada windows vista
user-config
<!DOCTYPE user-config SYSTEM “c:/ms4w/apps/fist/htdocs//user-config.dtd”>
map-service-config
<!DOCTYPE map-service-config SYSTEM “c:/ms4w/apps/fist/htdocs/map-service-config.dtd”>
<map-service-config>
<web-options>
<url-root>http://localhost/fist/</url-root>
<system-root>c:/ms4w/apps/fist/</system-root>
</web-options>
layer-config
<!DOCTYPE layer-config SYSTEM “d:/ms4w/apps/fist/htdocs/layer-config.dtd”>
site-config
<!DOCTYPE site-config SYSTEM “d:/ms4w/apps/fist/htdocs/site-config.dtd”>
fist/htdocs/.session-config-template
<!DOCTYPE session-config SYSTEM “http://localhost/fist//session-config.dtd”>
Untuk download fist-mapping, silahkan klik link berikut :
Indosat baru2 ini mengeluarkan paket unlimited dari Indosat 3.5 Broadband, layanan telekomunikasi bergerak nirkabel dengan teknologi 3.5G (GSM/ UMTS/ HSDPA).
Dengan paket Unlimited yang baru di launch pada September 2008 terdiri dari empat paket, dengan paket yang termurah yaitu paket ISAT Eco seharga Rp. 110.000 perbulan.
Cukup hanya dengan daftar paket tersebut di galeri Indosat, dengan membawa foto copy KTP dan KK dan membeli modem HSPDA Huawei e220 seharga Rp. 1 Juta. Lalu tunggu masa aktif dari kartu Indosat kira2 tiga hari. Pengguna sudah bisa memanfaatkan paket tersebut.
Setting Indosat 3.5G Unlimited
APN : indosat3g
Access Number : *99#
User : indosat
Password : indosat
DNS Untuk biar bisa buka indowebster, thanks to device-gadgets.com (pilih 2 saja dari pilihan di bawah) :
NAKULA.INDOSAT.COM (202.152.161.227)
NS2.INDOSAT.COM (202.152.165.36)
NS3.INDOSAT.COM (202.152.165.39)
NS4.INDOSAT.COM (202.93.40.174)
SADEWA.INDOSAT.COM (202.152.161.229)
Dengan menggunakan Speed test dengan posisi berada di Yogyakarta, hasil yang didapat :
Server Jakarta
Server New York
Pada penggunaan template pmapper, default tool pada aplikasi pmapper adalah Zoom In. Untuk megubah default tool nya kita bisa liat di script pada file pm_cjs.js di folder javascript/pm_cjs.js
Pada script function pm_init()
function pm_init(){
pmToolbar_init();pmMenu_init();
pmSlider_init();
window.onresize=function(){pmLayout_init();
};
pmLayout_init();
var imgTmpMap=_$(”mapImg”);
imgTmpMap.onload=resetMapImgParams;
imgTmpMap.onmouseover=startUp;
pmTabs_init(’#tocTabs’,'tab_toc’);
pmToc_init();
if(navigator.userAgent.match(/Opera|Konqueror/i)){_$(”zoombox”).className=’zoombox_nontransp’;};
createZSlider(’zslider’);
setSearchOptions();
domouseclick(’select’);
setTbTDButton(’auto_identify’);
pmIndicator_init();
$(document).keypress(function(event){kp();});
$(’#mapimgLayer’).mouseout(function(){setTimeout(’mapImgMouseOut()’,800);});
$(’#refMapImg’).mouseover(function(){startUpRef();});
};
Pada script domouseclick(’select’); maksudnya adalah pada saat kita meng klik di peta maka fungsi select yang dijalankan
Sedangkan setTbTDButton(’auto_identify’); meksudnya adalah default tool pada saat aplikasi pmapper dijalankan yaitu auto_identify
Apa sih Spesifikasi Persyaratan Software, kata Pak Romi Satria Wahono sih itu bagian dari Requirements engineering.
Requirements engineering adalah fase terdepan dari proses rekayasa perangkat lunak (software engineering), dimana software requirements (kebutuhan) dari user (pengguna) dan customer (pelanggan) dikumpulkan, dipahami dan ditetapkan. Para pakar software engineering sepakat bahwa requirements engineering adalah suatu pekerjaan yang sangat penting. Fakta membuktikan bahwa kebanyakan kegagalan pengembangan software disebabkan karena adaya ketidakkonsistenan (inconsistent), ketidaklengkapan (incomplete), maupun ketidakbenaran (incorrect) dari requirements specification (spesifikasi kebutuhan).
Karena disuruh bos untuk bikin SRS, ya udah akhirnya aku buat srs dengan menggunakan template dari
http://www.processimpact.com/process_assets/srs_template.doc
dengan contoh SRS dari
http://www.processimpact.com/process_assets/sample_requirements_documents.zip
Berikut sample dari dokumen tersebut
Compile PHP 5.x dengan Apache2 pada SuSE Professional 9.1/9.2
SUSE menggunakan konfigurasi Apache yang disimpan di /etc/apache2/. Ketika Anda configure PHP 5.X dengan:
$ ./configure –with-apxs2=/usr/sbin/apxs2
$ make
semua berjalan lancar; tetapi ketika Anda menjalankan :
$ make install
Konfigurasi file layout Apache yang tidak biasa membingungkan bagian install-sapi dari Makefile dan proses berhenti dengan error :
apxs:Error: Config file /etc/apache2/httpd2-prefork.conf not found.
make: *** [install-sapi] Error 1
Pada titik ini, hanya library PHP SAPI telah di copy pada tempatnya; file lainnya (seperti script PEAR, PHP-CLI, dll) belum diinstall. Tetapi jangan khawatir! Anda dapat menyelesaikan permasalahan dengan :
1. Edit Makefile dan ubah baris dibawah ini, hapus kata “install-sapi”:
install_targets = install-sapi install-cli install-pear install-build install-headers install-programs
menjadi
install_targets = install-cli install-pear install-build install-headers install-programs
2. Coba lagi dengan perintah make install :
$ make install
3. Ketik instruksi pada konfigurasi Apache. Sebagai root, buat file baru /etc/apache2/conf.d/php5.conf yang berisi file dibawah ini :
AddType application/x-httpd-php5 .php3 .php
Action application/x-httpd-php5 /cgi-bin/php
[root@bayoe ~]# apt-get install xserver-xorg xorg ssh
[root@bayoe ~]# dpkg-reconfigure xserver-xorg
[root@bayoe ~]# apt-get install xfce4
[root@bayoe ~]# startx
[root@bayoe ~]# apt-get install tightvncserver
[root@bayoe ~]# vi /root/.vnc/xstartup
#!/bin/sh
xrdb $HOME/.Xresources
xsetroot -solid grey
x-terminal-emulator -geometry 80×24+10+10 -ls -title “$VNCDESKTOP Desktop” &
x-window-manager &
xfwm4 &
xfce4-panel &
[root@bayoe ~]# tightvncserver
Done