17
Okt
11

[WebGIS 3] – menampilkan Layer Ganda

<< Artikel Sebelumnya: "Mapfile pada MapServer"

 

Menyambung tutorial sebelumnya mengenai “Mapfile pada Mapserver” pada 07 Februari 2011 lalu, berikut akan dibahas mengenai cara menampilkan peta yang terdiri dari lebih dari satu layer.

Pada kenyataannya, jarang sekali suatu peta hanya terdiri dari satu layer saja. Karena informasi geografis yang sesungguhnya adalah gabungan dari beberapa layer sehingga membentuk suatu informasi peta yang lengkap. Bagian ini akan membahas bagaimana caranya menampilkan beberapa layer dalam satu peta.

 

Skema MapFile Untuk Layer Ganda

MAP
...
  LAYER 1
  ...
    CLASS 1
    ...
      STYLE 1
      ...
      END    # AKHIR DEFINISI STYLE
      ...
      LABEL 1
      ...
      END   # AKHIR DEFINISI LABEL
    ...
    END   # AKHIR DEFINISI CLASS
   ...
  END  # AKHIR DEFINISI OBJEK LAYER
  ...
  ...
  LAYER N
  ...
    CLASS N
    ...
      STYLE N
      ...
      END    # AKHIR DEFINISI STYLE
      ...
      LABEL N
      ...
      END   # AKHIR DEFINISI LABEL
    ...
    END   # AKHIR DEFINISI CLASS
   ...
  END  # AKHIR DEFINISI OBJEK LAYER
...
END   # AKHIR MAP

 

Contoh MapFile

#
# Komentar untuk mapfile
#
MAP		# tanda awal mapfile
   NAME Indonesia		# nama mapfile
   IMAGETYPE JPEG		# bisa juga GIF, PNG
   EXTENT  73.33 -10.28 160.20 5.80	# B1,L1,B2,L2
   STATUS ON
   UNITS DD
   SIZE 600 400			# ukuran image yang dihasilkan
   SHAPEPATH  "../data/asean/"	# bisa juga “<drive>:\ms4w\......\data\asean\”
   IMAGECOLOR 108 166 205
   #
   # Mulai pendefinisian layer
   #
   LAYER				# tanda awal definisi layer
    NAME Asean			# nama layer
    DATA Asean-oceania		# nama shapefile “Acean-oceania.shp”
    STATUS ON			# layer dimunculkan
    TYPE POLYGON			# untuk tipe poligon
    CLASS
	NAME "Asean"
    	STYLE
      	  COLOR 255 255 255		# warna latar putih
	  OUTLINECOLOR 108 166 205	# warna batas luar poligon
	END	# akhir style
    END	#akhir class
   END		#akhir definisi layer

   LAYER
     NAME "Propinsi"
     DATA "Propinsi.shp"
     STATUS ON
     TYPE POLYGON
     STATUS ON
     CLASS
        NAME “Propinsi”
        STYLE
          COLOR 119 136 153	#warna abu-abu
          OUTLINECOLOR 0 0 0
        END
     END
   END
END 	# akhir mapfile

Simpanlah mapfile tersebut dengan nama kab_kota.map di direktori C:\ms4w\apps\latih\map\

 

Menampilkan Layer Ganda

Buka kembali file c:\ms4w\apps\latih\htdocs\peta.html dan ubahlah menjadi seperti berikut ini:

<html>
<head>
  <title> Belajar Mapserver</title>
</head>
<body>
  <h1> Contoh-contoh Belajar Mapserver</h1>
  <h3>Menu</h3>
  <ul>
    <li><a href="contoh_01.html">Menampilkan Peta Sederhana</a></li>
    <li><a href="contoh_02.html">Menampilkan Layer Ganda</a></li>
  </ul>
</body>
</html>

 

Kemudian, buatlah file html baru dengan isinya sebagai berikut:

<img border="1" src="http://localhost:1111/cgi-bin/mapserv.exe?map=c:\ms4w\apps\latih\map\kab_kota.map&mode=map&layers=all">

Simpan file tersebut dengan nama contoh_02.html dan simpan di c:\ms4w\apps\latih\htdocs\. Pada browser bukalah alamat http://localhost:1111/latih/peta.html sehingga akan muncul tampilan seperti berikut ini.

 

image

 

Ketika link “Menampilkan Layer Ganda” di klik, akan muncul tampilan peta dengan 2 layer seperti gambar berikut ini.

 

image

 

Pada peta tersebut terlihat ada 2 peta yang ditampilkan, yaitu peta “Asean-oceania.shp” yang berlatar putih dan peta “Propinsi.shp” yang berlatar abu-abu.

Mudah kan?

Jika ingin menambahkan layer lagi, tinggal tambah saja blok LAYER … END pada mapfile sesuai kebutuhan. Selamat mencoba… Winking smile

07
Feb
11

[WebGIS 2] – MapFile pada MapServer

