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

Chng 3: Các phép biên đổi trong không gian 2 chiều-Ths.Vũ Minh Yến pdf

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 (170.86 KB, 31 trang )

Chương 3
Các phép biến đổi trong
không gian 2 chiều
Giảng viên: Ths.Vũ Minh Yến
Tổ HTTT- Khoa CNTT
Nội dung
 Biểu diễn điểm
 Phép biến đổi khái quát
 Các phép biến đổi hình học
 Các phép biến đổi hệ trục
 Chuyển đổi quan sát
1. Biểu diễn điểm(1)
 Trong hệ toạ độ đề các

M(x,y)

Biểu diễn bằng ma trận:

Ma trận hàng:

Ma trận cột:
O x
y
M (x, y)
x
y
yy







=
y
x
M
[
]
yxM
=
[
]
yxM
=
1. Biểu diễn điểm(2)

Trong hệ toạ độ thuần nhất
 M(kx, ky, k) với k≠0, k=0 điểm M ở vô cùng
 k=1 khi đó M(x, y, 1) được gọi là toạ độ đề các của điểm
thuần nhất
 Biểu diễn bằng ma trận

Ma trận hàng:

Ma trận cột:
[
]
1yxM
=











=
1
y
x
M
2. Phép biến đổi hình học khái
quát (1)
 Phép biến đổi T biến điểm M thành điểm M’:
 Công thức biến đổi:

Trong đó: a1, b1, c1, a2, b2, c2 là hằng số
 Ma trận biến đổi



++=
++=
222
111
'
'

