STMIK AKAKOM PHP for grafis Kegiatan
Mengerjakan dikelas tugas rumah sbb a. Terdapat titik kota Yogya terletak di (dalam SKG) 110.50 BT dam 7.00 LSTentukan koordinat di layar bila resolusi 400x300, Bila batas kiri=100 BT , batas kanan =111 BT, Batas atas =6 LS , batas bawah =8 LS b. T erdapat titik P di layar dengan koordinat (100,150).Berapa koordinat globalnya ? Bila batas dan resolusi seperti diatas
Menjelaskan materi transformasi koordinat global ke layat dsbl.
Mendemokan contog grafis di PHP
materi Scipt PHP untuk grafis
bentuk geometri/obyek ditulis disini
imageJPEG($cendelo); menampilkan obyek ke monitor ?>
Geometri Dasar dengan PHP Pengaturan warna
id_warna=imagecolorallocate(id_grafis,R,G,B); R Red : 0 – 255 Pemrograman Sistem Informasi Geografi – berbasis WEB oleh M Guntara
Hal 1
STMIK AKAKOM G Green : 0 – 255 B Blue : 0 – 255
Garis
imageline(id_grafis,xo,yo,x1,y1,id_warna); xo,yo : koordinat awal garis x1,y1 : koordinat akhir garis
Kotak
imagerectangle(id_grafis,x,y,lebar,tinggi,id_warna); imagefilledrectangle(id_grafis,x,y,lebar,tinggi,id_warna);
x,y tinggi
Id_warna (warna garis)
lebar
imagefilledrectangle(id_grafis,x,y,lebar,tinggi,id_warna);
x,y tinggi
Id_warna (warna blok)
lebar
Lingkarang / Ellipse
imageellipse(id_grafis,x,y,lebar,tinggi,id_warna); imagefilledellipse(id_grafis,x,y,lebar,tinggi,id_warna); di blok Pemrograman Sistem Informasi Geografi – berbasis WEB oleh M Guntara
Hal 2
STMIK AKAKOM tinggi lebar (x,y) : titik pusat
Lingkaran / Ellipse
imagearc(id_grafis,x,y,lebar,tinggi,sudut_awal,sudut_akhir,id_warna);
Sudut 0 (nol) derajat
tinggi lebar (x,y) : titik pusat
Sudut_awal(derajat) Sudut_akhir(derajat)
Poligon
$var=array(x0,y0,x1,y1,x2,y2,……) Atau $var[0]=x0 $var[1]=y0 $var[2]=x1 $var[3]=y1 …… imagepolygon(id_grafis,$var,jumlah_titik,id_warna); imagefilledpolygon(id_grafis,$var,jumlah_titik,id_warna); dg blok
X0,y0 X4,y4
X1,y1 X3,y3
X2,y2
Pemrograman Sistem Informasi Geografi – berbasis WEB oleh M Guntara
Hal 3
STMIK AKAKOM dari contoh poligon ini jumlah_titik=5
-----------------------mpun nggih---------------------
Program Database untuk SIG –(sederhana) Database Database : gis2011 Tabel : obyek
Tabel : kabupaten
Tabel : obyek Script menampilkan obyek statis (ukuran/warna tidak berubah) Sambung.php
Obyek .php
Pemrograman Sistem Informasi Geografi – berbasis WEB oleh M Guntara
Hal 4
STMIK AKAKOM
Output
Pemrograman Sistem Informasi Geografi – berbasis WEB oleh M Guntara
Hal 5
STMIK AKAKOM
Script menampilkan obyek DINAMIS(ukuran berubah sesuai data) Script diatas ditambahkan sbb
Hal 6
STMIK AKAKOM //proses transformasi ke kordinat layar for($k=1;$k<=$jum_obyek;$k++) { $x_layar[$k]=($x_global[$k]-$bkiri_global)/$dx_global*$xmax; $y_layar[$k]=($y_global[$k]-$batas_global)/$dy_global*$ymax; } header("Content-Type:image/jpeg"); $wilayah=imagecreate(600,400); $latar=imagecolorallocate($wilayah,100,100,100); $merah=imagecolorallocate($wilayah,255,0,0); for($k=1;$k<=$jum_obyek;$k++) { //menentukan ukuran atas dasar luas obyek if($ombo[$k]>75) $ls=30; else $ls=15; imagefilledrectangle($wilayah,$x_layar[$k]-$ls,$y_layar[$k]-$ls, $x_layar[$k]+$ls,$y_layar[$k]+$ls,$merah); } imagejpeg($wilayah) ?>
Output
-------------------------------
Pemrograman Sistem Informasi Geografi – berbasis WEB oleh M Guntara
Hal 7
STMIK AKAKOM Batas Wilayah & warna blok Database untuk obyek dan batas wilayah Database : gis2011 Tabel : obyek
Tabel : batas
Tabel : kabupaten
Tabel : obyek Script menampilkan batas wilayah dan nama kabupaten Sambung.php Pemrograman Sistem Informasi Geografi – berbasis WEB oleh M Guntara
Hal 8
STMIK AKAKOM Wilayah.php
array untuk polygon
Pemrograman Sistem Informasi Geografi – berbasis WEB oleh M Guntara
Hal 9
STMIK AKAKOM { if($k%2==0) $titik[$k]=$x_lyr[$t]; else { $titik[$k]=$y_lyr[$t]; $t++; } } $jumlah_titik=$t; //pembedaan blok atas dasar jumlah penduduka if($jumpen>5) $warna=$merah; else $warna=$kuning; //membuat x dan y rata2 agar nama kabupatan ada di tengah $xx0;$yy=0; for($n=0;$n<=$jumlah_titik;$n++) { $xx+=$x_lyr[$n]; $yy+=$y_lyr[$n]; } //gambar poligon $x_tulis=$xx/$jumlah_titik; $y_tulis=$yy/$jumlah_titik; imagefilledpolygon($wilayah,$titik,$jumlah_titik,$warna); }//end while imagejpeg($wilayah); ?>
Output
Pemrograman Sistem Informasi Geografi – berbasis WEB oleh M Guntara
Hal 10
STMIK AKAKOM
Script menampilkan TEKS pada didalam wilayah Wilayah.php ……… sama dengan sebelumnya $kab=mysql_query("select kodekab,namakab,jum_penduduk from kabupaten"); while($kab_1=mysql_fetch_array($kab)) { $kokab=$kab_1[kodekab];
$nakab=$kab_1[namakab]; $jumpen=$kab_1[jum_penduduk]; //ambil batas per kode kabupatehn $i=0; $batas=mysql_query("select x,y from batas where kodekab='$kokab'"); while ($batas_1=mysql_fetch_array($batas)) { $x_global=$batas_1[x]; $y_global=$batas_1[y]; //transformasi ke koordinat layar $x_lyr[$i]=($x_global-$bKiri_global)/$dx_global*$xmax; $y_lyr[$i]=($y_global-$bAtas_global)/$dy_global*$ymax; $i++; } $jum_data=$i*2;
Pemrograman Sistem Informasi Geografi – berbasis WEB oleh M Guntara
Hal 11
STMIK AKAKOM //transformasi koordinat layar (array) ke $t=0; for($k=0;$k<$jum_data;$k++) { if($k%2==0) $titik[$k]=$x_lyr[$t]; else { $titik[$k]=$y_lyr[$t]; $t++; } } $jumlah_titik=$t;
array untuk polygon
if($jumpen>5) $warna=$merah; else $warna=$kuning; //gambar poligon imagefilledpolygon($wilayah,$titik,$jumlah_titik,$warna); //membuat x dan y rata2 agar nama kabupatan ada di tengah $xx0;$yy=0; for($n=0;$n<=$jumlah_titik;$n++) { $xx+=$x_lyr[$n]; $yy+=$y_lyr[$n]; } $x_tulis=$xx/$jumlah_titik; $y_tulis=$yy/$jumlah_titik; imagestring($wilayah,5,$x_tulis,$y_tulis,$nakab ,$biru); } imagejpeg($wilayah); ?>
Output
Pemrograman Sistem Informasi Geografi – berbasis WEB oleh M Guntara
Hal 12
STMIK AKAKOM
SIG Lengkap Untuk membentuk SIG lengkap maka wilayah.php dan obyek.php digabungkan , sehingga akan menghasilkan output wilayah dan obyek2-nya
---------------------- wis semene wae yo mugo kasembadan panjangkamu -----------------------
Pemrograman Sistem Informasi Geografi – berbasis WEB oleh M Guntara
Hal 13