<< Artikel sebelumnya “Pengenalan WebGIS dan MapServer”

Untuk memanfaatkan fungsionalitasnya yang paling sederhana sekalipun, MapServer akan selalu membutuhkan minimal sebuah mapfile. Mapfile merupakan file teks biasa yang berekstensi *.map yang akan mendeskripsikan apa dan dimana sumber datanya, dan bagaimana cara data tersebut harus ditampilkan. Oleh karena itu, penting bagi kita untuk memahami struktur mapfile ini terlebih dahulu sebelum memasuki bahasan selanjutnya.

 

Tentang MapFile

Sebelum benar-benar menggunakan MapServer untuk pertama kalinya, pengguna harus membuat file teks yang berekstensi *.map. File yang disebut mapfile tersebut memiliki ketentuan-ketentuan penulisan sebagai berikut:

  • Teks pada mapfile tidak bersifat case-sensitive.
  • Penulisan string yang berisi campuran beberapa karakter non-alphanumerik (selain karakter huruf dan angka) atau keywords milik MapServer harus diapit oleh tanda petik ganda ( “ ).
  • Setiap mapfile dapat digunakan untuk mendefinisikan (secara default) maksimal 50 layer peta.
  • Penulisan path lokasi file bisa dilakukan secara absolut maupun relatif.
  • Susunan atau isi mapfile memiliki hierarki struktur dengan objek “MAP” sebagai “root”. Sementara objek-objek lainnya berada di bawah objek ini.
  • Pengguna dapat menambahkan baris-baris komentar di dalam mapfile dengan cara mengawali komentar tersebut dengan karakter pagar (#).

 

Contoh Pembuatan MapFile Sederhana

Sebagai contoh pertama kita, berikut ini adalah isi mapfile sederhana yang dapat digunakan untuk menampilkan sebuah layer peta di dalam program aplikasi browser internet. Namun sebelum itu silahkan download file data.zip yang ada di alamat http://www.4shared.com/file/cPDkWoIK/data.html, kemudian ekstrak ke direktori C:\ms4w\apps\latih\ sehingga pada direktori tersebut terdapat direktori “data”.

Silahkan Anda tulis isi mapfile berikut ini pada program editor teks sederhana seperti Notepad, kemudian simpan di direktori C:\ms4w\apps\latih\map\ dengan nama file asean.map:

#
# Komentar untuk mapfile
#
MAP        # tanda awal mapfile
   NAME Indonesia        # nama mapfile
   IMAGETYPE JPEG        # bisa juga GIF, PNG
   EXTENT  73.33 -10.28 160.20 5.80    # B1,L1,B2,L2
   STATUS ON
   UNITS DD
   SIZE 600 400            # ukuran image yang dihasilkan
   SHAPEPATH  “../data/asean/”    # bisa juga “<drive>:\ms4w\……\data\asean\”
   IMAGECOLOR 108 166 205    

   #
   # Mulai pendefinisian layer
   #
   LAYER                # tanda awal definisi layer
      NAME Asean            # nama layer
      DATA Asean-oceania        # nama shapefile “Acean-oceania.shp”
      STATUS ON            # layer dimunculkan
      TYPE POLYGON            # untuk tipe poligon
      CLASS
         NAME “Asean”
         STYLE
            COLOR 255 255 255        # warna latar putih
            OUTLINECOLOR 108 166 205    # warna batas luar poligon
         END    # akhir style
      END    #akhir class
   END        #akhir definisi layer
END     # akhir mapfile

 

Keterangan (sesuai urutan baris):

  • MapFile tersebut memiliki objek MAP yang bernama “Indonesia”
  • File sementara yang dihasilkan oleh MapServer nantinya berupa file JPEG (bisa juga berupa GIF maupun PNG).
  • Jangkauan batas koordinat peta adalah (73.33,-10.28); (160.20,5.80). Nilai-nilai tersebut diambil dari (sebagian) cakupan peta aslinya.
  • Semua layer dimunculkan (STATUS ON).
  • Satuan koordinat peta dalam derajat (DD). Digunakan untuk menentukan scalebar dan komputasi lainnya yang terkait dengan koordinat & skala.
  • Ukuran (resolusi) gambar yang dihasilkan adalah 600×400 pixel.
  • Data spasial yang digunakan berlokasi di “../data/asean” (relatif terhadap folder dimana mapfile berada).
  • Warna latar pada peta adalah warna biru muda (RGB: 108 166 205). Untuk memudahkan dalam memilih warna, Anda bisa menggunakan tool ColorPic yang dapat di download di internet.
  • Pada peta “Indonesia” tersebut, terdapat layer yang bernama “Asean”.
  • Nama shapefile yang digunakan untuk layer “Asean” tersebut adalah “Asean-oceania.shp”.
  • Layer tersebut statusnya dimunculkan (STATUS ON).
  • Di dalam layer “Asean” terdapat unsur-unsur spasial yang bertipe poligon dengan nama “Asean” juga.
  • Kelas “Asean” akan disajikan dengan warna latar putih (RGB: 255 255 255) dengan garis tepi warna biru muda yang sama dengan warna latar peta.

 

Objek-objek di dalam MapFile

Pada contoh sederhana di bagian sebelumnya, kita lihat bahwa secara garis besar mapfile terdiri dari 5 bagian: Map, Layer, Class, Label, dan Style. Kita akan bahas 5 bagian tersebut satu-per-satu.

 

Map

Objek ini mendefinisikan objek master milik mapfile, yang isinya adalah parameter-parameter global untuk peta yang akan ditampilkan.

#
# BARIS KOMENTAR UNTUK MAPFILE YANG BERSANGKUTAN
#
MAP
...
...
END # AKHIR MAP
 

Layer

Objek ini paling sering digunakan untuk mendefinisikan layer-layer yang kemudian membentuk peta. Urutan penempatan layer di peta adalah sesuai dengan urutan penulisannya. Artinya, layer yang paling dulu dituliskan akan ditempatkan di bagian paling bawah dari peta.

#
# BARIS KOMENTAR UNTUK MAPFILE YANG BERSANGKUTAN
#
MAP
...
  LAYER
  ...
  END # AKHIR DEFINISI OBJEK LAYER
...
END # AKHIR MAP

 

Class

Objek ini digunakan untuk mendefinisikan kelas tematik untuk suatu layer. Jadi bisa dikatakan, setiap layer pasti memiliki paling tidak satu kelas. Ketika layer memiliki lebih dari satu kelas, maka kelas-kelas tersebut dibedakan oleh nilai-nilai yang terkait beserta ekspresi yang digunakan untuk mengevaluasinya. Mengenai ekspresi akan dibahas di bagian selanjutnya.

#
# BARIS KOMENTAR UNTUK MAPFILE YANG BERSANGKUTAN
#
MAP
...
  LAYER
  ...
     CLASS
     ...
     END # AKHIR DEFINISI CLASS
  ...
  END # AKHIR DEFINISI OBJEK LAYER
...
END # AKHIR MAP

 

Label

Objek ini digunakan untuk mendefinisikan anotasi suatu unsur dalam peta. Selain itu, label juga dapat dijadikan sebagai simbol.

#
# BARIS KOMENTAR UNTUK MAPFILE YANG BERSANGKUTAN
#
MAP
...
  LAYER
  ...
     CLASS
     ...
       LABEL
       ...
       END # AKHIR DEFINISI LABEL
     ...
     END # AKHIR DEFINISI CLASS
  ...
  END # AKHIR DEFINISI OBJEK LAYER
...
END # AKHIR MAP

 

Style

Objek ini digunakan untuk menentukan parameter-parameter simbol yang dipakai. Dengan adanya objek ini, setiap kelas dapat memiliki simbol dengan tipe, ukuran, dan warna tersendiri.

#
# BARIS KOMENTAR UNTUK MAPFILE YANG BERSANGKUTAN
#
MAP
...
  LAYER
  ...
     CLASS
     ...
       STYLE
       ...
       END # AKHIR DEFINISI STYLE
       LABEL
       ...
       END # AKHIR DEFINISI LABEL
     ...
     END # AKHIR DEFINISI CLASS
  ...
  END # AKHIR DEFINISI OBJEK LAYER
...
END # AKHIR MAP

 

 

Menampilkan MapFile

Untuk menampilkan peta pertama kita, silahkan buka melalui browser dengan perintah:

http://localhost:1111/cgi-bin/mapserv.exe?map=<drive>:\ms4w\apps\latih\map\asean.map&¿ mode=map&layers=all

gambar_3_contoh_tampilan_peta_asean

Atau, untuk lebih mudahnya kita buat suatu file html yang isinya adalah sebagai berikut:

 

<html>
<head>
<title> Belajar Mapserver</title>
</head>
<body>
  <h1> Contoh-contoh Belajar Mapserver</h1>
  <h3>Menu</h3>
  <ul>
    <li><a href="contoh_01.html">Menampilkan Peta Sederhana</a></li>
  </ul>
</body>
</html>

 

Simpanlah dengan nama file peta.html di direktori C:\ms4w\apps\latih\htdocs\

Selanjutnya, buatlah file html baru yang isinya adalah sebagai berikut:

 

<img border="1" src="http://localhost:1111/cgi-bin/mapserv.exe?map=c:\ms4w\apps\latih\map\asean.map&mode=map&layers=all">

 

Simpanlah dengan nama file contoh_01.html dan simpan di C:\ms4w\apps\latih\htdocs\. Pada browser bukalah alamat http://localhost:1111/latih/peta.html sehingga akan muncul tampilan seperti berikut ini.

gambar_4_tampilan_peta_html

Ketika link yang ada pada halaman tsb di klik, akan muncul tampilan peta seperti pada gambar sebelumnya.  Smile

Oke… selamat… sampai tahap ini Anda sudah berhasil menampilkan peta di browser… itu sudah disebut dengan “WebGIS” loh… tapi masih amat-sangat-sederhana-sekali… Winking smileWinking smileWinking smile

 

Tulisan selanjutnya akan membahas bagaimana menampilkan layer ganda… staytuned… (harusnya ga lama sih) Winking smile

05
Feb
11

[webgis 1] – Pengenalan WebGIS dan MapServer

intro

Sudah lama ga update blog… ga tau dapat inspirasi darimana… pokoknya pengen nulis tentang “pemrograman dasar WebGIS menggunakan Mapserver for Windows dengan framework ka-Map!”. Semua bahannya berasal dari modul yang saya buat, hasil kompilasi dari beberapa sumber serta pengalaman waktu membuat Sigtatrawil dan Peta SilogKPU. Secara garis besar, referensi yang saya gunakan adalah sebagai berikut:

  • Blog, http://dennycharter.wordpress.com
  • Ka-Map Wiki, Official Website, http://ka-map.ominiverdi.org, 2008
  • Prahasta, Eddy, "Membangun Aplikasi Web-based GIS dengan MapServer", 2007, Informatika Bandung
  • UMN MapServer, Official Website, http://mapserver.gis.umn.edu, 2008
  • Wikimapia, http://wikimapia.org

Saya lupa bagian mana & ngambil dari mana-nya… pokoknya itulah sumbernya… Open-mouthed smile

Sebelum memulai, tentunya harus ada pengenalan dulu ya… tak kenal maka tak sayang… begitu kata pepatah… walaupun bagian pengenalan ini sebenarnya bisa didapat dengan mudah via mbah google… tapi ya sudah lah… saya masukkan saja agar terstruktur…

 

Pengenalan

Sistem Informasi Geografis (SIG) hingga saat ini merupakan sistem yang sangat menarik. Sistem yang (cenderung) selalu dibuat untuk interaktif ini dapat mengintegrasikan data spasial (peta vektor dan citra digital) dan atribut (tabel sistem basisdata) penting lainnya. Konsekuensi integrasi ini, sistem informasi tersebut memiliki fungsionalitas-fungsionalitas yang teradopsi dari sistem-sistem perangkat lunak di mana data-data tersebut berasal.

 

WebGIS

Secara umum, cara kerja aplikasi SIG yang berjalan pada sistem komputer desktop dan standalone adalah relatif sederhana. Ketika aplikasi dijalankan dan memunculkan user-interface, setiap pengguna dapat berinteraksi secara langsung dengan program aplikasi tersebut. Interaksi yang intens ini dapat berlangsung selama pengguna melakukan proses-proses masukan data, konversi format/data, query, analisis, dan akhirnya pementukan layout (kartografis) peta dan atau pembuatan laporan.

Hampir semua langkah ini dilakukan secara interaktif, dan pengguna secara langsung berhubungan dengan perangkat SIG yang bersangkutan. Jika perlu koneksi dengan basisdata, pengguna tinggal meng-install salah satu perangkat lunak DBMS yang dapat didukung oleh sistem komputer yang bersangkutan. Semua resource yang dibutuhkan terdapat pada sistem komputer tersebut dan hanya bisa diakses oleh satu pengguna saja dalam satu waktu, sehingga untuk menjalankan fungsi-fungsinya, semua perangkat pendukungnya harus sudah terpasang pada sistem komputer yang bersangkutan. Inilah yang menjadi keterbatasan SIG standalone.

 

gambar_1_contoh_tampilan_webgis

Contoh tampilan WebGIS

 

Lain halnya dengan aplikasi-aplikasi yang dibuat dengan berbasis web (internet maupun intranet), sistem informasi dapat diakses secara bersamaan oleh beberapa pengguna sekaligus. Selain itu, sistem juga tidak terikat dengan sistem operasi tertentu. “Berbasis web” berarti bahwa sistem diakses melalui browser. Sehingga, otomatis dapat diakses oleh sistem operasi apa saja (Windows, Linux, MacOS, dll). Hal ini tentu saja menjadi nilai tambah tersendiri.

 

MapServer

MapServer merupakan salah satu lingkungan pengembangan perangkat lunak open-source yang dapat digunakan untuk mengembangan aplikasi-aplikasi berbasis internet yang melibatkan data spasial (peta digital). Pada awalnya, MapServer dikembangkan oleh beberapa personel dari Universitas Minnesota (UMN), di Amerika Serikat, yang pada saat itu tengah bekerja-sama di proyek ForNet dengan NASA sebagai penyandang dana. Proyek ForNet ini menghasilkan beberapa tools utama (MapServer dan ImageView) yang dapat diaplikasikan ke berbagai tipe permasalahan yang terkait dengan data spasial pada saat itu.

Karena kedua produknya sangat bermanfaat, “proyek MapServer” ini dilanjutkan sebagai bagian dari proyek “TerraSIP” yang merupakan proyek kerja sama (yang juga disponsori NASA) antara UMN dengan konsorium land management interests. Hingga pada akhir tahun 2005, melalui surat online dan terbuka, diumumkan bahwa telah terbentuk MapServer foundation. Yayasan yang independen dan non-profit ini dibentuk oleh para anggota komunitas MapServer dengan tujuan untuk:

  1. Memenuhi kebutuhan dan mendukung komunitas web-mapping yang open-source
  2. Memperluas komunitas pengguna MapServer
  3. Menyediakan supportive framework untuk pengembangan perangkat lunak geospasial yang terbuka dan kolaboratif.

MapServer for Windows (MS4W) adalah suatu paket perangkat lunak yang sangat memudahkan para pengguna di dalam menginstalasi MapServer pada platform sistem operasi Microsoft Windows. Tujuan utama pembuatan paket ini adalah untuk memudahkan semua pengguna, secepatnya terhindar dari segala detil yang rumit di dalam mempersiapkan lingkungan kerja yang diperlukan oleh MapServer di lingkungan Microsoft Windows. Selain itu, paket ini juga merupakan suatu cara yang sangat baik untuk memaketkan dan kemudian mendistribusikan aplikasi-aplikasi MapServer kepada pihak manapun.

Paket dasar MS4W terdiri dari beberapa komponen sebagai berikut:

  • Webserver Apache
  • PHP
  • MapServer CGI
  • PHP/Mapscript
  • Program utiliti (pustaka) GDAL & OGR
  • Program utiliti MapServer (shp2img, legend, scalebar, sortshp, sym2img, shptree, dan tile4ms)
  • Ekstensi OGR/PHP
  • OWTChart

 

Untuk sistem operasi Linux, bisa menggunakan FGS Linux Installer yang sudah teruji pada platform berikut:

  • Fedora Core 2
  • Debian Sarge
  • Debian Etch
  • Gentoo
  • Centos 4
  • Centos 5
  • Ubuntu

Untuk selanjutnya saya akan menggunakan MS4W dalam membangun sistem informasinya. Porting ke Linux-nya ga susah koq, cuma beda ketika instalasinya saja… Winking smile

 

Instalasi MS4W

Baca terlebih dahulu instruksi berikut ini sebelum memulai instalasi.

  1. Download paket MS4W di website http://www.maptools.org/ms4w/index.phtml?page=downloads.html . Sampai saat ini sudah sampai versi 3.0, tapi pada tulisan ini masih menggunakan versi 2.2.7
  2. Untuk menginstalasi, ekstrak file ms4w_2.2.7.zip menggunakan salah satu program kompresi (contoh 7zip, WinZip, WinRAR) ke root drive (misal C:\, D:\). Jika sukses, Anda akan mempunyai satu direktori baru dengan nama “ms4w” di root drive yang anda pilih (misal C:\ms4w).
    INGAT: harus diekstrak ke root drive, jangan ke dalam folder lain!
  3. Edit file C:\ms4w\Apache\conf\httpd.conf menggunakan editor teks (misal: notepad++). Carilah baris yang memuat pernyataan “Listen 80” (baris 46). Kemudian ganti menjadi “Listen 1111”. Hal ini dilakukan agar apache milik ms4w berjalan pada port yang berbeda dengan apache pada umumnya (port 80), sehingga tidak akan menyebabkan konflik jika ada 2 apache yang berjalan pada satu mesin. Jika sekiranya hanya apache milik ms4w saja yang ada, langkah ini abaikan saja.
  4. Jalankan web server Apache milik MS4W melalui file C:\ms4w\apache-install.bat (di command line atau dengan men double-klik itu). File ini menginstal Apache sebagai Windows service (disebut "’web server’ Apache") sehingga Apache akan otomatis dijalankan setiap Windows Anda di restart. Ketika dieksekusi akan muncul dengan pesan berikut:

    gambar_2_cmd_webserver_install

    Artinya Apache itu sedang menjalankan dan di-install sebagai sebuah service.

  5. Catatan untuk pengguna Windows 95,98,ME:

    Anda tidak akan bisa menginstal Apache sebagai sebuah service, sehingga sebagai gantinya Anda harus menjalankan Apache secara manual dengan cara meng-klik di C:\ms4w\Apache\bin\httpd.exe. Satu jendela DOS kosong akan membuka, yang berarti Apache sedang berjalan. Untuk menghentikan Apache anda cukup menutup jendela DOS kosong tersebut.

    Catatan khusus untuk Microsoft Windows Vista:

    Untuk menjalankan file apache-install.bat, Anda harus melakukan hal berikut:

    · Di Windows Explorer, pergi ke lokasi file cmd.exe (C:/Windows/system32)

    · Klik kanan cmd.exe dan pilih “Run as Administrator”

    · Arahkan ke direktori ms4w Anda dalam prompt window dan jalankan apache-install.bat

     

  6. Untuk menguji apakah Apache sedang berjalan dengan baik, buka browser dan ketikan URL berikut:
  7. http://localhost:1111/

    Jika tidak ada pesan kesalahan pada browser, itu artinya Anda sudah berhasil menginstalasi MS4W.

  8. Untuk mempersiapkan latihan kita, marilah kita buat folder untuk menyimpan file-file yang akan kita buat nantinya. Langkah-langkahnya adalah sebagai berikut:
    a. Buatlah direktori “latih” di C:\ms4w\apps\
  9. b. Buatlah direktori “htdocs”, “data” dan “map” di C:\ms4w\apps\latih\

    c. Buatlah file teks baru yang isinya sebagai berikut:

    Alias /latih "/ms4w/apps/latih/htdocs/"

    <Directory "/ms4w/apps/latih/htdocs/">

    AllowOverride None

    Options Indexes FollowSymLinks Multiviews

    Order allow,deny

    Allow from all

    </Directory>

    d. Simpanlah dengan nama file httpd_latih.conf dan simpan di direktori C:\ms4w\httpd.d\

    e. Restart apache dengan cara menjalankan file C:\ms4w\apache-restart.bat

 

Sampai langkah ini kita masih belum ngapa-ngapain… itu cuma persiapan saja… tunggu tulisan selanjutnya… Open-mouthed smile Open-mouthed smile Open-mouthed smile

05
Feb
11

Instalasi redmine 0.8.7 di FreeBSD

Sekedar berbagi pengalaman saja, berikut ini langkah-langkah instalasi redmine di sistem operasi FreeBSD yang sudah berhasil saya lakukan. Memang sudah ada petunjuk instalasinya di http://www.redmine.org, tetapi berdasarkan pengalaman saya semua itu tidak sesuai “rencana” seperti yang tertulis di website redmine.org tersebut. Perlu usaha googling lagi untuk bisa memecahkan beberapa masalah yang timbul.

Berikut langkah-langkah ideal yang sudah saya lakukan di beberapa mesin FreeBSD (mungkin untuk kasus yg lain bisa saja berbeda :p )
login sebagai root terlebih dahulu, kemudian lakukan langkah berikut ini:

cd /usr/ports/devel/ruby-gems/
make install
cd /usr/local/bin
gem install rails –include-dependencies

kalau koneksi internet menggunakan proxy (misal: proksi.punyaku.com:8080), maka baris terakhir perlu ditambahkan sbb:

gem install rails –include-dependencies -p http://proksi.punyaku.com:8080

Download redmine 0.8.7 di redmine.org, kemudian ekstrak ke folder tertentu (misal: /data/, sehingga akan terbentuk /data/redmine-0.8.7/)

Buat database kosong (misalnya: redmine) dan grant user khusus untuk database ‘redmine’ tsb:

Untuk MySQL:

create database redmine character set utf8;
create user ‘redmine’@'localhost’ identified by ‘my_password’;
grant all privileges on redmine.* to ‘redmine’@'localhost’;

Salin file /data/redmine-0.8.7/config/database.yml.example menjadi /data/redmine-0.8.7/config/database.yml dan edit sbb untuk lingkungan “production”.

Untuk MySQL :

production:
adapter: mysql
database: redmine
host: localhost
username: redmine
password: my_password

Masuk ke folder /data/redmine-0.8.7/, kemudian jalankan perintah ini ( asumsi rake ada di /usr/local/bin/ ) :

/usr/local/bin/rake config/initializers/session_store.rb

kalau keluar pesan error sbb:

rake aborted!
no such file to load — iconv

jalankan perintah ini dulu:

cd /usr/ports/converters/ruby-iconv
make clean && make install

*pastikan ports tree mesin Anda up-to-date ( http://www.bsdguides.org/guides/freebsd/beginners/portsnap.php )

kemudian ulangi perintah

/usr/local/bin/rake config/initializers/session_store.rb

Selanjutnya jalankan perintah ini:

/usr/local/bin/rake db:migrate RAILS_ENV=”production”

chmod -R 755 files log tmp public/plugin_assets

(buat foldernya klo emang ga ada)

Setelah itu jalankan webservernya sbb:

/usr/local/bin/ruby script/server webrick -e production

Jika tidak ada masalah, Anda akan bisa membuka alamat http://ip.add.ress.nya:3000/ di browser.

Selamat mencoba.

referensi:
- http://www.redmine.org/wiki/redmine/RedmineInstall
- http://jasonnoble.org/2008/09/installing-ruby-on-rails-in-freebsd.html
- http://dhiku.wordpress.com/2007/10/23/installing-redmine-di-windows/
- http://www.redmine.org/boards/2/topics/9752
- http://www.redmine.org/news/30
- http://www.redmine.org/boards/2/topics/2008

27
Mar
09

Jubler untuk mengedit subtitle film

Jubler adalah subtitle editor berbasis java yang sangat mudah digunakan. Saya menggunakannya untuk “ngepasin” timing teks pada film-film koleksi saya yang terkadang tidak sinkron dengan dialog di filmnya. Format file dan encoding-nya juga banyak yang sudah didukung, sehingga memudahkan kita untuk menyimpan subtitle kita ke format lainnya yang kita inginkan.

format_jubler encoding_jubler

Cara penggunaannya sangatlah sederhana. Sebagai contoh kasus, saya punya koleksi BBC – Live in Cold Bold episode 2 yang timing teksnya terlalu cepat muncul, jadinya bikin “kagok” nontonnya… :p Pada kasus saya, teks muncul kira-kira 1 detik lebih cepat dari suaranya.

Langkah-langkah yang saya lakukan adalah sebagai berikut:

  1. Buka file subtitle-nya (untuk kasus saya formatnya *.srt).
    jubler_1
  2. Berhubung kasusnya hanya timing teks yang telalu cepat, maka yang perlu dilakukan adalah “menggeser” waktu muncul teks tersebut sebanyak 1 detik. Tapi perlu diperhatikan bahwa yang harus digeser adalah timing semua teks, oleh karena itu pertama-tama kita harus mem-blok semua subtitle sbb:
    jubler_2
  3. Kemudian, buka menu Tools | Shift time. Pada bagian “Shift Subtitles” tambahkan 1 detik dan klik OK.
    jubler_3
  4. Simpanlah, maka akan muncul dialog yang menanyakan apakah subtitle yang sudah diedit akan disimpan ke dalam format tertentu. Klik OK untuk menyimpannya.
    jubler_4

Gampang kan?

Untuk subtitle yang timingnya ngaco ditengah-tengah film, caranya sama saja. Tetapi kita harus mem-blok pada timing tertentu, dan tentu saja kita harus tahu dulu pada menit/detik keberapa ngaconya… :D

19
Mar
09

membuat grafik chart di php menggunakan google chart api

Sebelumnya saya sudah posting tulisan mengenai cara membuat chart menggunakan PHPlot pada php melalui artikel “Membuat grafik chart di php menggunakan PHPlot”, sekarang kita coba bermain-main chart di php lagi menggunakan Google Chart API.

Cara penggunaannya sangat sederhana dan tidak memerlukan instalasi library tertentu di script php Anda, yang perlu dilakukan hanyalah mengakses alamat http://chart.apis.google.com/chart dengan melewatkan parameter-parameter yang sudah disediakan. Sebagai contoh, mari kita lihat contoh berikut ini:

chart1

Pie chart di atas muncul setelah kita menuliskan URL berikut ini di browser Anda:

http://chart.apis.google.com/chart?cht=p3&chd=t:60,40&chs=250×100&chl=Hello|World

Pada contoh URL di atas, kita melewatkan beberapa parameter ke alamat http://chart.apis.google.com/chart, yaitu: chs, chd, cht dan chl. Untuk penjelasannya kurang lebih sebagai berikut:

  • http://chart.apis.google.com/chart? merupakan lokasi Chart API
  • & memisahkan parameter
  • chs=250x100 merupakan ukuran dari chart (dalam pixel)
  • chd=t:60,40 merupakan data dari chart yang ditampilkan
  • cht=p3 merupakan tipe chart
  • chl=Hello|World merupakan label chart

Untuk penggunaannya kita tinggal memasukkan URL diatas ke dalam tag <img> sebagai berikut:

<img src="http://chart.apis.google.com/chart? 
chs=250x100 
&amp;chd=t:60,40 
&amp;cht=p3 
&amp;chl=Hello|World" 
alt="Sample chart" />

*Pastikan untuk mengganti karakter ampersand (&) menjadi &amp;

 

Perlu diketahui bahwa Google Chart API akan menghasilkan gambar dengan format PNG. Beberapa tipe chart yang bisa dihasilkan adalah line, bar, pie, venn diagram, scatter plot, radar, maps, Google-o-meter dan QR codes. Berikut beberapa contoh chart yang bisa dihasilkan. :)

chart2

 chart3 chart4

 

Untuk ukuran gambarnya, Google Chart API hanya mengijinkan maksimal 300.000 pixel. Itu artinya, hasil perkalian nilai parameter chs tidak boleh melebihi dari angka 300.000. Misalnya angka 1000×300, 300×1000, 600×500, 800×375 dan 375×800 masih diperbolehkan karena tidak melebihi 300.000, tapi nilai 800×600 tidak diperbolehkan karena menghasilkan angka 480.000 pixel.

Untuk manual lengkapnya, silahkan mengunjungi alamat http://code.google.com/apis/chart/. Disana dijelaskan semua parameter yang tersedia untuk menghasilkan tipe chart yang diinginkan.

Satu-satunya kelemahan dari Google Chart API ini adalah harus selalu terhubung ke internet. Untuk sistem yang hanya bisa diakses lokal, sepertinya PHPlot masih jadi pilihan utama. Atau mungkin Anda bisa menggunakan Open Flash Chart biar lebih cantik lagi karena menghasilkan chart berbasis flash. Tunggu saja tulisan berikutnya… ;)

