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

Các phép biến đổi trong không gian 2 chiều

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

Chương 3
Các phép biến đổi trong không gian
2 chiều
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:


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










1cc
0bb
0aa
21

21
21
[ ]
=1'y'x
[ ]
1cybxacybxa
222111
++++


M'= M.T
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

)'y,'x('M)y,x(M

v
T
→

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 đó:

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
222
T
222
T
111
T
21
→⇔
→→

T = T1
T = T1
×
×
T2
T2
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
222
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 thực

Á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
NA
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

u

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 nhin
P
m
x
m
y
m
T

×