VEKTOR
Koordinat Homogen (1)
Pada beberapa sistem grafika dan
OpenGL, titik dan vektor dinyatakan
dalam koordinat homogen.
Artinya perwakilan titik dan vektor
dalam 2D dinyatakan bukan dengan
2 nilai (x,y), tetapi dengan 3 nilai
yaitu (x, y, v). Sedangkan dalam
3D dengan 4 nilai yaitu (x,y, z, v).
Koordinat Homogen (2)
Aturan yang dipakai dalam
penentuan nilai v adalah sbb:
Untuk titik, nilai v = 1
Untuk vektor, nilai v = 0
Misalnya:
Titik (2, 4) menjadi (2, 4, 1)
Vektor (3, 5) menjadi (3, 5, 0)
Titik (3, 4, 1) menjadi (3, 4, 1, 1)
Vektor (3, 6, 7) menjadi (3, 6, 7, 0)
Kombinasi Affine pada Vektor (1)
Kombinasi linear dari m vektor v1,
v2, …, vm adalah:
w = a1v1 + a2v2 + … + amvm
dengan a1, a2, …, am adalah skalar
Kombinasi linear dari vektor
merupakan kombinasi affine jika
a1 + a2 + … + am = 1
Kombinasi Affine pada Vektor (2)
Contoh:
3a + 2b – 4c merupakan kombinasi
affine karena 3+2-4=1.
3a + b – 4c bukan merupakan
kombinasi affine karena 3+1-4=01
Kombinasi Affine Titik-Titik (1)
Diketahui 2 titik P = (P1, P2, P3, 1)
dan R = (R1, R2, R3, 1), dengan
skalar f dan g, maka:
fP+gR = (fP1+gR1, fP2+gR2,
fP3+gR3,f+g)
merupakan vektor jika f+g = 0
Jika koefisien dari kombinasi linear
dijumlahkan = 1, maka persamaan
tersebut disebut kombinasi affine.
Kombinasi Affine Titik-Titik (2)
Hanya kombinasi linear titik-titik yang
valid yang merupakan kombinasi affine.
Contoh:
0.3P + 0.7R ok (titik yang valid)
2.7P – 1.7R ok
0.5P + 0.5R ok
P + R tidak ok
0.3P + 0.9R – 0.2Q ok
P + Q – 0.9R tidak ok
Kombinasi Affine Titik-Titik (3)
Perhatikan penjumlahan dari
sebuah titik, A, dengan sebuah
vektor, v, yang diskala dengan
bilangan t: A+tv, dimana hasil
penjumlahan tersebut merupakan
sebuah titik. Jika v merupakan
perbedaan antara titik B dan titik A,
v = B – A, maka kita mempunyai
titik P = A + t (B – A)
Kombinasi Affine Titik-Titik (4)
P = A + t (B – A)
P = t B + (1 – t) A
Yang dapat dilihat sebagai
kombinasi affine dari titik-titik. Jadi
kombinasi affine titik-titik dapat
ditulis sebagai sebuah titik
ditambah dengan sebuah vektor.
Interpolasi Linier dari 2 Titik (1)
P = A (1 – t) + Bt
Membentuk sebuah interpolasi linier
antara titik A dan titik B. Itu berarti
bahwa komponen x, Px (t), menyediakan
sebuah nilai yaitu bilangan pecahan kecil t
antara nilai Ax dan Bx, dan demikian juga
untuk Py (t) (dan dalam 3D, komponen z).
Ini adalah sebuah operasi penting yang
cukup untuk menggunakan lerp() untuk
interpolasi linier.
Interpolasi Linier dari 2 Titik (2)
Dalam dimensi satu, lerp(a, b, t)
menyediakan sebuah bilangan
pecahan kecil t dari a ke b.
Contoh:
float lerp (float a, float b, float t)
{
return a + (b – a) *t;
//return a float
}
Interpolasi Linier dari 2 Titik (3)
Dalam cara yang sama, satu hal yang
sering terjadi adalah ingin menghitung
titik P(t) yaitu bilangan pecahan kecil t
dari jalur sepanjang garis lurus dari titik A
ke titik B. Titik ini sering disebut “tween”
(singkatan dari “in-between”) pada t
antara titik A dan titik B. Masing-masing
komponen dari titik hasil dibentuk sebagai
lerp () dari komponen yang bersesuaian
dengan A dan B.
Interpolasi Linier dari 2 Titik (4)
Diketahui A = (4,9) dan B = (3,7).
Kalau t = 0.4. Berapa hasil
Tween(A,B, 0.4) ?
Jawab :
Untuk komponen x :
4 + (3-4) * 0.4 = 4 – 0.4 = 3.6
Untuk komponen y :
9 + (7-9) * 0.4 = 9 – 2*0.4 = 8.2
Jadi Tween(A,B, 0.4) = (3.6, 8.2)
Tweening untuk Seni & Animasi (1)
nilai t. b
C
t = 0 L(0) mengevaluasi C, L
L
Bentuk normal titik untuk
persamaan sebuah garis (2)
Misalkan sebuah garis L melalui titik C dan B
Contoh:
Misalkan garis L melalui titik-titik C
= (3, 4), dan B = (5, -2). Maka b =
B – C = (2, -6) dan b┴ =(6, 2).
Bentuk normal titiknya
(6, 2).((x,y) – (3, 4)) = 0
atau 6x + 2y = 26.
Perpindahan dari 1 representasi ke
representasi yang lain pada garis (1)
Contoh:
Mencari bentuk normal titik
Misalkan bidang P melalui (1, 2, 3)
dengan vektor normal (2, -1, -2)
Bentuk normal titik ke bidang:
(2,-1,-2).((x,y,z)–(1,2,3)) = 0
Persamaan untuk bidang:
2x – y – 2z = -6
Bentuk normal titik untuk sebuah
bidang (3)
Contoh :
Mencari bentuk parametrik dari bidang.
Carilah bentuk parametrik dari 2x – y + 3z = 8
Vektor normal bidang: (2, -1, 3).
Cari C, salah satu diantaranya adalah C= (4,0,0).
Cari dua vektor yang tidak saling berimpit yang
masing-masing bila dikalikan dot produk dengan
vektor (2, -1, 3) menghasilkan 0. Dari hasil coba-
coba dan kira-kira, diperoleh a = (1,5,1) dan
b=(0,3,1).
Sehingga salah satu bentuk parametrik dari
bidang tersebut adalah:
P(s,t) = (4,0,0) + (1,5,1) s + (0,3,1) t
Perpindahan 1 representasi ke re-
presentasi yang lain pada bidang (1)