Stocks are higher in early trading on several positive earnings reports as well as a bounce back after three straight down days in the S&P 500. Yesterday the S&P got down near 1300 before buyers stepped in. That level also coincides with the 20-day moving average for the SPX.

The S&P 500 is poised to close out January with solid gains. Those who follow the "January effect" will note that the Stock Traders Almanac says that as goes January, so goes the year. The implication is that when January shows gains, it bodes well for a positive year in the market.

In earnings news, we are seeing more positive reactions in stocks this morning than negative. Among the gainers are: PFE, BIIB, LLY, TYC, UPS, PCAR, HRS, MAT, and ARMH.

Stocks falling after report earnings include: XOM, AVY, MHP, ADM, and the big loser today - RSH.

In economic news, the Case-Shiller Index showed another 1.3% drop in November from October. The Chicago PMI Index fell to 60.2 from last month's 62.5. And the Consumer Confidence index fell to 61.1 in January from 64.8 last month.

Asian markets were higher overnight, and the euro is higher this morning after speculation over continued progress in Greek debt talks. This one has really been a yo-yo, with lots of ups and downs. There is also talk that European officials have reached some agreement on future bailout funds for the eurozone, but I haven't seen details.

Commodities are higher today. Gold prices are up to $1747, oil prices have topped $100 to $100.50, and copper and silver prices are higher as well.

The 10-year yield continues to languish, still hovering near the 1.83% level. And the VIX is up a touch to 19.55, but hasn't closed above 20 in nine days.

Trading comment: After 3 consecutive down days and a test of the 1300 level yesterday by the S&P 500, I would have expected dip buyers to come in stronger. The SPX has bounced back to 1312 as of now, but already in early trading the gains have faded. We will have to see if buyers come back in later today. Also, the market continues to work off its overbought condition. There are a lot more stocks reacting positively to earnings reports this morning than ones that are selling off. Also, the SPX is on the verge of a golden cross, where the 50-day crosses above the 200-day average. This generally bodes well for further gains in the market.

The market is lower in early trading after closing last week higher for the 4th straight week. Guess how many times the market closed higher for 4 straight weeks in 2011? Zero. So it's the first time in awhile we have seen that streak. The market is also overbought and sentiment has risen to bullish levels in recent weeks. All of this sets the stage for a normal pullback-- possibly.

There isn't that much in the way of market moving news this morning, so the markets are taking their cues from overseas. Asian markets were lower overnight, and Europe is lower this morning. Concerns about Greece's ability to reach a compromise to its debt situation is weighing on Europe, and the euro is also weaker.

Commodities are sliding. Gold prices have eased back to $1725; oil prices are lower near $98.80; and copper and silver prices are down also.

There were a few companies reporting earnings this morning, but nothing too notable. Earnings season continues this week, but many of the biggies have already reported.

All 10 of the S&P sectors are lower so far today. Energy stocks are down the most, while utilities are down the least. Among international ETFs, China (FXI) is down the most in early trading.

The buying in the bond market has been furious since the FOMC meeting, and the 10-year yield continues to drop as a result. The 10-year yield is now below 1.85%, and nearing its lows from mid-December. Last year's lows back in September were 1.70%.

As for the VIX, it is spiking +9% today back above the 20 level. That's right about at the downtrend line that has been in place since late November, so we will have to see if that trendline holds.

Trading comment: We trimmed a few positions last week as the market got overbought, but will look to add back to positions on any further pullback. Usually the normal course of these short-term pullbacks is that the market gets overbought, pulls back a little to relieve that condition, and then rallies back again. If it goes on to make a higher high, the uptrend is in tack. But if the market makes a lower high, it is often a sign that a deeper or longer consolidation is in the works. For now, let's not get ahead of ourselves and see how quickly this dip gets bought. I think a lot of portfolio managers were not positions for the strong January we have seen and remain underinvested.

Costume CSS3 V2

Apa kabar sobat?Kali ini saya mau share blogger template lagi nih.karena lagi banyak permintaan yang mau template yang sedang pakai,dan inilah awal dari blog saya.ok nih template costume css3 v2 dari template sebelumnya costume css3 yang sudah pernah saya share juga.
tapi tema'a saya buat akatsuki deidara pula.template ini sudah banyak diperbaiki dari template sebelumnya karena masih ada kekurangan.beberapa saya ganti efek" css3'a dan tambahan pagenavi melayang serta efek animasi tombol readmore yang mirip dengan blog saya.
-Home page-
 -Post page-




bila sobat mau mengganti gambar'a,sobat tinggal cari kode html dibawah ini..

<li><div class='kotak16animasi'>
<div><a href='http://djogzs.blogspot.com/'><img alt='djogzs' src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGwN3kYHYMZ-Tkg5OxfjlG4pb29o8c4XwaFZl5MeH5ltVQ-dSWInSaL0MmPQXG5S2Wq0yOJRcB8CuAmKXN1d-qfbv-0psR6opjOrT_1tYD43dU_Kc5GiEGFw2cKwyA3hJJIIIkLQbCISkr/s1600/Untitled-1.jpg'/></a></div><div>Welcome ^_^</div>
</div></li>
Keterangan:
pada text yang bewarna merah : alamat link
pada text yang bewarna biru    : Ganti dengan Url gambar kamu  (857 x 303) (ukuran bisa diubah)
pada text yang bewarna ungu   : ganti pesan kamu
#note:kamu akan menemukam kode html yang sama dengan yang diatas,yang pertama untuk gambar depan halaman depan,dan satu lagi halaman posting.jadi inti'a kamu bisa menggunakan 2 gambar yang berbeda untuk halaman depan dan halaman posting.
Untuk menambah link pada menu,buka blogger =>rancagan => klik edit seperti pada gambar,lalu masukan url link dan nama link'a.

Arigatou gozaimasu,ada yang tidak dimengerti,tanyakan saja~



PT. KALTIM METHANOL INDUSTRI
PENERIMAAN CALON KARYAWAN PT. KALTIM METHANOL INDUSTRIE TAHUN 2012 DENGAN POSISI TEANAGA KERJA SEBAGAI BERIKUT :

1.POSISI : SARJANA (S1) JURUSAN TEKNIK KIMIA (KODE : S1 TK)PRIA
2.POSISI : LEGAL , SARJANA (S1) FAKULTAS HUKUM (KODE : S1 HK) PRIA/WANITA

DENGAN KUALIFIKASI MASING-MASING POSISI YANG DIBUTUHKAN :
•PRIA /WANITA
•SEHAT JASMANI & ROHANI
•IPK MIN. 3.00
•MENGUASAI BAHASA INGGRIS
•USIA MAKS. 27 THN PER TANGGAL 1 JUNI 2012
•TIDAK PERNAH TERLIBAT KRIMINALITAS & NARKOBA

SURAT LAMARAN DITUJUKAN KEPADA PIMPINAN PT. KALTIM METHANOL INDUSTRI, DENGAN MELAMPIRKAN
1.FOTO COPY IJAZAH YG TELAH DILEGALISIR
2.FOTO COPY KTP
3.SURAT KETERANGAN KELAKUAN BAIK (SKCK)
4.FOTO 3X4 LTR BELAKANG KUNING 2 LBR, DI BAGIAN BELAKANG FOTO DITULISKAN NAMA DAN KODE LAMARAN
5.FOTO COPY SURAT PENCARI KERJA AK/1 SEBANYAK 3 LBR
6.MENGGUNAKAN MAP SERTA MENGISI FORMULIR YANG TELAH DISEDIAKAN OLEH DISSOSNAKER BERDASARKAN JABATAN DENGN MENCANTUMKAN KODE LAMARAN DI SUDUT KANAN ATAS MAP.

