Kliping adalah pemotongan suatu objek dengan bentuk tertentu
Alasan dilakukannya kliping :
- Menghindari perhitungan koordinat pixel yang rumit (karenanya kliping dilakukan sebelum rasterisasi).
- Interpolasi parameter
Dan untuk sarana pemotong objek dinamakan jendela kliping. Fungsi jendela kliping adalah untuk mengidentifikasi objek yang akan di-clipping dan memastikan bahwa data yang diambil hanya yang terletak di dalam jendela clipping.
Bentuk jendela kliping :
- Segi empat, segi tiga
- Lingkaran atau ellips
- Polygon dan lain-lain.
Metode clipping garis :
1. Cohen Sutherland
2. Liang Barsky
3. Blinn’s
Clipping Line :
Mencari Nilai u:Clipping line :
Garis pertama pada titik (1,1) dan (8,8)
Perhitungannya:
Dengan xmin=3
u = 3-1/8-1
= 2/7
Nilai u terbukti a 0 ≤ 2/7 ≤ 1
Maka :
y' = 1 + 2/7 (7)
=3
cek atas:
dengan xmin = 5
u = 5-3/8-3
u = 2/5
Nilai u terbukti à 0 ≤ 2/5 ≤ 1
Maka :
y' = 3 + 2/5 (5)
= 5
Kesimpulan:
Maka clipping garis pertama didapatkan dengan titik: (3,3) dan (5,5)
Garis Kedua pada titik (2,3) dan (10,3) Perhitungannya Dengan xmin=3
u = 3-2/10-2
u = 1/8
Nilai u terbukti u 0 ≤ 1/8 ≤ 1
Maka:
y' = 3 + 3-2/10-2(0) = 3
Cek titik selanjutnya:
Dengan xmax=9
u = 9-3/10-3 = 6/7
Nilai u terbukti u 0 ≤ 6/7 ≤ 1
Maka :
y' = 3 + 6/7 (0)
= 3
Kesimpulan: Maka clipping garis kedua didapatkan dengan titik: (3,3) dan (9,3)
Gambar hasil clipping garis tersebut:
Menurut Cohen Sutherland
Hubungan antara sebuah garis dengan jendela kliping dapat ditulis seperti hubungan antara titik awal dan titik akhir sebuah garis dengan jendela kliping. Untuk menentukan relasi tersebut diperlukan suatu struktur data pembantu yang disebut pointcode.
Berdasarkan urutan kode, pointcode ditentukan :
PointCode :
Contoh clipping line cohen Sutherland:
Xmin=3, Xmax=9, Ymin=2, Ymax=5
Garis pertama: | Garis Kedua |
Po:(1,3) | Po:(3,6) |
P1:(6,7) | P1:(10,6) |
Ketentuan:
Kiri jika x < xmin =1
Kanan jika x > xmax =1
Bawah jika y < ymin =1
Atas jika y > ymax =1
Kemudian:Po AND p1
0001
1000 AND
0000 kemungkinan ada yang dapat diantara viewport
Kemudian:Po AND p1
1000
1010 AND
1000 tidak ada garis yang akan ditampil di viewport
Hasil gambarnya:
Widih baru posting yeuh ...
BalasHapushahaha udah dari kemaren waktu udah selesai eh modem gue mati ya ni ulang lagi
BalasHapus