Membuat Gambar Elips

Fungsi ImageArc()
Fungsi ini merupakan fungsi yang digunakan untuk menggambar bentuk elips, baik berupa kurva terbuka maupun kurva tertutup. Sintaksnya adalah sebagai berikut:

ImageArc($img, x, y, l, t, aw, ak, $warna)
Fungsi ini akan menggambar bentuk elips dengan pusat di x,y (0,0 terletak di kiri atas), dengan tinggi t dan lebar l, serta titik awal dan titik akhir diwakili oleh aw dan ak dalam derajat. Dengan demikian, jika t dan l diisi dengan nilai yang sama, kemudian aw dan ak adalah 0 dan 360, maka yang tergambar adalah lingkaran. Berikut ini akan diberikan contoh untuk menggambar elips.

<?
Header(“Content-Type:image/jpeg”);
$img = ImageCreate(300,300);
$biru = ImageColorAllocate($img,0,0,255);
$putih = ImageColorAllocate($img,255,255,255);
ImageFill($img,0,0,$putih);
ImageArc($img,150,150,150,280,0,360,$biru);
ImageJPEG($img);
?>












Untuk diperhatikan, selama ini dalam memberikan contoh-contoh skrip PHP, selalu menggunakan tag-tag HTML, diawali dengan tag <HTML>, <HEAD>, dan seterusnya. Namun kali ini tag-tag tersebut tidak digunakan, sebab fungsi header pada skrip tersebut memberikan informasi bahwa output yang dikirimkan ke browser memiliki content-type berupa file gambar, bukan file HTML.

ImageArc($img, x, y, l, t, aw, ak, $warna)

Fungsi ini akan menggambar bentuk elips dengan pusat di x,y (0,0 terletak di kiri atas), dengan tinggi t dan lebar l, serta titik awal dan titik akhir diwakili oleh aw dan ak dalam derajat. Dengan demikian, jika t dan l diisi dengan nilai yang sama, kemudian aw dan ak adalah 0 dan 360, maka yang tergambar adalah lingkaran. Berikut ini akan diberikan contoh untuk menggambar elips.

<?
Header(“Content-Type:image/jpeg”);
$img = ImageCreate(300,300);
$biru = ImageColorAllocate($img,0,0,255);
$putih = ImageColorAllocate($img,255,255,255);
ImageFill($img,0,0,$putih);
ImageArc($img,150,150,150,280,0,360,$biru);
ImageJPEG($img);
?>

Untuk diperhatikan, selama ini dalam memberikan contoh-contoh skrip PHP, selalu menggunakan tag-tag HTML, diawali dengan tag <HTML>, <HEAD>, dan seterusnya. Namun kali ini tag-tag tersebut tidak digunakan, sebab fungsi header pada skrip tersebut memberikan informasi bahwa output yang dikirimkan ke browser memiliki content-type berupa file gambar, bukan file HTML.

Karena elips tersebut digambar mulai dari 0 hingga 360 derajat, maka gambar yang dihasilkan akan berupa kurva tertutup. Jika misalnya elips digambar mulai dari 0 hingga 180 derajat, maka hasilnya adalah setengah elips, atau elips dengan kurva terbuka. Untuk menggambar elips dengan kurva selalu tertutup, Anda dapat menggunakan fungsi ImageEllipse. Sintaksnya adalah sebagai berikut:

imageellipse ($img, x, y, l, t, $warna)

Fungsi ini baru terdapat pada PHP 4.0.6 dan membutuhkan GD 2.0.2 atau sesudahnya. Library ini dapat Anda dapatkan di http://www.boutell.com/gd.

Fungsi ImageLine()
Fungsi ini digunakan untuk menggambar garis. Sintaksnya adalah sebagai berikut:

ImageLine($img,x1,y1,x2,y2,$warna)

Parameter x1,y1 merupakan koordinat awal garis dan x2,y2 merupakan koordinat akhir garis. Berikut akan diberikan contoh menggambar garis.

<?
Header(“Content-Type:image/jpeg”);
$img = ImageCreate(300,300);
$biru = ImageColorAllocate($img,0,0,255);
$merah = ImageColorAllocate($img,255,0,0);
$putih = ImageColorAllocate($img,255,255,255);
ImageFill($img,0,0,$putih);
ImageLine($img,0,0,300,300,$biru);
ImageLine($img,0,150,300,150,$merah);
ImageJPEG($img);
?>

Ada sebuah fungsi yang mirip dengan ImageLine(), yaitu ImageDashedLine(), yang digunakan untuk menggambar garis putus-putus. Sintaks penggunaannya sama persis dengan fungsi ImageLine().

Fungsi ImageRectangle()
Fungsi ini digunakan untuk menggambar empat persegi panjang. Sintaksnya adalah sebagai berikut:

ImageRectangle($img,x1,y1,x2,y2,$warna)

Parameter x1,y1 merupakan titik kiri atas dari empat persegi panjang, sedangkan x2,y2 merupakan titik kanan bawahnya. Berikut akan diberikan contoh menggambar empat persegi panjang.

<?
Header("Content-Type:image/jpeg");
$img = ImageCreate(300,300);
$biru = ImageColorAllocate($img,0,0,255);
$merah = ImageColorAllocate($img,255,0,0);
$putih = ImageColorAllocate($img,255,255,255);
ImageFill($img,0,0,$putih);
ImageRectangle($img,0,0,200,200,$biru);
ImageJPEG($img);
?>

Fungsi ImagePolygon()
Fungsi ini digunakan untuk menggambar polygon (kurva banyak sisi atau banyak sudut). Sintaksnya adalah sebagai berikut:

imagepolygon ($img, array_sudut, jml_sudut, $warna)

Parameter array_sudut adalah array yang berisi koordinat dari setiap titik sudut polygon, misalnya $titik[0]=x1, $titik[1]=y1, $titik[2]=x2, $titik[3]=x3, dan seterusnya. Parameter jml_sudut adalah jumlah titik sudut dari polygon yang akan digambar. Berikut akan diberikan contoh menggambar polygon.

<?
Header("Content-Type:image/jpeg");
$img = ImageCreate(300,300);
$warna = ImageColorAllocate($img,157,25,12);
$putih = ImageColorAllocate($img,255,255,255);
ImageFill($img,0,0,$putih);
$titik[0]=0;
$titik[1]=0;
$titik[2]=60;
$titik[3]=30;
$titik[4]=60;
$titik[5]=100;
$titik[6]=120;
$titik[7]=190;
$titik[8]=210;
$titik[9]=60;
ImagePolygon($img,$titik,5,$warna);
ImageJPEG($img);
?>

Karena akan dibuat polygon dengan 5 titik sudut, maka diperlukan array dengan 10 komponen, karena setiap titik sudut memerlukan 2 angka sebagai koordinatnya. Dengan demikian, contoh gambar polygon tersebut akan mempunyai titik sudut pada (0,0), (60,30), (60,100), (120,190), dan (210,60).