SURAT LAMARAN DISERAHKAN KE :
KANTOR DISSOSNAKER KOTA BONTANG
JL. SENDAWAR NO.21 BONTANG

BATAS WAKTU LAMARAN HINGGA TANGGAL 02 FEBRUARI 2012 SAMPAI JAM 15.00 WITA
DEPOT AIR MINU LOKTUAN

MENCARI TENAGA PENGANTAR AIR MINUM

DENGAN PERSYARATAN :
* PRIA, JUJUR, ULET DAN TEPAT WAKTU

BAGI YANG BERMINAT SEGERA HUBUNGI 08125419743
HINGGA TANGGAL 15 FEBRUARI 2012
PT. SERBA MULIA AUTO

PERUSAHAAN YANG BERGERAK DIBIDANG OTOMOTIF "YAMAHA"
MEMBUTUHKAN TENAGA MARKETING DENGAN SYARAT :
* PENDIDIKAN MIN. SLTA
* MEMPUNYAI KENDARAAN DAN SIM C
* JUJUR DAN MAMPU BEKERJASAMA DENGAN TIM
* PENDAPATAN BISA MENCAPAI 2 JUTAAN

BGI SEPULUH PENDAFTAR PERTAMA AKAN LANGSUNG DITERIMA.

LAMARAN DAPAT DIANTAR LANGSUNG KE ALAMAT PT. SERBA MULIA AUTO YAMAHA
JL. IR.H. JUANDA NO.60/61 TELP. 0548-21046
HINGG TGL. 10 FEBRUARI 2012

Di sini kita akan belajar bagaimana membuat bentuk Rectangle (persegi) dari dua marker yang telah kita buat di google map, menyimpannya dalam database. Kita juga akan belajar bagaimana menampilkan semua daerah-daerah yang telah disimpan menggunakan jquery json, kemudian menampilkan informasi daerah yang telah ditandai menggunakan jendela informasi yang kita buat atau desain sendiri.


Membuat tabel datapeta di database

Berikut adalah struktur tabel datapeta di database MySQL

CREATE TABLE `datapeta` (
`nomor` int(5) NOT NULL auto_increment,
`judul` varchar(100) NOT NULL,
`deskripsi` tinytext NOT NULL,
`lat1` double NOT NULL,
`lng1` double NOT NULL,
`lat2` double NOT NULL,
`lng2` double NOT NULL,
`warna` varchar(10) NOT NULL,
PRIMARY KEY (`nomor`)
 

Meloading Google Maps Javascript API

<script type="text/javascript" 
src="http://maps.google.com/maps/api/js?sensor=false"></script>
 

Menampilkan peta di halaman web


var jakarta = new google.maps.LatLng(-6.237281, 106.332724);
var petaoption = {
zoom: 14,
center: jakarta,
mapTypeId: google.maps.MapTypeId.SATELLITE
};
peta = new google.maps.Map(document.getElementById("petaku"),petaoption);
 
Sebelumnya kita harus membuat objek <div id="petaku"></div> di web kita, yang berfungsi sebagi tempat google map diletakkan.

Mengambil data daerah yang sudah ditandai dari database, dengan format json

Berikut kode PHP untuk mengambil data dari database MySQL dan menampilkannya dalam format JSON
ambildata.php.
<?php
include "koneksi.php";
$akhir = $_GET['akhir'];
if($akhir==1){
$query = "SELECT * FROM datapeta ORDER BY nomor DESC LIMIT 1";
}else{
$query = "SELECT * FROM datapeta";
}
$data = mysql_query($query);

$json = '{"wilayah": {';
$json .= '"petak":[ ';
while($x = mysql_fetch_array($data)){
$json .= '{';
$json .= '"id":"'.$x['nomor'].'",
"judul":"'.htmlspecialchars($x['judul']).'",
"deskripsi":"'.htmlspecialchars($x['deskripsi']).'",
"x1":"'.$x['lat1'].'",
"y1":"'.$x['lng1'].'",
"x2":"'.$x['lat2'].'",
"y2":"'.$x['lng2'].'",
"warna":"'.$x['warna'].'"
},';
}
$json = substr($json,0,strlen($json)-1);
$json .= ']';

$json .= '}}';
echo $json;

?>

{"wilayah":
{"petak":[
{"id":"1",
"judul":"wilayah1",
"deskripsi":"ini adalah wilayah1",
"x1":"-6.23728179931641",
"y1":"106.332725524902",
"x2":"-6.24197483062744",
"y2":"106.340789794922",
"warna":"#FF0000"
},{
"id":"2",
"judul":"wilayah2",
"deskripsi":"Ini adalah wilayah 2",
"x1":"-6.22712850570679",
"y1":"106.345596313477",
"x2":"-6.22038793563843",
"y2":"106.353668212891",
"warna":"#FF0000"
}
]
}
}

Menampilkan di google map data daerah yang diambil dari database

Sekarang setelah kita mendapatkan data dengan format JSON, kita lihat bagaimana mengakses data JSON dan menampilkannya.

function ambildatabase(akhir){
if(akhir=="akhir"){
//url untuk mengambil data paling akhir
//dieksekusi jika barusan menyimpan data
url = "ambildata.php?akhir=1";
}else{
//url untuk mengambil data semuanya
url = "ambildata.php?akhir=0";
}
$.ajax({
url: url,
dataType: 'json',
cache: false,
success: function(msg){
for(i=0;i<msg.wilayah.petak.length;i++){
judulx[i] = msg.wilayah.petak[i].judul;
desx[i] = msg.wilayah.petak[i].deskripsi;
petak = new google.maps.Rectangle({
map: peta,
fillColor: msg.wilayah.petak[i].warna,
fillOpacity: 0.3,
strokeColor: msg.wilayah.petak[i].warna,
strokeWeight: 1
});
var bingkai = new google.maps.LatLngBounds(
new google.maps.LatLng(msg.wilayah.petak[i].x1, msg.wilayah.petak[i].y1),
new google.maps.LatLng(msg.wilayah.petak[i].x2, msg.wilayah.petak[i].y2)
);
petak.setBounds(bingkai);
setinfo(petak,i);
}
}
});
} 
 
 
Dari contoh di atas, untuk mengakses judul dari data JSON yang telah kita buat sebelumnya adalah msg.wilayah.petak[i].judul, untuk mengakses deskripsi adalah msg.wilayah.petak[i].deskripsi

Memberi event listener click pada google map

google.maps.event.addListener(peta,'click',function(event){
kasihtanda(event.latLng);
});
 
function kasihtanda(lokasi){
var gambar_tanda = 'tanda.png';
if(pertama == 0){
tanda1 = new google.maps.Marker({
position: lokasi,
map: peta,
icon: gambar_tanda
});
$("#x1").val(lokasi.lat());
$("#y1").val(lokasi.lng());
pertama = 1;
}else{
tanda2 = new google.maps.Marker({
position: lokasi,
map: peta,
icon: gambar_tanda
});
$("#x2").val(lokasi.lat());
$("#y2").val(lokasi.lng());
buat_persegi();
pertama = 0;
}

}

