Minggu, 27 November 2011

Apakah Dua Kotak Bersinggungan? Menggunakan Intersect dengan C#

Selamat siang nih. . . .
Semester ini merupakan semester terburuk buat gue nih, semua rasa malas sampai akhirnya berada pada titik terendah dalam hidup gue, tanpa arah tujuan. . .huff. . . .
Ternyata bukan hanya gue yang ngalami hal ini, temen2 gue juga ngalamin hal serupa, ya kita sebut aja lagi GALAU. .n akhirnya dapat kita simpulkan musim ini pada terjangkit penyakit SIGU "Syndrome Galau". .termasuk gue yang kena syndrome tu tingkat dewa akut. .hehehe
Kalo dalam kondisi galau, da yang usil/mbikin gara2 sedikit pasti dah emosi memuncak,bisa - bisa "Senggol Bacok". .hoooo. . . .Tapi gak hanya manusia aja yang bisa ngelakuin hal itu, programpun bahkan bisa. .gak percaya?!! cekidot.

Programnya sini gan. .
Maksudnya, dalam program ini kita ngetahui kapan saat sebuah object tu bersinggungan dengan object yang lain. ..so bisa tampil tulisan "Senggol Bacok" saat object tu bersentuhan. .sorry gan agak lebay..hehehehe
Kyak gini gan. .

Langsung aja gan lanjut ke pembikinannya, ,
Yang perlu dipersiapkan di formnya cuman label aja yah buat menampilkan text doank. .Disini gue manfaatin metode paint dalam C# dalam penggambaran objectnya (kotaknya). .di bawah ini penempatan posisi kotak yang akan digambar di form!!
Rectangle im1 = new Rectangle(50,50,75,50);
Rectangle im2 = new Rectangle(175,55,75,50);

Yang ini penggambaran dengan form paintnya pada form. .dan function ini juga yang bakal terus dipanggil untuk setiap penggambaran ataupun pergerakan objectnya. .
void MainFormPaint(object sender, PaintEventArgs e)
{
 e.Graphics.DrawRectangle(Pens.Blue,im1);
 e.Graphics.DrawRectangle(Pens.Red,im2);
  
 if (im1.IntersectsWith(im2)) {
  lblKet.Text = "Senggol Bacok";
 }
 else {
  lblKet.Text = "Tidak Bersenggolan";
 }
}
Di atas terlihat adanya "IntersectWith" fungsi inilah yang digunakan untuk mengetahui Apakah Kotak tersebut Bersinggungan apa tidak. .

nah yang ini yang terakhir buat mindahin sikotak biru. .
void MainFormKeyDown(object sender, KeyEventArgs e)
{
 if (e.KeyCode == Keys.Up)
 {
  im1.Offset(0,-10);
 }
 else if (e.KeyCode == Keys.Down) {
  im1.Offset(0,10);
 }
 else if (e.KeyCode == Keys.Left) {
  im1.Offset(-10,0);
 }
 else if (e.KeyCode == Keys.Right) {
  im1.Offset(10,0);
 }
 this.Invalidate();
}

Oke dah coba jalanin, n gerakin dengan panah. .gimana hasilnya. .
Yupz semoga bisa menghibur buat yang hatinya galau yah. . .hehehehe :peace:

3 comments:

CEO GALAU berkunjung ke blog anda..

Wah jdi malu di kunjungi CEO nih. . .:p

Posting Komentar

Twitter Delicious Facebook Digg Stumbleupon Favorites More