Grafika Komputer ( Translasi, Rotasi dan Skala )
Grafika komputer merupakan bidang yang
menarik minat banyak orang. Salah sub bagian dari grafika komputer adalah
pemodelan objek (object modelling). Dalam pemodelan objek dua dimensi (2D),
didapati berbagai objek dapat dimodelkan menurut kondisi tertentu, objek yang
dimodelkan itu perlu dimodifikasi. Pemodifikasian objek ini dapat dilakukan
dengan melakukan berbagai operasi fungsi atau operasi transformasi geometri.
Transformasi ini dapat berupa transformasi dasar ataupun gabungan dari berbagai
transformasi geometri. Contoh transformasi geometri adalah translasi,
penskalaan, putaran (rotasi), balikan. Transformasi ini dikenal dengan
transformasi affine. Pada dasarnya, transformasi ini adalah memindahkan objek
tanpa merusak bentuk.
Ø Tujuan transformasi adalah
:
·
Merubah
atau menyesuaikan komposisi pemandangan
·
Memudahkan
membuat objek yang simetris
·
Melihat
objek dari sudut pandang yang berbeda
·
Memindahkan
satu atau beberapa objek dari satu tempat ke tempat lain, ini biasa dipakai untuk
animasi komputer.
1.
Translasi
Translasi
merupakan suatu operasi yang menyebabkan perpindahan objek 2D dari satu tempat
ke tempat yang lain. Perubahan ini berlaku dalam arah yang sejajar dengan sumbu
X dan sumbu Y. Translasi dilakukan dengan penambahan translasi pada suatu titik
koordinat dengan translation vector, yaitu (tx,ty), dimana tx adalah translasi
menurut sumbu x dan ty adalah translasi menurut sumbu y. Koorinat baru titik
yang ditranslasi dapat diperoleh dengan menggunakan rumus :
x‟
= x + tx (x,y) = titik asal sebelum translasi
y„=
y + ty (x‟,y‟) = titik baru hasil translasi
Translasi
adalah transformasi dengan bentuk yang tetap, memindahkan objek apa adanya.
Setiap titik dari objek akan ditranslasikan dengan besaran yang sama. Dalam
operasi translasi, setiap titik pada suatu entitas yang ditranslasi bergerak
dalam jarak yang sama. Pergerakan tersebut dapat berlaku dalam arah sumbu X
saja, atau dalam arah sumbu Y saja atau keduanya. Translasi juga berlaku pada
garis, objek atau gabungan objek 2D yang lain. Untuk hal ini, setiap titik pada
garis atau objek yang ditranslasi dalam arah x dan y masing-masing sebesar
tx,ty.
Ø
Contoh :
Untuk menggambarkan translasi suatu objek
berupa segitiga dengan koordinat A(10,10) B(30,10) dan C(10,30) dengan
tx,ty(10,20), tentukan koordinat yang barunya ?
Jawab
:
A :
x’=10+10=20
y’=10+20=30
A‟=(20,30)
B : x’=30+10=40
y’=10+20=30
B‟=(40,30)
C : x’=10+10=20
y’=30+20=50
C‟=(20,50)
2.
Penskalaan
Penskalaan adalah
suatu operasi yang membuat suatu objek berubah ukurannya baik menjadi mengecil
ataupun membesar secara seragam atau tidak seragam tergantung pada faktor
penskalaan (scalling factor) yaitu (sx,sy) yang diberikan. sx adalah faktor
penskalaan menurut sumbu x dan sy faktor penskalaan menurut sumbu y. Koordinat
baru diperoleh dengan
x‟ = x + sx (x,y) = titik asal sebelum
diskala
y„= y + sy (x‟,y‟) = titik setelah
diskala
Nilai lebih dari 1
menyebabkan objek diperbesar, sebaliknya bila nilai lebih kecil dari 1, maka
objek akan diperkecil. Bila (sx,sy) mempunyai nilai yang sama, maka skala
disebut dengan uniform scalling.
Ø Contoh :
Untuk menggambarkan skala suatu objek berupa
segitiga dengan koordinat A(10,10) B(30,10) dan C(10,30) dengan (sx,sy) (3,2),
tentukan koordinat yang barunya ?
Jawab :
A :
x‟=10*3=30
y‟=10*2=20
A‟=(30,20)
B
: x‟=30*3=90
y‟=10*2=20
B‟=(90,20)
C :
x‟=10*3=30
y‟=30*2=60
C‟=(30,60)
3.
Perputaran
(Rotasi)
Putaran adalah
suatu operasi yang menyebabkan objek bergerak berputar pada titik pusat atau
pada sumbu putar yang dipilih berdasarkan sudut putaran tertentu. Untu
melakukan rotasi diperlukan sudut rotasi dan pivot point (xp,yp) dimana objek
akan dirotasi. Putaran biasa dilakukan pada satu titik terhadap sesuatu sumbu tertentu
misalnya sumbu x, sumbu y atau garis tertentu yang sejajar dengan sembarang
sumbu tersebut. Titik acuan putaran dapat sembarang baik di titik pusat atau
pada titik yang lain. Aturan dalam geometri, jika putaran dilakukan searah jarum jam, maka nilai
sudutnya adalah negatif. Sebaliknya, jika dilakukan berlawanan arah dengan arah
jarum jam nilai sudutnya adalah positif.
Rotasi dapat dinyatakan
dengan :
x‟=r cos(Ø+0) = r cos Ø cos 0 - r sin Ø sin
0
y‟=r sin (Ø+0) = r soc Ø sin 0 + r sin Ø
cos 0
sedangkan di ketahui
x= r cos Ø, y = r sin Ø
lakukan subtitusi, maka :
x‟=x cos 0 - y sin 0
y‟=x sin 0 + y cos 0
Ø Contoh :
Untuk menggambarkan
rotasi suatu objek berupa segitiga dengan koordinat A(10,10), B(30,10) dan
C(10,30) dengan sudut rotasi 30o terhadap titik pusat cartesian (10,10),
dilakukan dengan menghitung koordinat hasil rotasi tiap titik satu demi
satu.
Jawab :
Titik A
x‟= xp+(x - xp) cos 0 - (y - yp) sin 0
=10+(10-10)*0.9 – (10-10)*0.5 = 10
y‟= yp+(x - xp) sin 0 + (y - yp) cos 0
= 10+(10-10)*0.5 – (10-10)*0.9 = 10
Titik A‟(10,10)
Titik B
x‟= xp+(x - xp) cos 0 - (y - yp) sin 0
=10+(30-10)*0.9 – (10-10)*0.5 = 28
y‟= yp+(x - xp) sin 0 + (y - yp) cos 0
= 10+(30-10)*0.5 – (10-10)*0.9 = 20
Titik B‟(28,20)
Titik C
x‟= xp+(x - xp) cos 0- (y - yp) sin 0
=10+(10-10)*0.9 – (30-10)*0.5 = 0
y‟= yp+(x - xp) sin 0 + (y - yp) cos 0
= 10+(10-10)*0.5 – (30-10)*0.9 = 28
Titik A‟(0,28)
Titik A
x‟= xp+(x - xp) cos 0 - (y - yp) sin 0
=10+(10-10)*0.9 – (10-10)*0.5 = 10
y‟= yp+(x - xp) sin 0 + (y - yp) cos 0
= 10+(10-10)*0.5 – (10-10)*0.9 = 10
Titik A‟(10,10)
Titik B
x‟= xp+(x - xp) cos 0 - (y - yp) sin 0
=10+(30-10)*0.9 – (10-10)*0.5 = 28
y‟= yp+(x - xp) sin 0 + (y - yp) cos 0
= 10+(30-10)*0.5 – (10-10)*0.9 = 20
Titik B‟(28,20)
Titik C
x‟= xp+(x - xp) cos 0- (y - yp) sin 0
=10+(10-10)*0.9 – (30-10)*0.5 = 0
y‟= yp+(x - xp) sin 0 + (y - yp) cos 0
= 10+(10-10)*0.5 – (30-10)*0.9 = 28
Titik A‟(0,28)
Itu kok titik c rotasinya hhasilnnyya segitu?
BalasHapus