function buat_persegi(){
warnashape = $("#warnaku").val();

//Membuat objek persegi/rectangle
rectangle = new google.maps.Rectangle({
map: peta,
fillColor: warnashape, //Mengatur warna persegi
fillOpacity: 0.3, //Mengatur transaprasi persegi
strokeColor: warnashape, //Mengatur warna border persegi
strokeWeight: 1 //Mengatur ketebalan border
});
var latLngBounds = new google.maps.LatLngBounds(
tanda1.getPosition(),
tanda2.getPosition()
);
rectangle.setBounds(latLngBounds);

//Menghapus kedua tanda/marker yang dibuat sebelumnya
tanda1.setMap(null);
tanda2.setMap(null);
}
 

Menyimpan ke database

$(document).ready(function(){
$("#tombol_simpan").click(function(){
var wrna = $("#warnaku").val();
var x1 = $("#x1").val();
var y1 = $("#y1").val();
var x2 = $("#x2").val();
var y2 = $("#y2").val();
var judul = $("#judul").val();
var des = $("#deskripsi").val();
$("#loading").show();
$.ajax({
url: "simpanlokasi.php",
data: "x1="+x1+"&y1="+y1+"&x2="+x2+"&y2="+y2+"&judul="+judul+"&des="+des+"&wrn="+wrna,
cache: false,
success: function(msg){
alert(msg);
$("#loading").hide();
$("#x1").val("");
$("#y1").val("");
$("#x2").val("");
$("#y2").val("");
$("#judul").val("");
$("#deskripsi").val("");
ambildatabase('akhir');
rectangle.setMap(null);
}
});
});
$("#tutup").click(function(){
$("#jendelainfo").fadeOut();
});
});
 

Kode lengkapnya

Untuk kode lengkapnya langsung download source code
tutorial-dasa-koneksi-php-dan-mysql
 

Di facebook jika kita ada pesan baru, walaupun halaman gak direfresh maka akan muncul angka jumlah pesan dengan latar belakang merah. Ketika diklik akan mucul list pesan terbaru dari siapa dan kapan. Nah mari kita coba membuat notifikasi seperti facebok tersebut dengan menggunakan jQuery.
Struktur tabel_pesan di database MySQL adalah sebagai berikut :
--
-- Table structure for table `tabel_pesan`
--

CREATE TABLE `tabel_pesan` (
  `nomor` int(10) NOT NULL auto_increment,
  `waktu` varchar(20) NOT NULL,
  `dari` varchar(50) NOT NULL,
  `kepada` varchar(50) NOT NULL,
  `pesan` text NOT NULL,
  `sudahbaca` varchar(1) NOT NULL,
  PRIMARY KEY  (`nomor`)
) ;

Pada struktur tabel di atas, untuk mendeteksi sudah terbaca atau belum adalah pada field sudahbaca, bernilai 'N' jika belum dan 'Y' jika sudah dibaca.
Sekarang kita lihat kode jQuery untuk mengecek jika ada pesan terbaru.
function cek(){
    $.ajax({
        url: "cekpesan.php",
        cache: false,
        success: function(msg){
            $("#notifikasi").html(msg);
        }
    });
    var waktu = setTimeout("cek()",3000);
}

Pada kode di atas kita melakukan proses request dengan ajax ke file cekpesan.php. fungsi setTimeout() berfungsi untuk menjalankan fungsi cek() terus berulang setiap 3000 milidetik atau 3 detik.
Berikut kode cekpesan.php
 <?php
session_start();
include "config.php";
$userid = $_SESSION['userid'];
$pesan = mysql_query("SELECT nomor FROM tabel_pesan
    WHERE kepada='$userid' and sudahbaca='N'");
$j = mysql_num_rows($pesan);
if($j>0){
    echo $j;
}
?>
Untuk database dan kode lengkapnya silahkan download Source Code

Sekarang mari kita membuat aplikasi chatting dengan menggunakan php ajax dan mysql sebagai database. Di sini kita memanfaatkan ajax untuk komunikasi client (browser) ke server. Ajax setiap detik akan melakukan request ke server (tanpa harus refresh). Di sini kita bisa memanfaat fungsi setTimeout() pada javascript. Fungsi setTimeout() berguna untuk me-set timer setiap berapa per milisecond javascript mengeksekusi suatu fungsi, contoh :
setTimeout("ambilPesan()",1000);
Kode di atas berarti, eksekusi fungsi ambilPesan() setiap 1000 milisecond. Mari kita lihat konsep untuk membuat aplikasi chatting:
  1. Kita buat objek ajax yang nantiya bertugas melakukan komunikasi ke server
  2. User memasukkan nama, yang nantinya kita simpan dalam suatu variabel
  3. Ketika user selesai mengetik pesan, masukkan ke dalam database melalui ajax
  4. User, baik kita sendiri atau orang lain, setiap 1 detik akan mengecek ke server, apakah ada pesan baru, jika ada tampilkan.
Sekarang mari kita mulai membuat kode-kodenya
Berikut adah struktur tabel chat di database :
CREATE TABLE `chat` (
`nomor` int(3) NOT NULL auto_increment,
`nama` varchar(20) NOT NULL,
`pesan` varchar(200) NOT NULL,
`waktu` varchar(10) NOT NULL,
PRIMARY KEY (`nomor`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
 Pertama-tama mari kita buat halaman untuk chat di browser. chat.html

<html>
<head>
<title>
DRZ Chat 1.0
</title>
<script>
var ajaxku = buatAjax();
var tnama = 0;
var pesanakhir = 0;
var timer;
function taruhNama(){
if(tnama==0){
document.getElementById("nama").disabled = "true";
tnama = 1;
}else{
document.getElementById("nama").disabled = "";
tnama = 0;
}
ambilPesan();
}
function buatAjax(){
if(window.XMLHttpRequest){
return new XMLHttpRequest();
}else if(window.ActiveXObject){
return new ActiveXObject("Microsoft.XMLHTTP");
}
}

function ambilPesan(){
namaku = document.getElementById("nama").value
if(ajaxku.readyState == 4 || ajaxku.readyState == 0){
ajaxku.open("GET","ambilchat.php?akhir="+pesanakhir+"&nama="+namaku+"&sid="+Math.random(),true);
ajaxku.onreadystatechange = aturAmbilPesan;
ajaxku.send(null);
}
}

function aturAmbilPesan(){
if(ajaxku.readyState == 4){
var chat_div = document.getElementById("div_chat");
var data = eval("("+ajaxku.responseText+")");
for(i=0;i<data.messages.pesan.length;i++){
chat_div.innerHTML += "<font color=red>"+data.messages.pesan[i].nama+"</font> ";
chat_div.innerHTML += "<font size=1>("+data.messages.pesan[i].waktu+")</font> ";
chat_div.innerHTML += " : "+data.messages.pesan[i].teks+"<br>";
chat_div.scrollTop = chat_div.scrollHeight;
pesanakhir = data.messages.pesan[i].id;
}
}
timer = setTimeout("ambilPesan()",1000);
}

function kirimPesan(){
pesannya = document.getElementById("pesan").value
namaku = document.getElementById("nama").value
if(pesannya != "" && document.getElementById("nama").value !=""){
ajaxku.open("GET","ambilchat.php?akhir="+pesanakhir+"&nama="+namaku+"&pesan="+pesannya+"&sid="+Math.random(),true);
ajaxku.onreadystatechange = aturAmbilPesan;
ajaxku.send(null);
document.getElementById("pesan").value = "";
}else{
alert("Nama atau pesan masih kosong");
}
}

function aturKirimPesan(){
clearInterval(timer);
ambilPesan();
}
function blockSubmit() {
kirimPesan();
return false;
}
</script>
</head>
<body>
Nama : <input type=text name=nama id=nama>
<input type=button value=login id=tmbl_login onclick=taruhNama()><p>
<div id="div_chat" style="height: 300px; width: 500px; overflow: auto; background-color: lightyellow; border: 1px solid #555555;">

</div>
<form onSubmit="return blockSubmit();">
Pesan : <input type=text name=pesan id=pesan size=50>
<input type=button value="kirim" onclick="kirimPesan()">
</form>
</body>
</html>
 
<?php
mysql_connect("localhost","root","");
mysql_select_db("test");

$nama = $_GET['nama'];
$pesan = $_GET['pesan'];
$waktu = date("H:i");
$akhir = $_GET['akhir'];

$json = '{"messages": {';
if($akhir==0){
$nomor = mysql_query("select nomor from chat order by nomor desc limit 1");
$n = mysql_fetch_array($nomor);
$no = $n['nomor'] + 1;
$json .= '"pesan":[ {';
$json .= '"id":"'.$no.'",
"nama":"Admin",
"teks":"Selamat datang di chatting room",
"waktu":"'.$waktu.'"
}]';
$masuk = mysql_query("insert into chat values(null,'Admin','$nama bergabung dalam chat','$waktu')");
}else{
if($pesan){
$masuk = mysql_query("insert into chat values(null,'$nama','$pesan','$waktu')");

}
$query = mysql_query("select * from chat where nomor > $akhir");
$json .= '"pesan":[ ';
while($x = mysql_fetch_array($query)){
$json .= '{';
$json .= '"id":"'.$x['nomor'].'",
"nama":"'.htmlspecialchars($x['nama']).'",
"teks":"'.htmlspecialchars($x['pesan']).'",
"waktu":"'.$x['waktu'].'"
},';
}
$json = substr($json,0,strlen($json)-1);
$json .= ']';
}