Sedangkan kelebihan Google Chart API (seperti yang sudah disebutkan di bagian awal) adalah kita tidak perlu menginstalasi modul-modul tertentu ke script php/html kita.

Semoga bermanfaat…

14
Mar
09

file .hlp tidak didukung di Vista

Baru tau kalau file-file help lama (.hlp) sudah tidak didukung lagi mulai di Windows Vista (dan Windows Server 2008), jadinya ketika mau buka file-file help dari program lama pasti akan bermasalah. Jadinya mesti donlot dulu deh “updatenya” di http://go.microsoft.com/fwlink/?LinkID=82148 (tentunya harus melewati validasi sistem operasi, apakah ori atau bajakan :D )

Ternyata disana Microsoft juga sudah menyediakan update untuk Windows 7 juga, walaupun sifatnya masih experimental (berhubung Windows 7 juga masih beta).

Untuk lebih jelasnya, bisa kunjungi link berikut ini: http://support.microsoft.com/?kbid=917607

21
Feb
09

Goonerisasai anak ^_^

 

IMG_2693_resize  IMG_2694_resize

14
Feb
09

Menjadikan form “Always On Top” di Delphi

Udah lama ga ngoprek Delphi, jadi agak2 lupa & lama nyambungin otak ke lingkungan IDE Delphi. Banyak juga fitur-fitur standar Delphi yg lupa juga. Apalagi setelah pindah ke Delphi 2007, cukup drastis lah perubahannya (sebelumnya pake Delphi 7).

