Transformasi Geometri
TUJUAN PEMBELAJARAN
Pembaca bisa memahami konsep transformasi geometri 2-D dan 3-D : translasi, rotasi,
Refleksi, Shear dan scalling.
OUTCOME PEMBELAJARAN
Pembaca bisa menghitung transformasi geometri 2-D secara manual
Pendahuluan
Transformasi geometri pada dasarnya adalah mengubah kedudukan setiap titik, misalkan
sebuah titik A(x,y) mengalami transformasi sehingga menjadi A’(x’,y’) menggunakan
persamaan atau algoritma tertentu. Hal ini berarti terdapat suatu fungsi T yang memetakan
koordinat A menjadi koordinat A’ dan dituliskan sebagai :
A’=T(A).
Transformasi yang banyak digunakan di dalam grafika komputer adalah transformasi affin
(affine tranformation), yang mempunyai bentuk yang sangat sederhana. Sejumlah
transformasi dasar dari transformasi affin antara lain adalah : penggeseran (translation),
penskalaan (scaling), pemutaran (rotation) dan shearing.
x’ = x + tx
y’ = y + ty Y
y’ A’(x’,y’)
atau dapat disusun sebagai berikut : A(x,y) tx
y
x’ = x + 0.y + tx
y’ = 0.x + y + ty 0 x ty x’ X
atau dapat disusun dalam bentuk matriks :
1
Contoh 4.1
Tentukan posisi dari segitiga ABC yang dibentuk oleh titik-titik A(20,20), B(100,20) dan
80
C(60,120) jika dilakukan penggeseran pada 70 .
Jawab:
xa' xb' xc' 1 0 20 100 60 80 80 80 100 180 140
' .
ya y b' y c' 0 1 20 20 120 70 70 70 90 90 190
x’ = Sx(x-a) + a
y’ = Sy(y-b) + b
Y A’(x’,y’)
y’
A(x,y)
y Sy(y-b)
P(a,b) y-b
b
x-a
0 a x x’ X
Sx(x-a)
Gambar 4-2
atau
x’ = Sxx + a – Sxa
y’ = Syy + b – Syb
x' S x 0 x a S x a
y ' 0 .
S y y b S y b
2
Jika pusat penskalaannya adalah sumbu koordinat P(0,0), maka a = 0 dan b = 0, sehingga
persamaannya menjadi :
x' S x 0 x
y ' 0 .
S y y
Matrik penyajian untuk penskalaan terhadap titik pusat P(0,0) adalah
S x 0
T= .
0 S y
Contoh 4.2
Tentukan posisi dari segitiga ABC yang dibentuk oleh titik-titik A(20,20), B(100,20) dan
4
C(60,120), jika dilakukan penskalaan dengan faktor skala 2 terhadap titik pusat P(0,0)
Jawab:
x a' xb' xc' 4 0 20 100 60 80 400 240
' .
ya y b' y c' 0 2 20 20 120 40 40 240
Yaitu A’(80,40), B’(400,40) dan C’(240,240)
y b
sin r sin y b
r
Y A’(x’,y’)
xb y’
cos r cos x a
r y A(x,y)
y’-b
P(a,b) y-b
Pandang segitiga siku-siku PA’R, maka : b Q
x’-a R
y 'b 0 a x’ x X
sin ( ) r sin ( ) y 'b
r x-a
x' a
cos( ) r cos( ) x' a Gambar 4-3
r
3
r sin ( ) r sin . cos r cos . sin y 'b
Persamaan x’ dan y’ tersebut dapat disusun dalam bentuk matriks sebagai berikut :
Bila pusat rotasinya berada pada sumbu koordinat P(0,0), maka persamaan tersebut menjadi :
cos sin
T = sin .
cos
Contoh 4.3
Tentukan posisi dari segitiga ABC yang dibentuk oleh titik-titik A(20,20), B(100,20) dan
C(60,120), jika dilakukan pemutaran dengan pusat sumbu koordinat dengan rotasi putarnya
180 derajat berlawanan arah dengan arah jarum jam.
Jawab :
4
x x 1 0
1. refleksi terhadap sumbu y ( yang mengubah y menjadi y ) adalah : 0
1
x x 1 0
2. refleksi terhadap sumbu x ( yang mengubah y menjadi y ) adalah : 0 1
x y 0 1
3. refleksi terhadap garis y = x ( yang mengubah y menjadi x ) adalah : 1
0
Contoh 4.4
Tentukan posisi dari segitiga ABC yang dibentuk oleh titik-titik A(10,2), B(10,8) dan C(3,2)
jika dilakukan pencerminan terhadap sumbu x, sumbu y , dan garis y = x.
Jawab :
5
Contoh 4.5
Carilah persamaan bayangan sebuah garis y = 2x + 1 yang dipetakan oleh matrik A =
3 1
2 1
Jawab :
x' 3 1 x
y ' = 2 1
y
Dan
1
x 3 1 x' 1 1 x '
y = y ' = 2 3
2 1
y '
Sehingga
x= x’ – y’
y = -2x’ + 3y’
6
4.5 Shearing
Shearing adalah suatu proses untuk menstransformasikan obyek dengan cara ‘membebani’
obyek tersebut pada arah tertentu. Contoh sederhana proses shearing adalah pembentukan
huruf italic (miring) dari sembarang huruf. Proses shearing suatu titik A(x,y) menjadi titik
A’(x’,y’) ke arah sumbu X sebesar Shx dan sumbu Y sebesar Shy dinyatakan dalam
persamaan sebagai :
x’ = x + Shx y
y’ = Shy x + y
x' 1 Shx x
y ' Sh .
1 y
y
1 Shx
T= .
Sh y 1
Contoh 4.6
Tentukan posisi dari segitiga ABC yang dibentuk oleh titik-titik A(20,20), B(100,20) dan
C(60,120), jika dilakukan shearing dengan bobot kearah sumbu x adalah Shx = 2 dan bobot
kearah sumbu y adalah Shy = 3 yang pusatnya terletak di pusat koordinat.
Jawab :
7
4.6 Sistem Koordinat Homogen 2D
Dari berbagai bentuk matrik penyajian, terlihat bahwa hanya transformasi translasi saja yang
belum bisa dinyatakan sebagai matrik penyajian, karena diperlukan operasi perkalian dan
penjumlahan, sedangkan pada jenis transformasi yang lain cukup diperlukan operasi perkalian
matriks saja, sehingga perlu dicari suatu cara agar translasipun juga bisa dinyatakan dalam
operasi perkalian matriks. Hal ini dapat dilakukan dengan dengan menggunakan sistem
koordinat homogen.
Sistem koordinat homogen adalah sistem koordinat yang mempunyai satu dimensi lebih
tinggi dari sistem koordinat yang ditinjau. Sebagai contoh, sistem koordinat homogen dari
sistem koordinat dua dimensi adalah sistem koordinat 3 dimensi dengan cara menentukan
salah satu sumbunya sebagai suatu konstanta. Dengan menggunakan sistem koordinat
homogen, persamaan umum transformasi titik A(x,y) menjadi A’(x’,y’) dapat ditulis sebagai :
x' a c t x x
y ' . b d ty
y
1
0 0 1
1
Dari persamaan tersebut, maka masing-masing transformasi diatas bisa dituliskan sebagai
berikut :
1 0 tx
t y , sehingga
Translasi : T = 0 1
0 0 1
x' 1 0 tx x
y ' t y y
= 0 1
1 0 0 1
1
S x 0 0
0 , sehingga
Scalling : T = 0 Sy
0 0 1
8
x' S x 0 0 x
y ' 0 y
= 0 Sy
1 0 0 1
1
cos sin 0
sin cos 0
Rotasi berlawanan arah jarum jam (sudut putar positif): T = ,
0 0 1
sehingga
1 Shx 0
0 , sehingga
Shearing : T = Sh y 1
0 0 1
x' 1 Shx 0 x
y ' 0 y
= Sh y 1
1 0 0 1
1
1 0 0
0 1 0
Refleksi terhadap sumbu x : T = , sehingga
0 0 1
x' 1 0 0 x
y ' 0 1 0 y
=
1
0 0 1
1
1 0 0
0 0
Refleksi terhadap sumbu y : T = 1 , sehingga
0 0 1
x' 1 0 0 x
y ' 0 1 0 y
=
1
0 0 1
1
0 1 0
1 0
Refleksi terhadap garis y=x : T = 0 , sehingga
0 0 1
x' 0 1 0 x
y ' 1 0 0 y
=
1
0 0 1
1
9
Contoh 4.7
Tentukan posisi dari segitiga ABC yang dibentuk oleh titik-titik A(10,2), B(10,8) dan C(3,2)
jika dilakukan transformasi berikut :
a) translasi kearah sumbu x = 4, kearah sumbu y = −2
b) Scalling dengan skala kearah sumbu x = 2, kearah sumbu y = −2
c) Diputar 90o berlawanan jarum jam
d) Shearing kearah sumbu x = −2, kearah sumbu y = 3
e) Refleksi terhadap sumbu x
f) Refleksi terhadap sumbu y
g) Refleksi terhadap garis y = x
Jawab:
x' 1 0 4 10 10 3 14 14 7
y ' 0 2 2 2 0 0
a) = 1 8 = 6
1 0 0 1
1 1 1
1 1 1
x' 2 0 0 10 10 3 20 20 6
y ' 0 2 0 2 2 4 16 4
b) = 8 =
1 0 0 1
1 1 1
1 1 1
x' 1 2 0 10 10 3 6 6 1
y ' 3 1 0 2 8 2 20 38 11
d) = =
1
0 0 1 1
1 1
1
1 1
x' 1 0 0 10 10 3 10 10 3
y ' 0 1 0 2 8 2 2 8 2
e) = =
1
0
0 1
1
1 1
1 1 1
x' 1 0 0 10 10 3 10 10 3
y ' 0 1 0 2 8 2 2 8 2
f) = =
1
0 0 1
1 1 1
1 1 1
10
x' 0 1 0 10 10 3 2 8 2
y ' 1 0 2 2 10 3
g) = 0 8 = 10
1
0 0 1
1 1 1
1 1 1
Contoh 4.8
Tentukan posisi dari segitiga ABC yang dibentuk oleh titik-titik A(5,5), B(10,5) dan C(8,10)
6
jika dilakukan komposisi transformasi berikut: penggeseran pada 6 , dilanjutkan dengan
rotasi 90º berlawanan jarum jam, kemudian diakhiri dengan penskalaan dengan faktor skala
3
3 terhadap titik pusat P(0,0).
Jawab:
Dalam hal ini kita harus menghitung matrik komposisi berikut
11
3
Yang terakhir diakhiri dengan operasi penskalaan dengan faktor skala 3 terhadap titik
pusat P(0,0).
y
(x’, y’, z’)
x' 1 0 0 Tx x
y ' 0 1 0 T y y
z ' 0 0 1 Tz z
1 0 0 0 1 1
12
4.8.2 Penskalaan (Scalling)
x' S x 0 0 0 x
y ' 0 Sy 0 0 y
z' 0 0 Sz 0 z
1 0 0 0 1 1
4.8.3 Rotasi
Rotasi terhadap sumbu-z sebesar sudut Ө.
x
(x, y, z)
13
x ' x cos y sin
y ' x sin y cos
z' z
Dengan cara yang sama diperoleh rotasi terhadap sumbu-x sebesar sudut Ө.
x' x
y ' y cos z sin
z ' y sin z cos
x' 1 0 0 0 x
y ' 0 cos sin 0 y
z ' 0 sin cos 0 z
1 0 0 0 1 1
14
Ringkasan
Transformasi geometri pada dasarnya adalah proses yang mengubah kedudukan setiap titik
yang membentuk obyek. Transformasi yang banyak digunakan di dalam grafika komputer
adalah transformasi affin (affine tranformation), yaitu: penggeseran (translation), penskalaan
(scaling), pemutaran (rotation) dan shearing.
x ' 1 0 x m
y ' 0 .
1 y n
x' m 0 x a ma
y ' 0 .
n y b nb
15
x x 1 0
1. refleksi terhadap sumbu y ( yang mengubah y menjadi y ) adalah : 0
1
x x 1 0
2. refleksi terhadap sumbu x ( yang mengubah y menjadi y ) adalah : 0 1
x y 0 1
3. refleksi terhadap garis y = x ( yang mengubah y menjadi x ) adalah : 1
0
x ' 1 m x
y ' n .
1 y
Sistem koordinat homogen adalah sistem koordinat yang mempunyai satu dimensi lebih
tinggi dari sistem koordinat yang ditinjau.
x' 1 0 m x
y ' 0 n y
= 1
1
0 0 1
1
x' 1 m 0 x
y ' n 0 y
= 1
1
0 0 1
1
16
x' 1 0 0 x
y ' 0 1 0 y
=
1
0 0 1
1
x' 1 0 0 x
y ' 0 0 y
= 1
1
0 0 1
1
x' 0 1 0 x
y ' 1 0 y
= 0
1
0 0 1
1
Soal-Soal Latihan
1. Tentukan posisi dari segitiga ABC yang dibentuk oleh titik-titik A(30,25), B(80,50)
10
dan C(60,20) jika dilakukan penggeseran pada 35 .
2. Tentukan posisi dari segitiga ABC yang dibentuk oleh titik-titik A(23,42), B(30,22)
4
dan C(60,12), jika dilakukan penskalaan dengan faktor skala 2 terhadap titik pusat
P(0,0)
3. Tentukan posisi dari segitiga ABC yang dibentuk oleh titik-titik A(20,24), B(15,20)
dan C(60,12), jika dilakukan pemutaran dengan pusat sumbu koordinat dengan rotasi
putarnya 30 derajat berlawanan arah dengan arah jarum jam.
17
4. Tentukan posisi dari segitiga ABC yang dibentuk oleh titik-titik A(12,24), B(15,18)
dan C(35,20) jika dilakukan pencerminan terhadap sumbu x, sumbu y , dan garis y =x.
2 3
5 4
6. Tentukan posisi dari segitiga ABC yang dibentuk oleh titik-titik A(20,20), B(100,20)
dan C(60,120), jika dilakukan shearing dengan bobot kearah sumbu x adalah m = -2
dan bobot kearah sumbu y adalah n = 5 yang pusatnya terletak di pusat koordinat.
7. Tentukan posisi dari segitiga ABC yang dibentuk oleh titik-titik A(10,5), B(15,18) dan
C(30,25) jika dilakukan transformasi berikut :
a) translasi kearah sumbu x = 2, kearah sumbu y = −3
b) Scalling dengan skala kearah sumbu x = 5, kearah sumbu y = −3
c) Diputar 45o berlawanan jarum jam
d) Shearing kearah sumbu x = −3, kearah sumbu y = 4
e) Refleksi terhadap sumbu x
f) Refleksi terhadap sumbu y
g) Refleksi terhadap garis y = x
18