$json .= '}}';
echo $json;
?> 
 
gampang bukan
download source kodenya disini 

Kali ini kita akan membuat aplikasi GIS dengan Google Map API, di mana aplikasi GIS ini, kita bisa membuat marker pada map, marker yang dibuat bisa macam-macam gambar iconnya, tergantung jenis lokasinya, apakah bandara, mesjid, restoran, dan lainnya. Setelah memberi tanda atau marker, kita bisa memberi nama lokasi tersebut dan juga deskripsinya, kemudian kita simpan ke database.
Pada aplikasi GIS ini juga, kita bisa menampilkan keseluruhan marker yang telah disimpan di database MySQL tersebut dengan bantuan PHP dan JSON jQuery. Mari kita lihat.
Algoritma membuat aplikasi GIS ini hampir sama dengan tutorial sebelumnya, Membuat GIS Google Map Seperti Wikimapia dengan jQuery dan Membuat Geographic Information System (GIS) Sederhana dengan Google Map dan Ajax jQuery, silahkan dibaca-baca di situ tutorial dengan google map. Untuk icon-icon yang digunakan bisa buat sendiri atau anda download di http://code.google.com/p/google-maps-icons/

Pengantar
Geographic Information System (GIS) merupakan sistem yang dirancang untuk bekerja dengan data yang tereferensi secara spasial atau koordinat-koordinat geografi. GIS memiliki kemampuan untuk melakukan pengolahan data dan melakukan operasi-operasi tertentu dengan menampilkan dan menganalisa data. Applikasi GIS saat ini tumbuh tidak hanya secara jumlah applikasi namun juga bertambah dari jenis keragaman applikasinya. Pengembangan applikasi GIS kedepannya mengarah kepada applikasi berbasis Web yang dikenal dengan Web GIS. Hal ini disebabkan karena pengembangan applikasi di lingkungan jaringan telah menunjukan potensi yang besar dalam kaitannya dengan geo informasi. Sebagai contoh adalah adanya peta online sebuah kota dimana pengguna dapat dengan mudah mencari lokasi yang diinginkan secara online melalui jaringan intranet/internet tanpa mengenal batas geografi penggunanya. Secara umum Sistem Informasi Geografis dikembangkan berdasarkan pada prinsip input/masukan data, managemen, analisis dan representasi data. Di lingkungan web prinsip-prinsip tersebut di gambarkan dan di implementasikan seperti pada table berikut :
GIS Prinsip
Pengembangan Web
Data Input Client
Manajemen Data DBMS dengan komponen spasial
Analisys Data GIS Library di Server
Representasi Data Client/server
Arsitektur
Untuk dapat melakukan komunikasi dengan komponen yang berbeda-beda di lingkungan web maka dibutuhkan sebuah web server. Karena standart dari geo data berbeda beda dan sangat spesifik maka pengembangan arsitektur system mengikuti arsitektur ‘Client Server’.
Gambar 1. Arsitektur WEB GIS
Gambar diatas menunjukan arsitektur minimum sebuah system Web GIS. Applikasi berada disisi client yang berkomunikasi dengan Server sebagai penyedia data melalui web Protokol seperti HTTP (Hyper Text Transfer Protocol). Applikasi seperti ini bisa dikembangkan dengan web browser (Mozzila Firefox, Opera, Internet Explorer, dll). Untuk menampilkan dan berinteraksi dengan data GIS, sebuah browser membutuhkan Pug-In atau Java Applet atau bahkan keduanya. Web Server bertanggung jawab terhadap proses permintaan dari client dan mengirimkan tanggapan terhadap respon tersebut. Dalam arsitektur web, sebuah web server juga mengatur komunikasi dengan server side GIS Komponen. Server side GIS Komponen bertanggung jawab terhadap koneksi kepada database spasial seperti menterjemahkan query kedalam SQL dan membuat representasi yang diteruskan ke server. Dalam kenyataannya Side Server GIS Komponen berupa software libraries yang menawarkan layanan khusus untuk analisis spasial pada data. Selain komponen hal lain yang juga sangat penting adalah aspek fungsional yang terletak di sisi client atau di server. Gambar berikut dua pendekatan yang menunjukan kemungkinan distribusi fungsional pada system client/server berdasarkan konsep pipeline visualization.
Gambar 2. Thin Vs Thick system pada Client Server
Pendekatan-1 : Thin Client : Memfokuskan diri pada sisi server. Hampir semua proses dan analisa data dilakukan berdasarkan request disisi server. Data hasil pemrosesan dikirimkan ke client dalam format HTML, yang didalamnya terdapat file gambar sehingga dapat dilihat dengan browser. Pada pendekatan ini interaksi pengguna terbatas dan tidak fleksibel
Pendekatan-2 : Thick / Fat Client : Pemrosesan data dilakukan disisi client, data dikirim dari server ke client dalam bentuk data vector yang disederhanakan. Pemrosesan dan penggambaran kembali dilakukan disisi client. Cara ini menjadikan user dapat berinteraksi lebih interaktif dan fleksibel.
Manajemen Data
Untuk melakukan menajeman data geografis paling tidak dibutuhkan sebuah DBMS (Databese Management System). Pemodelan berorientasi objek menjadi sangat dibutuhkan karena pemodelan basisdata relational tidak mampu melakukan penyimpanan data spasial. Pada analisis spasial system manajemen database memberikan beberapa keragaman. Ada beberapa keragaman applikasi yang dapat digunakan sebagai database seperti Oracle Spatial, PostgreSQL, Informix, DB2, Ingres dan yang paling popular saat ini adalah MySQL. Untuk mendapatkan pengembangan fungsional analisis pada level database beberapa DBMS telah mendukung procedural bahasa pemrograman. Oracle DBMS menawarkan dua kemungkinan untuk menghasilkan individual operation dilevel database. Yang pertama adalah PL/SQL sebuah procedural bahasa pemrograman. Yang kedua adalah Java Virtual Machine (JVM) untuk proses Java classes di level database.
Mendesain GUI
Untuk berinteraksi, berkomunikasi dan mendapatkan informasi perlu dirancang sebuah Graphical User Interface (GUI). GUI berinteraksi langsung dengan user. Karena informasi geografis biasanya sangat kompleks maka akan ditemui banyak kesulitan dalam pengarsipannya. Menciptakan aspek Dunia Virtual menjadi hal penting dalam mendesain GUI. Karakteristik untuk menciptakan dunia virtual adalah Level of Detail (LOD).
Gambar 3. Menciptakan Virtual World
Algoritma khusus dibutuhkan untuk mampu menampilkan se-invisible mungkin tampilan. Penggunaan PHP dan VRML (Virtual Reality Modeling Language) adalah sebuah ideal perancangan GUI untuk applikasi Web GIS. PHP menjadi bahasa yang paling popular untuk menciptakan web dinamis pada saat ini. VRML dikenalkan oleh Konsorsium Web3D untuk menghasilkan tampilan peta interaktif dalam web. PHP dapat menghasilkan banyak text informasi. Dalam PHP, salah satunya menjadi pengendali dari banyak informasi tersebut. Permintaan dikirimkan oleh VRML MIME (‘model/vrml’) dan kemudian menuliskan VRML nodenya. Server mengkomunikasikan semua kode PHP saat mengirimkan respon. Jadi pada line dimana kode JSP ditampilkan server mengirimkan kembali blank line kepada browser. Sangat perlu untuk memasukan header PHP dan VRML dan content type nya harus berubah sebelum VRML header ditentukan, hasil akhirnya bisa menjadi seperti dibawah ini :
<?php
Header (“Tipe-kontent : model/vrml”);
Echo “#VRML V2.0 utf8\n”;
?>
Contoh tersebut menggambarkan integrasi antara PHP dan VRML untuk membangun sebuah objek.
Detail Proses
Objek Geo Spasial terdiri dari informasi data spasial dan data non spasial. Informasi Spasial dapat divisualisasikan dengan mengkonversinya VRML dan data non Spasial ditampilkan secara dinamis di halaman HTML. Gambar berikut menunjukkan proses request data standart. Request memanggil desain dari PHP yang berinteraksi dengan database. Setelah menerima respon system mengikuti alur seperti pada gambar.
Gambar 4. Proses Request dan Respon
Database mengirimkan request data ke PHP, hasil respon dari request berupa format data dikirimkan kembali melalui browser. Disaat client melakukan request koneksi dilakukan ke DBMS, kemudian informasi spasial yang dipilih dari DBMS di convert kedalam bentuk VRML. Browser Plug In di sisi client menampilkan keluaran VRML sebagai keluaran menjadi peta. VRML juga menyediakan script yang memungkinkan sebuah proses disaat user mengklik objek. Melalui VRML ini request dikirimkan ke applikasi di server. Server menerima dan menterjemahkan menjadi informasi dan mengirimkanya ke HTML untuk di tampilkan ke Browser.
Untuk menerima data spasial dan non spasial dari DBMS dibutuhkan sebuah teknik yang mampu mengkomunikasikan antara client dan database pada server. Teknik seperti ini sudah tersedia di PHP, ASP, ASP.net, atau JSP. Pemilihan tekniknya disesuaikan dengan web Server yang digunakan. Detail arsitektur untuk menampilkan data GIS melalui web seperti pada gambar berikut :
Gambar 5. Arsitektut Publikasi Web GIS
Contoh Pemanfaatan Web GIS
Ketika terjadi Tsunami di Aceh bukti kehebatannya baru dapat kita analisa jika sudah ditampilkan kedalam bentuk peta. Gambar tersebut dapat memberikan banyak arti dan informasi lebih jika dilengkapi dengan data-data yang akurat.
Wilayah Uleule Sebelum Tsunami
Wilayah Uleule setelah Tsunami
Berikut ini adalah beberapa pengembangan applikasi GIS Web yang memungkinkan untuk dikembangkan :
Sektor
Gambaran
Contoh
Facility Management Manajemen Gedung Besar yang kompleks Organisasi ruangan seperti Kampus dan Rumah Sakit
Navigation Support Navigasi kendaraan Bermotor Location Base service yang menampilkan posisi saat ini dan
lingkungannya
Lingkungan Lingkungan perkotaan seperti karakteristik kebisingan, arah
angina, emisi, dll
Menampilkan pengurangan emisi
Bencana Alam Mengorganisasi aliran kerja penanganan bencana Mengarahkan team penyelamatan, menentukan dan mengontrol lokasi
pengungsian dengan real time data
Supply engineering Manajemen Supply Mengorganisasi jaringan
Referensi :
[1] Charter, Denny, Desain dan Applikasi GIS, PT. Elex Media Komputindo, Jakarta, 2004.
[2] Rahman, Abdul, Spasial Data Modelling For 3D GIS, Springer, Berlin, 2008
[3] Darmawan, Mulyanto, Pedoman Dasar Pembuatan Geospasial, Geospasial.com, 2006