Sesuai dengan judulnya, kmaren ada kerjaan lama yg mau direvisi dikit. Jadi pengennya form utamanya di set ke “always on top”. Pusing juga cari2 di properties formnya… akhirnya setelah googling sana-sini, ketemu juga caranya. Jadi intinya, kita memanfaatkan fungsi SetWindowPos() yg ada di unit Windows. Sintaks lengkapnya adalah sebagai berikut:

BOOL SetWindowPos(     
    HWND hWnd,
    HWND hWndInsertAfter,
    int X,
    int Y,
    int cx,
    int cy,
    UINT uFlags
);

Keterangan:

  • hWnd: handle dari form
  • hWndInsertAfter: yg akan menentukan form kita itu akan “always on top” atau nggak
  • X, Y: koordinat form
  • cx, cy: ukuran form
  • uFlags: flag yg berhubungan dengan ukuran dan penempatan posisi form.

Sorry ya, lg males translate… jadi untuk detilnya silahkan liat saja di help-nya Delphi… :p

Ya untuk lebih singkatnya, cara pakai fungsi tersebut adalah dengan cara meletakkannya di event OnShow() milik form yg bersangkutan.

SetWindowPos(Self.Handle,
HWND_TOPMOST,
0, 0, 0, 0,
SWP_NOMOVE or SWP_NOSIZE or SWP_SHOWWINDOW);

