Pengertian Transformasi geometric transformation Transformasi = mengubah deskripsi koordinat dari objek Transformasi dasar: Translasi Rotasi Penskalaan
Translasi Mengubah posisi objek: perpindahan lurus Menambahkan translation distance t & t ke tiap titik dari objek (,) translasi (, ) =+t =+t Pasangan (t,t ) disebut dengan translation vector
Contoh translasi
Rotasi Mengubah posisi objek: perpindahan sesuai jalur sirkular Perlu dispesifikasikan: Sudut rotasi θ (rotation angle) Titik tumpu rotasi ( r, r ) (pivot point) Konsensus ttg θ: Positif: putaran berlawanan arah jarum jam Negatif: putaran searah jarum jam
Rotasi terhadap titik (0,0) = r cos φ = r sin φ r = r cos (φ+θ) = r cos φ cos θ - r sin φ sin θ = cos θ - sin θ = r sin (φ+θ) = r cos φ sin θ + r sin φ cos θ = sin θ + cos θ
Rotasi terhadap titik ( r, r ) = r + (- r ) cos θ - (- r ) sin θ = r + (- r ) sin θ + (- r ) cos θ r 1. Translasi t = - r & t = - r 2. Rotasi sebesar θ 3. Translasi t = r & t = r
Rigid-bod transformation Transformasi ang hana mengubah posisi objek, tanpa mengubah bentukna Setiap titik pada objek mendapat perlakuan ang sama Transformasi dasar: Translasi Rotasi
Rigid-bod transformation: teknik Transformasikan hana titik-titik ang terlibat dalam deskripsi objek Titik-titik lain digambar ulang dgn algoritma pembangkit primitif grafika
Rigid-bod transformation: translasi
Rigid-bod transformation: rotasi
Penskalaan Mengubah ukuran objek (memperbesar / memperkecil) Mengubah jarak setiap titik pada objek terhadap titik acuan Perlu dispesifikasikan: Faktor penskalaan: s & s real: (0..N] Titik acuan ( f, f ) Jenis penskalaan: Uniform: s = s Differential: s s
Penskalaan terhadap titik (0,0) =.s =.s Bentuk objek berubah Posisi objek berubah 0<S<1: lebih dekat ke (0,0) S=1: ukuran tetap S>1: lebih jauh dari (0,0)
Penskalaan terhadap titik ( f, f ) = f + (- f ).s = f + (- f ).s 1. Translasi t = - f & t = - f 2. Penskalaan dgn S & S 3. Translasi t = f & t = f =. s + f(1-s) =. s + f(1-s) f(1-s) & f(1-s) konstan untuk semua (,) ( f, f )
Penskalaan uniform untuk poligon, lingkaran dan elips Poligon: Transformasikan titik-titik sudut Gambar ulang tiap garis Lingkaran: Transformasikan titik pusat Sesuaikan ukuran jari-jari Gambar ulang tiap titik Elips: Transformasikan sumbu maor dan minor Gambar ulang tiap titik
Representasi dalam matriks Memudahkan perhitungan transformasi Setiap titik direpresentasikan sebagai vektor kolom P=(,) P= Koefisien transformasi direpresentasikan sebagai vektor atau matriks
Persamaan matriks translasi Translation distance t & t T= P = P + T t t t ' + = t t ' ' + = 3 5 1 2 4 4-6 3 (2,1) (-4,4)
Persamaan matriks rotasi: pivot = (0,0) = cos θ - sin θ = sin θ + cos θ (2,7) ' = cosθ ' sinθ sinθ cosθ 0 0 7 = cos( 90) sin( 90) 2 0 0 2 sin( 90) cos( 90) 7 (7,-2)
Persamaan matriks rotasi: pivot = ( r, r ) = r + (- r ) cos θ - (- r ) sin θ = + (- ) sin θ + (- ) + = r r r r θ θ θ θ cos sin sin cos ' ' = r + (- r ) sin θ + (- r ) cos θ + = 2 1 3 7 cos90 sin90 sin90 cos90 2 1 8 0 0 0 0 0
Persamaan matriks penskalaan =.s =.s = S S 0 0 ' ' = f + (- f ).s = f + (- f ).s + = f f f f S S 0 0 ' '
Transformasi Komposit Dari beberapa penjelasan sebelumna dinatakan bahwa suatu transformasi dapat disusun menjadi urutan dari beberapa transformasi Contoh: Rotasi dengan sumbu rotasi ( c, c ) Bila kita melakukan representasi transformasi sebagai sebuah matrik, maka kita perlu menghasilkan matrik homogen => sehingga proses transformasi dapat dihitung sebagai proses perkalian matrik
Matrik Homogen 2D Dinatakan bahwa proses transformasi adalah perkalian matrik sehingga untuk operasi translasi bila dinatakan dalam matrik homogen menjadi: X Y 1 = 1 0 t 0 1 t 0 0 1 X Y 1
Matrik Homogen 2D Sedangkan untuk penskalaan dengan titik acuan (0,0) X Y 1 = S 0 0 0 S 0 0 0 1 X Y 1 Dengan mekanisme matrik homogen maka kita dapat menentukan hasil dari penskalaan dengan titik acuan ( f, f ) dengan perkalian matrik
Matrik Homogen 2D Penskalaan dengan titik acuan ( f,, f ) dapat dinatakan sebagai: 1. Translasi t = - f & t = - f = A 2. Penskalaan dgn S & S = B 3. Translasi t = f & t = f = C Matrik Homogen : C.B.A Proses ang sama dapat dilakukan untuk menelesaikan transformasi ang lainna