1.1. Pengertian Sistem Informasi Geografis

Sistem Informasi Geografis (Geographic Information System/GIS) yang selanjutnya akan disebut SIG merupakan sistem informasi berbasis komputer yang digunakan untuk mengolah dan menyimpan data atau informasi geografis (Aronoff, 1989).

Secara umum pengertian SIG sebagai berikut:

“Suatu komponen yang terdiri dari perangkat keras, perangkat lunak, data geografis dan sumberdaya manusia yang bekerja bersama secara efektif untuk memasukan, menyimpan, memperbaiki, memperbaharui, mengelola, memanipulasi, mengintegrasikan, menganalisa dan menampilkan data dalam suatu informasi berbasis geografis.”
Pada dasarnya SIG dapat dikerjakan secara manual. Namun dalam pembahasan selanjutnya SIG akan selalu diasosiasikan dengan sistem yang berbasis komputer. SIG yang berbasis komputer akan sangat membantu ketika data geografis yang tersedia merupakan data dalam jumlah dan ukuran besar, dan terdiri dari banyak tema yang saling berkaitan.

SIG mempunyai kemampuan untuk menghubungkan berbagai data pada suatu titik tertentu di bumi, menggabungkannya, menganalisa dan akhirnya memetakan hasilnya. Data yang akan diolah pada SIG merupakan data spasial. Ini adalah sebuah data yang berorientasi geografis dan merupakan lokasi yang memiliki sistem koordinat tertentu, sebagai dasar referensinya. Sehingga aplikasi SIG dapat menjawab beberapa pertanyaan, seperti lokasi, kondisi, trend, pola dan pemodelan. Kemampuan inilah yang membedakan SIG dari sistem informasi lainnya.
Telah dijelaskan di awal bahwa SIG adalah suatu kesatuan sistem yang terdiri dari berbagai komponen. Tidak hanya perangkat keras komputer beserta dengan perangkat lunaknya, tapi harus tersedia data geografis yang akurat dan sumberdaya manusia untuk melaksanakan perannya dalam memformulasikan dan menganalisa persoalan yang menentukan keberhasilan SIG.