Hasilnya bisa dicoba sendiri… ;)

02
Jun
08

Lupa Password mysql di Windows?

Pernah ga sih lupa password mysql? Klo cuma menangani 1-2 server sih ga masalah, tapi klo dah banyak terkadang lupa juga tuh sama. Saya pernah loh suatu hari lupa password mysql. Ngeselin banget. Apalagi pas diburu2… wuih bener2 bikin jengkel.

Alhamdulillah ada mister google. Setelah beberapa menit ngubek2 google… akhirnya ketemu juga cara untuk me-restore password mysql yang kelupaan itu (http://www.mydigitallife.info/2006/04/23/reset-the-root-password-of-mysql-server/). Berikut langkah2nya:

  1. Pastikan kita masuk ke Windows semagai Administrator.
  2. Jika mysql sedang berjalan, tentunya harus dihentikan dulu donk.
  3. Sekarang, buatlah file teks biasa yang berisi baris:
  4. SET PASSWORD FOR 'root@localhost' = PASSWORD('PasswordBaru');

    Simpanlah dengan nama file apa saja. Untuk memudahkan, simpan saja di root drive, misalnya C:\mysql-reset.txt

  5. Dengan asumsi mysql diinstal di C:\mysql, jalankan perintah berikut ini di command-prompt:
  6. C:\> C:\mysql\bin\mysql-nt -init-file=C:\mysql-reset.txt
  7. Restart mysql.
  8. Silahkan konek ke mysql dengan menggunakan PasswordBaru.

Saya sudah coba dan berhasil. Silahkan mencoba.




Arsip

Blog Stats

  • 29,183 hits

RSS Tanya Jawab Islam

  • Sebuah galat telah terjadi; umpan tersebut kemungkinan sedang anjlok. Coba lagi nanti.

Ikuti

Get every new post delivered to your Inbox.