Tải bản đầy đủ (.pdf) (11 trang)

Các phép biến đổi 3 chiều pptx

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (461.38 KB, 11 trang )

ĐỒ 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


P
H
HH
H
H
HH
H
E
EE
E
E
EE
E
Ù
ÙÙ
Ù
Ù
ÙÙ
Ù
P
PP
P
P
PP
P
B
BB
B
B
BB

B
I
II
I
I
II
I
E
EE
E
E
EE
E
Á
ÁÁ
Á
Á
ÁÁ
Á
N
NN
N
N
NN
N
Đ
ĐĐ
Đ
Đ
ĐĐ

Đ
O
OO
O
O
OO
O
Å
ÅÅ
Å
Å
ÅÅ
Å
I
II
I
I
II
I
3
33
3
3
33
3
C
CC
C
C
CC

C
H
HH
H
H
HH
H
I
II
I
I
II
I
E
EE
E
E
EE
E
À
ÀÀ
À
À
ÀÀ
À
U
UU
U
U
UU

U
D
D
a
a
ã
ã
n
n
n
n
h
h
a
a
ä
ä
p
p
• Cùng một loại đối tượng có thể xuất hiện trong nhiều
cảnh và xuất hiện nhiều lần trong một cảnh với các
phương vò, màu sắc khác nhau.
• Nếu ta có các mô hình đối tượng tốt, ta có thể phát sinh
ra các đối tượng khác nhau từ một mô hình duy nhất
nhờ các phép biến đổi.
• Các phép biến đổi quan trọng nhất là các phép biến đổi
Affine và các phép chiếu.
ĐỒ HỌA MÁY TÍNH
Dương Anh Đức, Lê Đình Duy Các phép biến đổi 3 chiều 2/11
H

H
e
e
ä
ä
t
t
o
o
a
a
ï
ï
đ
đ
o
o
ä
ä
b
b
a
a
ø
ø
n
n
t
t
a

a
y
y
p
p
h
h
a
a
û
û
i
i
/
/
b
b
a
a
ø
ø
n
n
t
t
a
a
y
y
t

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
ï
ï
đ

đ
o
o
ä
ä
t
t
h
h
u
u
a
a
à
à
n
n
n
n
h
h
a
a
á
á
t
t
(
(
H

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

d
i
i
n
n
a
a
t
t
e
e
s
s
)
)
• Mỗi điểm (x, y, z) trong không gian Descartes được biểu
diễn bởi một bộ bốn tọa độ trong không gian 4 chiều
thu gọn (hx, hy, hz, h). Người ta thường chọn h=1.
• (x, y, z)
Descartes
(x, y, z, 1)
Homogeneous
• (x, y, z, w)
Homogeneous
(x/w, y/w, z/w)
Descartes
(w ≠ 0).
x
w
w=1

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

i
e
e
á
á
n
n
đ
đ
o
o
å
å
i
i
t
t
u
u
y
y
e
e
á
á
n
n
t
t
í

í
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
h
h
e
e
ù
ù
p
p
t
t

ò
ò
n
n
h
h
t
t
i
i
e
e
á
á
n
n
• Dòch chuyển một điểm từ
vò trí đến vò trí khác trong
không gian theo vector
offset tr.
()()
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
1
P
1
+s
2
P
2
)=s
1
T(P

1
)+s
2
T(P
2
)
ĐỒ HỌA MÁY TÍNH
Dương Anh Đức, Lê Đình Duy Các phép biến đổi 3 chiều 4/11
P
P
h
h
e
e
ù
ù
p
p
b
b
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:
♦ Tuyến tính
♦ Tònh tiến
• Các tính chất
♦ Gốc toạ độ không 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
C
C

a
a
ù
ù
c
c
p
p
h
h
e
e
ù
ù
p
p
b
b
i
i
e
e
á
á
n
n
đ
đ
o
o

å
å
i
i
A
A
f
f
f
f
i
i
n
n
e
e
c
c
ơ
ơ
s
s
ơ
ơ
û
û
• Phép biến đổi Affine có thể xem là tổ hợp của các phép
biến đổi cơ sở:
♦ Tònh tiến
♦ Tỉ lệ (tâm tỉ lệ đặt tại gốc toạ độ)

♦ Quay quanh trục x
♦ Quay quanh trục y
♦ Quay quanh trục z
♦ Đối xứng qua trục x, y, z*
♦ Biến dạng* (tâm biến dạng đặt tại gốc toạ độ)
()()
ư
ç
ç
ç
ç
ç
è