1.2. Data Spasial
Sebagian besar data yang akan ditangani dalam SIG merupakan data spasial, data yang berorientasi geografis. Data ini memiliki sistem koordinat tertentu sebagai dasar referensinya dan mempunyai dua bagian penting yang berbeda dari data lain, yaitu informasi lokasi (spasial) dan informasi deskriptif (atribut) yang dijelaskan berikut ini :
  1. lokasi (spasial), berkaitan dengan suatu koordinat baik koordinat geografi (lintang dan bujur) dan koordinat XYZ, termasuk diantaranya informasi datum dan proyeksi.
  2. deskriptif (atribut) atau informasi nonspasial, suatu lokasi yang memiliki beberapa keterangan yang berkaitan dengannya. Contoh jenis vegetasi, populasi, luasan, kode pos, dan sebagainya.
1.2.1. Format Data Spasial
Secara sederhana format dalam bahasa komputer berarti bentuk dan kode penyimpanan data yang berbeda antara file satu dengan lainnya. Dalam SIG, data spasial dapat direpresentasikan dalam dua format, yaitu:

1.2.1.1. Data Vektor
Data vektor merupakan bentuk bumi yang direpresentasikan ke dalam kumpulan garis, area (daerah yang dibatasi oleh garis yang berawal dan berakhir pada titik yang sama), titik dan nodes (titik perpotongan antara dua buah garis).

Gambar 1 Data Vektor

Keuntungan utama dari format data vektor adalah ketepatan dalam merepresentasikan fitur titik, batasan dan garis lurus. Hal ini sangat berguna untuk analisa yang membutuhkan ketepatan posisi, misalnya pada basis data batas-batas kadaster. Contoh penggunaan lainnya adalah untuk mendefinisikan hubungan spasial dari beberapa feature. Namun kelemahan data vektor yang utama adalah ketidakmampuannya dalam mengakomodasi perubahan gradual.

1.2.1.2. Data Raster
Data raster (disebut juga dengan sel grid) adalah data yang dihasilkan dari sistem penginderaan jauh. Pada data raster, obyek geografis direpresentasikan sebagai struktur sel grid yang disebut dengan pixel (picture element).

Gambar 2 Data Raster

Pada data raster, resolusi (definisi visual) tergantung pada ukuran pixel-nya. Dengan kata lain, resolusi pixel menggambarkan ukuran sebenarnya di permukaan bumi yang diwakili oleh setiap pixel pada citra. Semakin kecil ukuran permukaan bumi yang direpresentasikan oleh satu sel, semakin tinggi resolusinya. Data raster sangat baik untuk merepresentasikan batas-batas yang berubah secara gradual, seperti jenis tanah, kelembaban tanah, vegetasi, suhu tanah dan sebagainya. Keterbatasan utama dari data raster adalah besarnya ukuran file. Semakin tinggi resolusi grid-nya, semakin besar ukuran filenya, dan ini sangat bergantung pada kapasitas perangkat keras yang tersedia.

Masing-masing format data mempunyai kelebihan dan kekurangan. Pemilihan format data yang digunakan sangat tergantung pada tujuan penggunaan, data yang tersedia, volume data yang dihasilkan, ketelitian yang diinginkan, serta kemudahan dalam analisa. Data vektor relatif lebih ekonomis dalam hal ukuran file dan presisi dalam lokasi, tetapi sangat sulit untuk digunakan dalam komputasi matematis. Sedangkan data raster biasanya membutuhkan ruang penyimpanan file yang lebih besar dan presisi lokasinya lebih rendah, tetapi lebih mudah digunakan secara matematis.

1.2.2. Sumber Data Spasial
Salah satu syarat SIG adalah data spasial. Ini dapat diperoleh dari beberapa sumber antara lain:

1.2.2.1. Peta Analog
Peta analog yaitu peta dalam bentuk cetak. Seperti peta topografi, peta tanah dan sebagainya. Umumnya peta analog dibuat dengan teknik kartografi, dan kemungkinan besar memiliki referensi spasial seperti koordinat, skala, arah mata angin, dan sebagainya.
Dalam tahapan SIG sebagai keperluan sumber data, peta analog dikonversi menjadi peta digital. Caranya dengan mengubah format raster menjadi format vektor melalui proses digitasi sehingga dapat menunjukan koordinat sebenarnya di permukaan bumi.


1.2.2.2. Data Sistem Penginderaan Jauh
Data penginderaan jauh, seperti hasil citra satelit, foto-udara dan sebagainya, merupakan sumber data yang terpenting bagi SIG. Karena ketersediaan data secara berkala dan mencakup area tertentu. Dengan adanya bermacam-macam satelit di ruang angkasa dengan spesifikasi masing-masing, kita bisa memperoleh berbagai jenis citra satelit untuk beragam tujuan pemakaian. Data ini biasanya direpresentasikan dalam format raster.

1.2.2.3. Data Hasil Pengukuran Lapangan
Data pengukuran lapangan merupakan data yang dihasilkan berdasarkan teknik perhitungan tersendiri. Pada umumnya data ini merupakan sumber data atribut, contohnya batas administrasi, batas kepemilikan lahan, batas persil, batas hak pengusahaan hutan, dan lain-lain.

1.2.2.4. Data GPS (Global Positioning System)
Teknologi GPS memberikan terobosan penting dalam menyediakan data bagi SIG. Keakuratan pengukuran GPS semakin tinggi dengan berkembangnya teknologi. Data ini biasanya direpresentasikan dalam format vektor. Pembahasan mengenai GPS diterangkan dalam subbab terpisah.

1.3. Peta, Proyeksi Peta, Sistem Koordinat, Survei dan GPS
Data spasial yang dibutuhkan pada SIG dapat diperoleh dengan berbagai cara. Salah satunya melalui survei dan pemetaan, yaitu penentuan posisi/koordinat di lapangan. Berikut ini akan dijelaskan secara ringkas beberapa hal yang berkaitan dengan posisi/koordinat serta metode-metode untuk mendapatkan informasi posisi tersebut di lapangan.

1.3.1. Peta
Peta adalah gambaran sebagian atau seluruh muka bumi baik yang terletak di atas maupun di bawah permukaan dan disajikan pada bidang datar pada skala dan proyeksi tertentu (secara matematis). Karena dibatasi oleh skala dan proyeksi maka peta tidak akan pernah selengkap dan sedetail aslinya (bumi). Untuk itu diperlukan penyederhanaan dan pemilihan unsur yang akan ditampilkan pada peta.