cybxay
cybxax
)','('),( yxMyxM
T
→










=
1cc
0bb
0aa
T
21
21
21
2. Phép biến đổi hình học khái
quát (2)

Ta có:

Suy ra: M'= M.T



[
]
1yxM
=
[
]
1'y'x'M
=
[
]
=
1'y'x
[
]
×1yx










1cc
0bb
0aa
21

21
21
[
]
=
1'y'x
[
]
1cybxacybxa
222111
++++
3. Các phép biến đổi hình học
 Phép bất biến
 Phép tịnh tiến
 Phép biến đổi tỉ lệ tại gốc toạ độ
 Phép đối xứng
 Phép quay tại gốc toạ độ
 Phép biến đổi kết hợp
3.1. Phép bất biến
 Biến điểm M thành chính nó:
 Ma trận biến đổi:
)y,x(M)'y,'x('M)y,x(M
T
≡→
I
100
010
001
T =











=
3.2. Phép tịnh tiến
 Tịnh tiến điểm M một vector (m,n) thành
điểm M’:
 Công thức biến đổi:
 Ma trận biến đổi:
v
r
)'y,'x('M)y,x(M
v
T
→
r
O
x
y
M (x, y)
x
y
y'
x'

M' (x', y')



+=
+=
ny'y
mx'x










=
1nm
010
001
T
3.3. Phép biến đổi tỉ lệ tại gốc toạ độ

Co dãn so với gốc toạ độ:

Công thức biến đổi:
với tlx, tly là các hệ số tỉ lệ


Ma trận biến đổi:
Nhận xét:

tlx=tly: phép biến đổi đồng dạng

tlx=tly >1: phép phóng ảnh

tlx=tly <1: phép thu ảnh

tlx ≠ tly: phép biến dạng (phép nhiễu hình)
)'y,'x('M)y,x(M
T
→



×=
×=
ytly'y
xtlx'x











=
100
0tly0
00tlx
T
3.4.Phép đối xứng

Phép đối xứng qua trục Ox:

Phép đối xứng qua trục Oy:

Phép đối xứng qua tâm O:











=
100
010
001
T













=
100
010
001
T










−=
100
010
001
T

3.5. Phép quay tại gốc toạ độ

Điểm M quay quanh O góc α thành M’:

Công thức biến đổi:

Ma trận biến đổi:

Lưu ý:

Chiều dương góc quay ngược chiều kim đồng hồ
O
x
y
M (x, y)
x'
y
y'
x
M' (x', y')
α
( )
)'y,'x('M)y,x(M
,O
T
 →
α




α+α=
α

α
=
cosysinx'y
sinycosx'x










αα−
α
α
=
100
0cossin
0sincos
T
3.6. Phép biến đổi kết hợp (1)

Điểm M qua phép biến đổi T1 thành M1, M1 qua phép biến đổi T2
thành M2, suy ra tồn tại một phép biến đổi T biến M thành M2:


T được gọi là phép biến đổi kết hợp của T1 và T2, khi đó:
T = T1 × T2

Ta có:

M1=M×T1, M2=M1×T2

M2=M×T1 ×T2
=M ×(T1 ×T2)

M2=M ×T
Suy ra: T= T1 ×T2
)y,x(M)y,x(M
)y,x(M)y,x(M)y,x(M
2
2
2
T
222
T
111
T
21
→⇔
→→
3.6. Phép biến đổi kết hợp (2)

Ví dụ 1:
 Tính ma trận T với T1, T2 lần lượt là các phép tịnh tiến
vecto (a1, b1) và (a2, b2) ?

)y,x(M)y,x(M
)y,x(M)y,x(M)y,x(M
2
2
2
T
222
T
111
T
21
→⇔
→→
Gi

i quy
ế
t v

n
đề
:
Ta có:
Suy ra:











++
=










×










=×=
1bbaa
010

001
1ba
010
001
1ba
010
001
TTT
21212211
21










=
1ba
010
001
T
11
1











=
1ba
010
001
T
22
2
3.6. Phép biến đổi kết hợp (3)

Ví dụ 2:

Tính ma trận biến đổi biểu diễn phép quay góc α
quanh điểm A(x0,y0) bất kỳ.
'MMMMM
3
T
2
T
1
T
3
21
≡→→→

Gi

i quy
ế
t v

n
đề
:
Ta phân tích thành các phép bi
ế
n
đổ
i
c
ơ
s

:
Trong
đ
ó:
T
1
: phép tịnh tiến vecto (-x0,-y0)
T
2
: phép quay tại O góc quay
α
T

3
: phép tịnh tiến vecto (x0, y0)
Suy ra: T=T
1
×T
2
×T
3
M(x,y)
M'(x',y')
A
x
0
x
y
0
O
y
4. Các phép biến đổi hệ trục toạ độ

Phép biến đổi hệ trục toạ độ là phép biến đổi nghịch
đảo của phép biến đổi vật:
T
hệtrục
= T
vật
-1

Hai phép biến đổi được gọi là nghịch đảo của nhau
nếu phép biến đổi kết hợp của chúng là phép bất

biến.

Ví dụ:
 Phép tịnh tiến hệ trục bởi vecto (m, n) bằng phép tịnh tiến
vật đi vecto (-m,-n)
 Phép quay hệ trục tại gốc toạ độ góc
α
bằng phép quay vật
tại gốc toạ độ góc -
α
5. Chuyển đổi quan sát
 Mục đích
 Một số khái niệm
 Xây dựng công thức chuyển đổi quan sát
 Áp dụng xây dựng bộ công cụ 2D
 Áp dụng bộ công cụ 2D để vẽ đồ thị hàm sin
5.1.Mục đích
 Mô phỏng hình ảnh trong không gian thực hai
chiều lên thiết bị hiển thị (màn hình)
 Ví dụ:
Hình ảnh biểu diễn trên màn hình
Màn hình
Không gian thực 2 chiều
5.2. Một số khái niệm

Cửa sổ:
 Là một vùng hình chữ nhật
trong không gian thực 2 chiều,
giới hạn hình ảnh cần hiển thị.
 Cửa sổ được xác định bởi

đường chéo chính: (xw1,yw1),
(xw2, yw2)
(
xw
1
, yw
1
)
HÖ to¹ ®é thÕ giíi thùc
(xw
2
, yw
2
)
y
O
cöa sæ
x
 Cài đặt:

xw1,yw1, xw2, yw2: kiểu float, biến toàn cục

void cuaso(float x1, float y1, float x2, float y2)
{
xw1=x1; yw1=y1; xw2=x2; yw2=y2 }
5.2. Một số khái niệm (2)

Khung nhìn:
 Là một vùng hình chữ nhật trên
màn hình dùng để hiển thị hình

ảnh trong cửa sổ.
 Khung nhìn được xác định bởi
đường chéo chính: (xv1,yv1),
(xv2, yv2)
 Cài đặt:

xv1,yv1, xv2, yv2: kiểu int, tlx,tly: kiểu float, là các biến toàn cục

void khungnhin(int x1, int y1, int x2, int y2)
{ xv1=x1; yv1=y1; xv2=x2; yv2=y2;
tlx=(xv2-xv1)/(xw2-xw1); tly= (yv2-yv1)/(yw2-yw1); }
Hệ toạ độ thiết bị hiển thị
Hệ toạ độ màn hình
Màn hình
O
m
x
m
y
m
(xv
1
, yv
1
)
(xv
2
, yv
2
)

Khung nhìn
Hệ toạ độ màn hình
Màn hình
O
m
x
m
y
x
O
HÖ to¹ ®é thÕ giíi thùc
y
m
(xw
2
, yw
2
)
(xw
1
, yw
1
)
cöa sæ
(xv
1
, yv
1
)
(xv

2
, yv
2
)
Khung nhìn
5.3. Xây dựng công thức chuyển đổi quan sát
Bài toán:
 Input:

Cửa sổ

Khung nhìn

Điểm P(x,y)
 Output:

Tính Pm(xm,ym)?
xw
1
xw
2
x
yw
1
yw
2
y
O
Cửa sổ
Hệ toạ độ thế giới thực

O
m
x
m
y
m
yv
1
yv
2
xv
1
xv
2
P(x,y)
x
y
P
m
=?
x
m
y
m
Pm(xm,ym)
Khung nhìn
Hệ toạ độ màn hình
Giải pháp 1(1)
xw
1

xw
2
x
yw
1
yw
2
y
O
cửa sổ
Hệ toạ độ thế giới thực
Hệ toạ độ màn hình
O
m
x
m
y
m
yv
1
yv
2
xv
1
xv
2
Khung
nhìn
P
x

y
P
m
=?
x
m
y
m
A
1
B
1
C
1
D
1
A B
CD
M
1
N
1
M
N








=

11
11
BA
MA
AB
AM
11
11
DA
N
A
AD
AN
=
Giải pháp 1(2)







=
=
11
11
11

11
DA
NA
AD
AN
BA
MA
AB
AM
( )
( )







+−


=
+−


=

12
12
12

m
11
12
12
m
yvyyw
ywyw
yvyv
y
xvxwx
xwxw
xvxv
x
12
12
12
12
ywyw
yvyv
tly
xwxw
xvxv
tlx


=


=
(

)
( )




+−=
+−=

12m
11m
yvyywtlyy
xvxwxtlxx
Đặt:
(
)
( )



+−=
+−=
)yvyywRound(tlyy
)xvxwxRound(tlxx
12m
11m










=




=



12
1m
12
2
12
1m
12
1
yvyv
yvy
ywyw
yyw
xvxv
xvx
xwxw
xwx

xw
1
xw
2
x
yw
1
yw
2
y
O
cửa sổ
Hệ toạ độ thế giới thực
Hệ toạ độ màn hình
O
m
x
m
y
m
yv
1
yv
2
xv
1
xv
2
Khung
nhìn

P
x
y
P
m
=?
x
m
y
m
A
1
B
1
C
1
D
1
A
B
CD
M
1
N
1
M
N
Giải pháp 2
xw
1

xw
2
x
yw
1
yw
2
y
O
cöa sæ
x
y
x
1
y
1
O
1
T
1
x
2
y
2
O
2
T
2
x
3

y
3
O
3
T
3
T
4
O
m
x
m
y
m
yv
1
yv
2
xv
1
xv
2
Khung nh×n
P
m
x
m
y
m
T1: PhÐp tÞnh tiÕn hÖ trôc vecto v(xw1,yw2)

T2: PhÐp ®èi xøng qua trôc Ox
T3: PhÐp biÕn ®æi tØ lÖ
T4: PhÐp tÞnh tiÕn hÖ trôc vecto u(-xv1,-yv1)
T=T
1
*T
2
*T
3
*T
4
v
r
u
r
O
m
x
m
y
m
yv
1
yv
2
xv
1
xv
2
Khung nh×n

P
m
x
m
y
m
O
m
x
m
y
m
yv
1
yv
2
xv
1
xv
2
Khung nh×n
P
m
x
m
y
m
T

×