Phép biến đổi là một ánh xạ từ không gian R2 vào R2 :-Biến một điểm P thành một điểm P’ -Biến một đối tượng S thành đối tượng S’... Trang 4Định nghĩa biến đổi affine Phép biến đổi affine
Trang 1ĐỒ HỌA 2DCÁC PHÉP BIẾN ĐỔI
Giảng viên Bùi Tiến Lên
Trang 2Trang 2
Phép biến đổi là gì ?
Phép biến đổi là một ánh xạ từ không gian R2 vào R2 :-Biến một điểm P thành một điểm P’
-Biến một đối tượng S thành đối tượng S’
Trang 3hay
)P(T'
P
hàmdạng
đổiBiến
P'
P
R R
:T
xạánhdạng
đổiBiến
y x y
' y
y x x
' x
2 2
Trang 4Trang 4
Định nghĩa biến đổi affine
Phép biến đổi affine là phép biến đổi mà các hàm biến đổi Tx, Ty có dạng tuyến tính
Tx(x, y) = ax + cy + e
Ty(x, y) = bx + dy + f
Trang 5Trang 5
Hệ tọa độ thuần nhất
Hệ tọa độ Đề các Hệ tọa độ thuần nhất
P(Px, Py) P(Px, Py, 1)P(Px, Py) P(wPx, wPy, w)
Trang 60d
c
0b
a.1P
P1
PP
hoặc
M.P'
P
trậnma
Dạng
fdP
bPP
ecP
aPP
hàmDạng
y x
' y
' x
y x
' y
y x
' x
Ma trận biến đổi
Trang 702
3
02
2
đổibiến
trậnma
dạngHoặc
42y
2x
- y)(x,T
5 –3y2x
y)(x,T
hàmdạng
đổibiến
thứcCông
y x
Trang 8Trang 8
Cấu trúc dữ liệu
// Lưu thơng tin phep bien doi affine
struct TAffine2D {
double M[3][3];
};
Trang 9Trang 9
Biến đổi điểm – Cài đặt
TPoint2D TransformPoint2D(TAffine2D T, TPoint2D P)
Trang 10đọc biến đổi xén chuyển tọa độ vẽ
Trang 11Trang 11
Tính chất phép biến đổi affine
Một phép biến đổi affine luôn có 3 tính chất
-Bảo toàn tính thẳng
-Bảo toàn tỉ lệ
-Bảo toàn song song
Trang 12Trang 12
Bảo toàn tính thẳng
GT d là đường thẳng
d’ = T(d)
KL d’ là đường thẳng
T
Trang 13B’
C’
T
Trang 15Trang 15
Hệ quả
-Đoạn thẳng biến thành đoạn thẳng
-Đa giác biến thành đa giác
-Đường cong bezier biến thành đường cong Bezier
T
Trang 16Trang 16
Biến đổi đối tượng
đổi
Trang 17Trang 17
Biến đổi đối tượng
Trang 18Trang 18
Biến đổi đối tượng
Trang 19Trang 19
Biến đổi đối tượng
Trang 20Trang 20
Biến đổi đối tượng
Trang 21Trang 21
Biến đổi đối tượng
Trang 22Trang 22
Biến đổi đối tượng
Trang 2302
3
02
21
13
10
3
B'thànhbiến
B
14
5
02
3
02
21
22
14
5
A'thànhbiến
A
Trang 24Trang 24
Các phép biến đổi affine cơ sở
Có 3 phép biến đổi cơ sở
-Phép tịnh tiến
-Phép quay
-Phép tỉ lệ
Trang 25Trang 25
Phép tịnh tiến (translation)
Dùng để thay đổi vị trí của các đối tượng từ vị trí này
sang vị trí khác
Tham số :
- Độ dịch chuyển trên trục Ox : tx
- Độ dịch chuyển trên trục Oy : ty
tx
ty
Trang 2601
0
00
1M
trậnma
Dạng
tP
P
tP
P
hàmDạng
y x
y y
' y
x x
' x
Trang 27Trang 27
Phép tịnh tiến – Cài đặt
TAffine2D BuildTranslation2D(double tx, double ty)
Trang 28Trang 28
Phép quay (rotation)
Dùng để thay đổi hướng của các đối tượng
Trang 290cos
sin
0sin
cosM
trậnma
Dạng
Pcos
Psin
P
Psin
Pcos
P
hàmDạng
y x
' y
y x
' x
Trang 30Trang 30
Phép quay – cài đặt
TAffine2D BuildRotation2D(double alpha)
{
TAffine2D T;
alpha *= PI/180;
T.M[0][0]=cos(alpha); T.M[0][1]=sin(alpha); T.M[0][2]=0; T.M[1][0]=-sin(alpha); T.M[1][1]=cos(alpha); T.M[1][2]=0; T.M[2][0]=0; T.M[2][1]=0; T.M[2][2]=1;
return T;
}
Trang 31Trang 31
Phép tỉ lệ (scaling)
Dùng để thay đổi kích thước của các đối tượng
Tham số :
- Tâm tỉ lệ : O
- Hệ số tỉ lệ : sx, sy
O
Trang 320s
0
00
sM
trậnma
Dạng
PsP
PsP
hàm
Dạng
y x
y y
'
y
x x '
x
Trang 33Trang 33
Phép tỉ lệ – cài đặt
TAffine2D BuildScaling2D(double sx, double sy)
Trang 34Trang 34
Nguyên lý kết hợp các phép biến đổi
Nếu T1, T2 là phép biến đổi affine
Trang 35Trang 35
Nguyên lý phân rã phép biến đổi
Mọi phép biến đổi affine bất kỳ đều có thể phân rã
thành một chuỗi các phép biến đổi cơ bản
T
T1
Tn
Trang 36Trang 36
Cài đặt nguyên lý kết hợp
TAffine2D operator + (TAffine2D T1, TAffine2D T2)
}
return T;
}
Trang 3701
0
00
1M
trậnma
Dạng
PP
PP
hàmDạng
y
' y
x '
x
Trang 39Trang 39
Phép đối xứng (reflection)
yĐối xứng qua Oy
Đối xứng qua Ox
Trang 40010
00
1M
trậnma
Dạng
PP
PP
hàmDạng
Oxtrục
quaxứng
Đối
y
' y
x
' x
0
01
0
00
1M
trậnma
Dạng
PP
PP
hàmDạng
Oytrục
xứngĐối
y
' y
x '
x
Trang 41Trang 41
Phép biến dạng (shearing)
Dùng để làm nghiêng đối tượng theo một trục nào đó
Trang 4201
sh
00
1M
hoặc
10
0
01
tg
00
1M
trậnma
Dạng
PP
PtgP
P
hàmDạng
x
y
' y
y x
' x
Trang 43Trang 43
Phép nghịch đảo
T
T-1
Trang 44af
bebc
ad
decf
0bc
ad
abc
ad
c
0bc
ad
bbc
ad
dM
cóT
thì
0bc
ad với
-,1f
e
0d
c
0b
aM
cóT
Nếu
1 - 1
Trang 45
-Trang 45
Biến đổi mô hình đối tượng phân cấp
Trang 46Trang 46
Biến đổi mô hình đối tượng phân cấp
con
Hệ qui chiếu gốc
Hệ qui c
hiếu cha