=
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
ù
ê
ê
ê
ê
ê
ë
é
=
1TrTrTr
0100
0010
0001
)Tr,Tr,Tr(Tr
zyx
zyx
• Phép biến đổi tỉ lệ
ú
ú
ú
ú
ù
ê
ê
ê
ê
ë
é
=

1000
0s00
00s0
000s
)s,s,S(s
z
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,
θθ
θθ
θ
0
01
• Phép quay quanh trục y
ú
ú
ú
ú
ù
ê
ê
ê
ê
ë
é
=
1000
0)cos(0)sin(
00
0)sin(-)cos(
)R(y,
θθ
θθ

θ
10
0
y
z
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(-
00)sin()cos(
)R(z,
θθ
θθ
θ
ĐỒ HỌA MÁY TÍNH
Dương Anh Đức, Lê Đình Duy Các phép biến đổi 3 chiều 6/11
• Cách xác đònh chiều dương trong các phép quay
Các đònh nghóa về chiều quay được dùng chung cho cả hệ
tọa độ theo quy ước bàn tay phải và bàn tay trái. Cụ thể
chiều dương được đònh nghóa như sau:
♦ Quay quanh trục x: từ trục dương y đến trục dương z.
♦ Quay quanh trục y: từ trục dương z đến trục dương x.
♦ Quay quanh trục z: từ trục dương x đến trục dương y.
• Ví dụ, xét trên hệ toạ độ bàn tay trái, khi nhìn dọc từ
phía trục quay về gốc toạ độ, chiều dương sẽ là chiều
ngược chiều kim đồng hồ
ĐỒ HỌA MÁY TÍNH
Dương Anh Đức, Lê Đình Duy Các phép biến đổi 3 chiều 7/11
• Phép đối xứng qua mặt phẳng yOz, zOx và xOy
ú
ú
ú
ú

ù
ê
ê
ê
ê
ë
é

=
1000
0100
0010
0001
Mr(x)
ú
ú
ú
ú
ù
ê
ê
ê
ê
ë
é

=
1000
0100
0010

0001
Mr(y)
ú
ú
ú
ú
ù
ê
ê
ê
ê
ë
é

=
1000
0100
0010
0001
Mr(z)
• Phép đối xứng qua trục x, y và z
ú
ú
ú
ú
ù
ê
ê
ê
ê

ë
é


=
1000
0100
0010
0001
x
M
ú
ú
ú
ú
ù
ê
ê
ê
ê
ë
é


=
1000
0100
0010
0001
y

M
ú
ú
ú
ú
ù
ê
ê
ê
ê
ë
é


=
1000
0100
0010
0001
z
M
• Phép biến dạng
ú
ú
ú
ú
ù
ê
ê
ê

ê
ë
é
=
1000
01hh
0h1h
0hh1
Sh
yzxz
zyxy
zxyx
y
z
x
y
z
x
ĐỒ HỌA MÁY TÍNH
Dương Anh Đức, Lê Đình Duy Các phép biến đổi 3 chiều 8/11
C
C
a
a
ù
ù
c
c
p
p

h
h
e
e
ù
ù
p
p
b
b
i
i
e
e
á
á
n
n
đ
đ
o
o
å
å
i
i
A
A
f
f

f
f
i
i
n
n
e
e
t
t
o
o
å
å
n
n
g
g
q
q
u
u
a
a
ù
ù
t
t
• Tổ hợp các phép biến đổi Affine là một phép biến đổi
Affine.

• Mọi phép biến đổi Affine đều có thể phân rã thành tổ
hợp các phép biến đổi Affine cơ sở.
P
P
h
h
e
e
ù
ù
p
p
t
t


l
l
e
e
ä
ä
v
v
ơ
ơ
ù
ù
i
i

t
t
a
a
â
â
m
m
b
b
a
a
á
á
t
t
k
k
y
y
ø
ø
• Phép tỉ lệ với tâm đặt tại điểm (x
f
, y
f
, z
f
) có thể xét như
tổ hợp của các phép biên đổi cơ sở:

♦ Tònh tiến điểm bất động
()
fff
zyx ,, về gốc tọa độ.
♦ Thực hiện phép biến đổi tỉ lệ với tâm là gốc toạ độ.
♦ Tònh tiến ngược điểm bất động từ gốc tọa độ trở về vò trí
ban đầu.
• Ma trận biến đổi sẽ là:
()
()
()
÷
÷
÷
÷
÷
ø
ư
ç
ç
ç
ç
ç
è

=
1111
000
000
000

fzfyfx
z
y
x
zyxf
z-sy-sx-s
s
s
s
),s,s(sS
P
P
h
h
e
e
ù
ù
p
p
q
q
u
u
a
a
y
y
q
q

u
u
a
a
n
n
h
h
m
m
o
o
ä
ä
t
t
t
t
r
r
u
u
ï
ï
c
c
b
b
a
a

á
á
t
t
k
k
y
y
ø
ø
• Giả sử trục quay xác đònh bởi 2 điểm P
1
và P
2
(chiều
dương hướng từ P
1
đến P
2
thể hiện bởi vector k).
ĐỒ HỌA MÁY TÍNH
Dương Anh Đức, Lê Đình Duy Các phép biến đổi 3 chiều 9/11
• Áp dụng qui tắc phân rã, ta có thể biểu diễn quay quanh
k một góc θ thành dãy các phép biến đổi cơ sở sau:
♦ Tònh tiến trục k về gốc tọa độ: Tr(-P0) (thành trục k')
♦ Quay quanh trục x để đặt trục k' nằm trên mặt phẳng
xOz: R(x,
α) (thành trục k'').
♦ Góc quay được xác đònh dựa trên chiếu của k' lên mặt
phẳng yOz. Ta không cần tính

α cụ thể. Thay vào đó ta
tính sin(
α) và cos(α) một cách trực tiếp.
10
10
PP
PP
k
=
,
2
z
2
y
kkd +=
() ()
d
k
sin,
d
k
cos
y
z
== αα
♦ Quay quanh trục y để đưa trục k' về trục z: R(y,-β). Tương
tự bước trước, ta không cần tính cụ thể
β.
♦ Thực hiện phép quay quanh trục z một góc θ: R(z,θ)
♦ Thực hiện chuỗi các phép biến đổi ngược lại quá trình

trên.
()
d,
d
βcos ==
1
()
x
x
k
k
sin ==
1
β
x
y
z
d
"k
P
0
P
1
k
'k
k
y
α
x
y

z
k
x
"k
β
ĐỒ HỌA MÁY TÍNH
Dương Anh Đức, Lê Đình Duy Các phép biến đổi 3 chiều 10/11
• Như vậy, phép quay quanh 1 trục bất kỳ có thể được
phân rã thành chuỗi các biến đổi cơ sở sau:
Tr(-P
0
) R(x,α) R(y,-β) R(z, θ) R(y, β) R(x, -α) Tr(P
0
)
M
M
o
o
d
d
e
e
l
l
i
i
n
n
g
g

t
t
r
r
a
a
n
n
s
s
f
f
o
o
r
r
m
m
a
a
t
t
i
i
o
o
n
n
• Biến đổi từ Hệ tọa độ đối tượng sang Hệ tọa độ thế giới
thực.

Front-Wheel
System
Tractor
System
World
y
W
z
W
x
W
yf
W
zf
W
xf
W
x
t
y
t
z
t
P
P
h
h
e
e
ù

ù
p
p
b
b
i
i
e
e
á
á
n
n
đ
đ
o
o
å
å
i
i
H
H
e
e
ä
ä
t
t
o

o
a
a
ï
ï
đ
đ
o
o
ä
ä
• Cần thực hiện một phép quay và một phép tònh tiến (gọi
là Rigid boby transformation).
• Nếu chuyển đổi giữa hai hệ toạ độ bàn tay trái và bàn
tay phải thì cần thêm một phép đối xứng nữa.
ĐỒ HỌA MÁY TÍNH
Dương Anh Đức, Lê Đình Duy Các phép biến đổi 3 chiều 11/11
R
R
i
i
g
g
i
i
d
d
b
b
o

o
b
b
y
y
t
t
r
r
a
a
n
n
s
s
f
f
o
o
r
r
m
m
a
a
t
t
i
i
o

o
n
n
• Bao gồm phép tònh tiên và phép quay và các tổ hợp của
chúng.
• Do không làm thay đổi hình dạng và kích thước đối
tượng, chỉ làm thay đổi vò trí, phương hướng của chúng
trong không gian.
Ví dụ về phép tònh tiến
Ví dụ về phép quay

×