ĐỒ HỌA MÁY TÍNH
Dương Anh Đức, Lê Đình Duy Các phép biến đổi 3 chiều 1/11
C
CC
C
C
CC
C
A
AA
A
A
AA
A
Ù
ÙÙ
Ù
Ù
ÙÙ
Ù
C
CC
C
C
CC
C
P
PP
P
P
PP
B
I
II
I
I
II
I
E
EE
E
E
EE
E
Á
ÁÁ
Á
Á
ÁÁ
Á
N
NN
N
N
NN
N
Đ
ĐĐ
Đ
Đ
ĐĐ
C
H
HH
H
H
HH
H
I
II
I
I
II
I
E
EE
E
E
EE
E
À
ÀÀ
À
À
ÀÀ
À
U
UU
U
U
UU
H
e
e
ä
ä
t
t
o
o
a
a
ï
ï
đ
đ
o
o
ä
ä
b
b
a
a
ø
ø
n
n
t
t
a
t
r
r
a
a
ù
ù
i
i
• Hệ tọa độ theo quy ước bàn tay phải: để bàn tay phải
sao cho ngón cái hướng theo trục z, khi nắm tay lại, các
ngón tay chuyển động theo hướng từ trục x đến trục y.
• Hệ tọa độ theo quy ước bàn tay trái: để bàn tay phải sao
cho ngón cái hướng theotrục z, khi nắm tay lại, các ngón
tay chuyển động theo hướng từ trục x đến trục y.
H
H
e
e
ä
ä
t
t
o
o
a
a
ï
ï
đ
H
o
o
m
m
o
o
g
g
e
e
n
n
e
e
o
o
u
u
s
s
C
C
o
o
o
o
r
r
d
homogeneous
(x,y,z,w)
projected
homogeneous
(x/w,y/w,z/w,1)
Descartes
(x/w,y/w,z/w)
ĐỒ HỌA MÁY TÍNH
Dương Anh Đức, Lê Đình Duy Các phép biến đổi 3 chiều 3/11
C
C
a
a
ù
ù
c
c
p
p
h
h
e
e
ù
ù
p
p
b
b
i
í
n
n
h
h
• Phép biến đổi tuyến tính là tổ hợp của các PBĐ:
♦
Tỉ lệ
♦
Quay
♦
Biến dạng và
♦
Đối xứng
• Các tính chất của các phép biến đổi tuyến tính
♦
Thoả mãn tính chất về tổ hợp tuyến tính.
♦
Gốc toạ độ là điểm bất động.
♦
Ảnh của đường thẳng là đường thẳng.
♦
Ảnh của các đường thẳng song song là các đường thẳng
song song.
♦
Bảo toàn tỉ lệ khoảng cách
♦
Tổ hợp các phép biến đổi có tính phân phối
P
P
()()
0≠
ư
ç
ç
ç
è
ỉ
=
ifc
heb
gda
với
ifc
heb
gda
zyxz'y'x'
y
z
x
(x,y,z)
(x',y',z')
tr =(tr
x
,tr
y
,tr
z
)
T(s
i
i
e
e
á
á
n
n
đ
đ
o
o
å
å
i
i
A
A
f
f
f
f
i
i
n
n
e
e
• Phép biến đổi Affine là tổ hợp của các phép biến đổi:
♦
ù
p
p
b
b
i
i
e
e
á
á
n
n
đ
đ
o
o
å
å
i
i
A
A
f
f
f
f
i
i
n
ư
ç
ç
ç
ç
ç
è
ỉ
=
1
0
0
0
.11'''
zyx
trtrtr
ihg
fed
cba
zyxzyx
tỉ lệ, quay, biến dạng
tònh tiến
ĐỒ HỌA MÁY TÍNH
Dương Anh Đức, Lê Đình Duy Các phép biến đổi 3 chiều 5/11
• Phép tònh tiến
ù
ê
ê
ê
ê
y
x
zyx
Khi s
x
=s
y
=s
z
: phép đồng dạng
• Phép quay quanh trục z
• Phép quay quanh trục x
ú
ú
ú
ú
ù
ê
ê
ê
ê
ë
é
=
1000
0)cos()sin(-0
0)sin()cos(
00
)R(x,
θθ
y
z
x
(x,y,z)
(x',y',z')
tr =(tr
x
,tr
y
,tr
z
)
y
z
x
ú
ú
ú
ú
ù
ê
ê
ê
ê
ë
é
=
1000
0100
00)cos()sin(-