Minggu, 03 April 2011

Program Gambar Garis Diagonal dengan Bahasa C
                Garis doagonal adalah garis yang membentang paralel dengan 45 derajat dari sumbu-X atau sumbu-Y dengan asumsi kita mulai dengan titik P1 dengan koordinat X1 dan Y1 lebih kecil dari pada X2 dan Y2 dari P2 atau sebaliknya.
Algoritma:
1.       Menentukan titik awal (P1) dan titik akhir (P2)
2.       Periksa posisi sumbu-sumbu (koordinat)
Jika titik akhir  < titik awal, lakukan inkrementasi terhadap sumbu-X dan sumbu-Y dari titik awal sampai titik akhir. Kalau tidak, maka lakukan dekrementasi terhadap sumbu-X dan sumbu-Y dari titik awal sampai titik akhir.
3.       Tampilkan garis menggunakan nilai parameter koordinat yang telah dihitung.
Coding dengan bahasa C:


draw_diag(x1,y1,x2,y2)
                {              int i;
                                If(x1<x2)&&(y1<y2)
                                                { do        { putpixel(x1,y1,color);
                                                                   x1++;
                                                                   y1++;
                                                                } while(x1==x2)//(y1==y2)
                                                }
                                Else
                                                { do        { putpixel(x1,y1,color);
                                                                   x1--;
                                                                   y1--;
                                                                } while(x1==x2)//(y1==y2)
                                                }
}


Dalam perintah draw_diag(), yang perlu kita perhatikan adalah posisi di mana iterasi berhenti. Ada dua kemungkinan, yaitu:


Jika
                Nilai x1 = x2
Atau
                Nilai y1 = y2


Jadi  bilamana posisi telah tercapai maka iterasii akan langsung berhenti. Silakan coba dan pikirkan! Dengan mencoba dan mencermati kesalahan ini maka Anda pasti akan lebih memahami.

Tidak ada komentar:

Posting Komentar