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
=
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
'
'
⇔
[
]
1yxM
=
[
]
1'y'x'M
=
[
]
=
1'y'x
[
]
×1yx
1cc
0bb
0aa
21
=
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'
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
010
001
T
−=
100
010
001
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:
)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:
001
1ba
010
001
1ba
010
001
TTT
21212211
21
=
1ba
010
001
T
11
1
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
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
ả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
)
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
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
=
⇔
11
11
BA
MA
AB
AM
11
11
DA
N
A
AD
AN
=
Giải pháp 1(2)
=
=
11
11
11
m
11
12
12
m
yvyyw
ywyw
yvyv
y
xvxwx
xwxw
xvxv
x
12
12
12
12
ywyw
yvyv
tly
xwxw
xvxv
tlx
−
−
=
−
−
=
(
−
−
=
−
−
−
−
=
−
−
⇔
12
1m
12
2
12
1m
12
1
yvyv
yvy
ywyw
yyw
xvxv
xvx
xwxw
xwx
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
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)
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