1.3.2. Proyeksi Peta
Pada dasarnya bentuk bumi tidak datar, tapi mendekati bulat. Maka untuk menggambarkan sebagian muka bumi untuk kepentingan pembuatan peta, perlu dilakukan langkah-langkah agar bentuk yang mendekati bulat tersebut dapat didatarkan dan distorsinya dapat terkontrol. Caranya dengan melakukan proyeksi ke bidang datar.

1.3.2.1. Pengelompokan Proyeksi Peta
1.3.2.1.1. Yang Mempertahankan Sifat Asli
  1. Luas permukaan yang tetap (ekuivalen)
  2. Bentuk yang tetap (konform)
  3. Jarak yang tetap (ekuidistan) Perbandingan dari daerah yang sama untuk proyeksi yang berbeda :
Gambar

1.3.2.1.2. Yang Menggunakan Bidang Proyeksi
  • Bidang datar
  • Bidang kerucut
  • Bidang silinder
Gambar

1.3.2.2. Proyeksi Universal Transverse Mercator (UTM)
Proyeksi UTM dibuat oleh US Army sekitar tahun 1940-an. Sejak saat itu proyeksi ini menjadi standar untuk pemetaan topografi

1.3.2.2.1. Sifat-sifat Proyeksi UTM
  1. Proyeksi ini adalah proyeksi Transverse Mercator yang memotong bola bumi pada dua buah meridian, yang disebut dengan meridian standar. Meridian pada pusat zone disebut sebagai meridian tengah.
  2. Daerah di antara dua meridian ini disebut zone. Lebar zone adalah 6 sehingga bola bumi dibagi menjadi 60 zone.
  3. Perbesaran pada meridian tengah adalah 0,9996.
  4. Perbesaran pada meridian standar adalah 1.
  5. Perbesaran pada meridian tepi adalah 1,001.
  6. Satuan ukuran yang digunakan adalah meter.

1.3.2.2.2. Sistem Koordinat UTM

Gambar

Untuk menghindari koordinat negatif, dalam proyeksi UTM setiap meridian tengah dalam tiap zone diberi harga 500.000 mT (meter timur). Untuk harga-harga ke arah utara, ekuator dipakai sebagai garis datum dan diberi harga 0 mU (meter utara). Untuk perhitungan ke arah selatan ekuator diberi harga 10.000.000 mU.

Gambar

Wilayah Indonesia (90° – 144° BT dan 11° LS – 6° LU) terbagi dalam 9 zone UTM. Artinya, wilayah Indonesia dimulai dari zone 46 sampai zone 54 (meridian sentral 93° – 141° BT).

1.3.2.3. Metode Penentuan Posisi
Metode penentuan posisi adalah cara untuk mendapatkan informasi koordinat suatu objek di lapangan, contohnya koordinat titik batas, koordinat batas persil tanah dan lain-lain. Metode penentuan posisi dapat dibedakan dalam dua bagian, yaitu metode penentuan posisi terestris dan metode penentuan posisi extra-terestris (satelit).
Pada metode terestris, penentuan posisi titik dilakukan dengan melakukan pengamatan terhadap target atau objek yang terletak di permukaan bumi. Beberapa contoh metode yang umum digunakan adalah:
  1. Metode poligon.
  2. Metode pengikatan ke muka.
  3. Metode pengikatan ke belakang.
  4. Dan lain-lain.

Pada metode ekstra terestris, penentuan posisi dilakukan berdasarkan pengamatan terhadap benda atau objek di angkasa seperti bintang, bulan, quasar dan satelit buatan manusia. Beberapa contoh penentuan posisi extra terestris adalah sebagai berikut:
  1. Astronomi geodesi.
  2. Transit Dopler.
  3. Global Positioning System (GPS).
  4. Dan lain-lain.
1.3.3. Sistem Koordinat
Posisi suatu titik biasanya dinyatakan dengan koordinat (dua-dimensi atau tiga-dimensi) yang mengacu pada suatu sistem koordinat tertentu. Sistem koordinat itu sendiri dapat didefinisikan melalui spesfikasi tiga parameter berikut:

1.3.3.1. Lokasi Titik Nol dari Sistem Koordinat
Posisi suatu titik di permukaan bumi umumnya ditetapkan dalam/terhadap suatu sistem koordinat terestris. Titik nol dari sistem koordinat terestris ini dapat berlokasi di titik pusat massa bumi (sistem koordinat geosentrik), maupun di salah satu titik di permukaan bumi (sistem koordinat toposentrik).

1.3.3.2. Orientasi dari Sumbu-sumbu Koordinat
Posisi tiga-dimensi (3D) suatu titik di permukaan bumi umumnya dinyatakan dalam suatu sistem koordinat geosentrik. Tergantung dari parameter-parameter pendefinisi koordinat yang digunakan. Ada dua sistem koordinat yang umum digunakan, yaitu sistem koordinat Kartesian (X,Y,Z) dan sistem koordinat Geodetik (L,B,h), yang keduanya diilustrasikan pada gambar berikut.

Gambar

Koordinat 3D suatu titik juga bisa dinyatakan dalam suatu sistem koordinat toposentrik. Umumnya dalam bentuk sistem koordinat Kartesian (N,E,U) yang diilustrasikan pada gambar berikut.

Gambar

Parameter-parameter (kartesian, curvilinear) itu digunakan untuk mendefinisikan posisi suatu titik dalam sistem koordinat tersebut. Posisi titik juga dapat dinyatakan dalam 2D, baik dalam (L,B), ataupun dalam suatu sistem proyeksi tertentu (x,y) seperti Polyeder, Transverse Mercator (TM) dan Universal Transverse Mercator (UTM).

1.3.4. Metode Penentuan Posisi Global (GPS)
GPS adalah sistem navigasi dan penentuan posisi menggunakan satelit yang dikembangkan dan dikelola oleh Departemen Pertahanan Amerika Serikat. GPS dapat memberikan informasi tentang posisi, kecepatan dan waktu di mana saja di muka bumi setiap saat, dengan ketelitian penentuan posisi dalam fraksi milimeter hingga meter. Kemampuan jangkauannya mencakup seluruh dunia dan dapat digunakan banyak orang setiap saat pada waktu yang sama (Abidin,H.Z, 1995). Prinsip dasar penentuan posisi dengan GPS adalah perpotongan ke belakang dengan pengukuran jarak secara simultan ke beberapa satelit GPS seperti gambar berikut:

Gambar

1.3.4.1. Sistem GPS
Untuk dapat melaksanakan prinsip penentuan posisi di atas, GPS dikelola dalam suatu sistem yang terdiri dari 3 bagian utama, yaitu bagian angkasa, bagian pengontrol dan bagian pemakai, seperti gambar berikut:

Gambar

1.3.4.1.1. Bagian Angkasa
Terdiri dari satelit-satelit GPS yang mengorbit mengelilingi bumi. Jumlah satelit GPS adalah 24 buah. Satelit GPS mengorbit mengelilingi bumi dalam 6 bidang orbit dengan tinggi rata-rata setiap satelit ± 20.200 Km dari permukaan bumi.

Gambar

Setiap satelit GPS secara kontinu memancarkan sinyal-sinyal gelombang pada 2 frekuensi L-band (dinamakan L1 dan L2). Dengan mengamati sinyal-sinyal dari satelit dalam jumlah dan waktu yang cukup, kemudian data yang diterima tersebut dapat dihitung untuk mendapatkan informasi posisi, kecepatan maupun waktu.

