ĐỒ HỌA 2DĐỒ HỌA 2D
CÁC THUẬT TOÁN XÉN HÌNHCÁC THUẬT TOÁN XÉN HÌNH
Giảng viên : Bùi Tiến Lên
Xeùn ña giaùcXeùn ña giaùc
Thuaät toaùn SutherlandThuaät toaùn Sutherland HodegmanHodegman
Baøi toaùnBaøi toaùn
Input
Ña giaùc P
Output
P∩W
Trang
Trang Trang
Trang Trang
Trang Trang
Trang 3
33
33
33
3
P
P
Nửa mặt phẳng trong/ngoàiNửa mặt phẳng trong/ngoài
Mỗi cạnh chia mặt phẳng ra làm hai phần gồm : nửa mặt
phẳng trong và nửa mặt phẳng ngoài.
Trang
Trang Trang
Trang Trang
Trang Trang
Trang 4
44
44
44
4
Nhận xétNhận xét
Cửa sổ quan sát là giao của các nửa mặt phẳng trong
của các cạnh.
Trang
Trang Trang
Trang Trang
Trang Trang
Trang 5
55
55
55
5
cửa sổ
quan sát
Thuật toánThuật toán
Dùng từng cạnh của cửa sổ lần lượt xén đa giác.
bước 1 : Xén trái
bước 2 : Xén phải
bước 3 : Xén dưới
bước 4 : Xén trên
Trang
Trang Trang
Trang Trang
Trang Trang
Trang 6
66
66
66
6
Thuaät toaùnThuaät toaùn
Trang
Trang Trang
Trang Trang
Trang Trang
Trang 7
77
77
77
7
Xeùn ña giaùc baèng caïnh traùiXeùn ña giaùc baèng caïnh traùi
Input
Ña giaùc IN = {p
0
, p
1
, , p
n-1
}
Output
Ña giaùc OUT = IN ∩ W
Trang
Trang Trang
Trang Trang
Trang Trang
Trang 8
88
88
88
8
Thuật toán xén đa giác bằng cạnh tráiThuật toán xén đa giác bằng cạnh trái
bước 1
OUT = {}
bước 2
p : p
0
p
n-1
s là đỉnh kề trước của p
th1 : p bên trong, s bên trong
Trang
Trang Trang
Trang Trang
Trang Trang
Trang 9
99
99
99
9
th1 : p bên trong, s bên trong
th2 : p bên ngoài, s bên trong
th3 : p bên ngoài, s bên ngoài
th4 : p bên trong, s bên ngoài
Tröôøng hôïp 1Tröôøng hôïp 1
s
Trang
Trang Trang
Trang Trang
Trang Trang
Trang 10
1010
1010
1010
10
p
OUT = {……………}
Tröôøng hôïp 2Tröôøng hôïp 2
Trang
Trang Trang
Trang Trang
Trang Trang
Trang 11
1111
1111
1111
11
p
s
i
OUT = {……………}
Tröôøng hôïp 3Tröôøng hôïp 3
p
Trang
Trang Trang
Trang Trang
Trang Trang
Trang 12
1212
1212
1212
12
s
OUT = {……………}
Tröôøng hôïp 4Tröôøng hôïp 4
p
s
i
Trang
Trang Trang
Trang Trang
Trang Trang
Trang 13
1313
1313
1313
13
OUT = {……………}
Ví dụVí dụ
Xén đa giác ABCDEF bằng cửa sổ hình chữ nhật.
A
B
Trang
Trang Trang
Trang Trang
Trang Trang
Trang 14
1414
1414
1414
14
A
CD
E
F
Ví duïVí duï
A
B
G
Vì
A ngoaøi, F trong
Trang
Trang Trang
Trang Trang
Trang Trang
Trang 15
1515
1515
1515
15
A
CD
E
F
G
A ngoaøi, F trong
Neân
OUT = {G}
Ví duïVí duï
A
B
G
H
Vì
B trong, A ngoaøi
Trang
Trang Trang
Trang Trang
Trang Trang
Trang 16
1616
1616
1616
16
A
CD
E
F
G
B trong, A ngoaøi
Neân
OUT = {GHB}
Ví duïVí duï
A
B
G
H
Vì
C trong, B trong
Trang
Trang Trang
Trang Trang
Trang Trang
Trang 17
1717
1717
1717
17
A
CD
E
F
G
C trong, B trong
Neân
OUT = {GHBC}
Ví duïVí duï
A
B
G
H
Vì
D ngoaøi, C trong
Trang
Trang Trang
Trang Trang
Trang Trang
Trang 18
1818
1818
1818
18
A
CD
E
F
G
I
D ngoaøi, C trong
Neân
OUT = {GHBCI}
Ví duïVí duï
A
B
G
H
Vì
E ngoaøi, D ngoaøi
Trang
Trang Trang
Trang Trang
Trang Trang
Trang 19
1919
1919
1919
19
A
CD
E
F
G
I
E ngoaøi, D ngoaøi
Neân
OUT = {GHBCI}
Ví duïVí duï
A
B
G
H
Vì
F trong, E ngoaøi
Trang
Trang Trang
Trang Trang
Trang Trang
Trang 20
2020
2020
2020
20
A
CD
E
F
G
I
J
F trong, E ngoaøi
Neân
OUT = {GHBCIJF}
Coâng thöùcCoâng thöùc
Trang
Trang Trang
Trang Trang
Trang Trang
Trang 21
2121
2121
2121
21