1.3.4.1.2. Bagian Pengontrol
Adalah stasiun-stasiun pemonitor dan pengontrol satelit yang berfungsi untuk memonitor dan mengontrol kelayakan satelit-satelit GPS. Stasiun kontrol ini tersebar di seluruh dunia, seperti di Pulau Ascension, Diego Garcia, Kwajalein, Hawai, dan Colorado Springs. Di samping memonitor dan mengontrol fungsi seluruh satelit, ia juga berfungsi menentukan orbit dari seluruh satelit GPS.


Gambar

1.3.4.1.3. Bagian Pengguna
Adalah peralatan (Receiver GPS) yang dipakai pengguna satelit GPS, baik di darat, laut, udara
maupun di angkasa. Alat penerima sinyal GPS (Receiver GPS) diperlukan untuk menerima dan
memproses sinyal-sinyal dari satelit GPS untuk digunakan dalam penentuan posisi, kecepatan,
maupun waktu.
Secara umum receiver GPS dapat diklasifikasikan sebagai berikut:
  1. Receiver militer
  2. Receiver tipe navigasi
  3. Receiver tipe geodetik
1.3.4.2. Metode-metode Penentuan Posisi dengan GPS
Pada dasarnya konsep dasar penentuan posisi dengan satelit GPS adalah pengikatan ke belakang dengan jarak, yaitu mengukur jarak ke beberapa satelit GPS yang koordinatnya telah diketahui. Perhatikan gambar berikut :

Gambar

Prinsip Dasar Penentuan Posisi dengan GPS (sumber Abidin H.Z)
Penentuan posisi dengan GPS dapat dikelompokan atas beberapa metode, di antaranya:
  • Metode absolut,
  • Metode relatif (differensial).

1.3.4.2.1. Metode Absolut
Penentuan posisi dengan GPS metode absolut adalah penentuan posisi yang hanya menggunakan sebuah alat receiver GPS. Karakteristik penentuan posisi dengan cara absolut ini adalah sebagai berikut:

  1. Posisi ditentukan dalam sistem WGS 84 (terhadap pusat bumi).
  2. Prinsip penentuan posisi adalah perpotongan ke belakang dengan jarak ke beberapa satelit sekaligus.
  3. Hanya memerlukan satu receiver GPS.
  4. Titik yang ditentukan posisinya, bisa diam (statik) atau bergerak (kinematik).
  5. Ketelitian posisi berkisar antara 5 sampai dengan 10 meter.

Aplikasi utama metode ini untuk keperluan navigasi. Metode penentuan posisi absolut ini umumnya menggunakan data pseudorange. Namun metode ini tidak dimaksudkan untuk aplikasi-aplikasi yang menuntut ketelitian posisi yang tinggi.

1.3.4.2.2. Metode Relatif (Differensial)
Yang dimaksud dengan penentuan posisi relatif atau metode differensial adalah menentukan posisi suatu titik relatif terhadap titik lain yang telah diketahui koordinatnya. Pengukuran dilakukan secara bersamaan pada dua titik dalam selang waktu tertentu. Selanjutnya, data hasil pengamatan diproses dan dihitung sehingga akan didapat perbedaan koordinat kartesian 3 dimensi (dx, dy, dz) atau disebut juga dengan baseline antar titik yang diukur.

Karakteristik umum dari metode penentuan posisi ini adalah sebagai berikut:
  1. Memerlukan minimal dua receiver, satu ditempatkan pada titik yang telah diketahui koordinatnya.
  2. Posisi titik ditentukan relatif terhadap titik yang diketahui.
  3. Konsep dasar adalah differencing process, dapat mengeliminir atau mereduksi pengaruh dari beberapa kesalahan dan bias.
  4. Bisa menggunakan data pseudorange atau fase.
  5. Ketelitian posisi yang diperoleh bervariasi dari tingkat mm sampai dengan dm.
  6. Aplikasi utama: survei pemetaan, survei penegasan batas, survei geodesi dan navigasi dengan ketelitian tinggi.

1.3.4.3. Ketelitian Penentuan Posisi dengan GPS

Penentuan posisi dengan GPS dipengaruhi oleh faktor-faktor sebagai berikut:
  1. Ketelitian data terkait dengan tipe data yang digunakan, kualitas receiver GPS, level dari kesalahan dan bias.
  2. Geometri satelit, terkait dengan jumlah satelit yang diamati, lokasi dan distribusi satelit dan lama pengamatan.
  3. Metode penentuan posisi, terkait dengan metoda penentuan posisi GPS yang digunakan, apakah absolut, relatif, DGPS, RTK dan lain-lain.
  4. Strategi pemrosesan data, terkait dengan real-time atau post processing, strategi eliminasi dan pengoreksian kesalahan dan bias, pemrosesan baseline dan perataan jaringan serta kontrol kualitas.

1.3.4.4. Aplikasi-aplikasi GPS
Beberapa aplikasi dari GPS di antaranya adalah sebagai berikut:
  1. Survei dan pemetaan.
  2. Survei penegasan batas wilayah administrasi, pertambangan dan lain-lain.
  3. Geodesi, Geodinamika dan Deformasi.
  4. Navigasi dan transportasi.
  5. Telekomunikasi.
  6. Studi troposfir dan ionosfir.
  7. Pendaftaran tanah, Pertanian.
  8. Photogrametri & Remote Sensing.
  9. GIS (Geographic Information System).
  10. Studi kelautan (arus, gelombang, pasang surut).
  11. Aplikasi olahraga dan rekreasi.



Sumber:

http://pelagis.net/download/Modul_ArcGIS_I.rar

3. Komponen Pembentuk MapServer

Pengembangan MapSever sebagai sebuah aplikasi open source, banyak memanfaatkan aplikasi lain yang juga bersifat open source. Sedapat mungkin menggunakan aplikasi yang sudah tersedia jika memang memenuhi kebutuhan untuk menghemat sumber daya dan waktu pengembangan

3.1 Komponen Untuk Akses Data Spasial

Komponen pada kelompok ini bertugas untuk menangani baca/tulis data spasial, baik yang tersimpan sebagai file maupun tersimpan pada DBMS
  • Shapelib
    Shapefile merupakan library yang ditulis dalam bahasa C, untuk keperluan baca/tulis format data Shapefile (*.SHP) yang didefinisikan ESRI (Enviromental System Research Institute). Format Shapefile umum digunakan oleh berbagai aplikasi Sistem Informasi Geografik untuk menyimpan data vector simple (tanpa topologi) dengan atribut. Pada MapSever, format data Shapefile merupakan format data default.
  • GDAL/OGR
    GDAL (Geographic Data Abstraction LibraryI) merupakan library yang berfungsi sebagai penerjemah untuk berbagai format data raster. Library ini memungkinkan abstraksi untuk semua format data yang didukung, sehingga beragam format data tadi akan terlihat sebagai sebuah data model abstrak. Keberadaan data model abstrak tunggal akan memudahkan pengembang aplikasi karena dapat menggunkan antarmuka yang seragam untuk semua format data.. OGR merupakan library dengan fungsionalitas yang identik, untuk beragam format data vektor. Kode OGR sekarang ini digabung dalam kode library GDAL.

2. Pengenalan Mapserver

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
  • 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
Diberdayakan oleh Blogger.