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

slike bài giảng đồ họa máy tính các thuật toán vẽ đường tròn

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 (107.09 KB, 17 trang )

ĐỒ HỌA RASTER
ĐỒ HỌA RASTER
CÁC THUẬT TOÁN
CÁC THUẬT TOÁN
VẼ ĐƯỜNG TRÒN
VẼ ĐƯỜNG TRÒN
Giảng viên : Bùi Tiến Lên
Trang 2
Phân loại đường tròn
Phân loại đường tròn
Đường tròn tâm O
O O
Đường tròn tâm bất kỳ
Trang 3
Ứng dụng phép tònh tiến
Ứng dụng phép tònh tiến
Nếu (x, y) thuộc đường tròn tâm O
Thì (x + x
c
, y + y
c
) thuộc đường tròn tâm (x
c
, y
c
)
O
(x
c
, y
c


)
(x, y)
(x+x
c
, y+y
c
)
Trang 4
Phöông trình ñöôøng troøn
Phöông trình ñöôøng troøn
O
22
222
xry
ryx
−=
=+
r
Trang 5
Tính đối xứng của đường tròn
Tính đối xứng của đường tròn
Đường tròn có 4 trục đối xứng
-Trục Ox
-Trục Oy
-Trục phân giác thứ nhất
-Trục phân giác thứ hai
O
x
y
phân giác 1

p
h
a
â
n

g
i
a
ù
c

2
Trang 6
Ứng dụng tính đối xứng
Ứng dụng tính đối xứng
Nếu (x, y) thuộc đường tròn
Thì (-x, y), (x, -y), (-x, -y), (y, x), (-y, x), (y, -x) và (-y, -x)
thuộc đường tròn
O
12
3
4
5 6
7
8
chọ
n
Trang 7
Vẽ cung một phần tám thứ nhất

Vẽ cung một phần tám thứ nhất
Input
r bán kính
Output
{(x
1
, y
1
), (x
2
, y
2
) … (x
n
, y
n
)} “thuộc” cung một phần tám
thứ nhất
O
A
B
Trang 8
Khảo sát cung một phần tám thứ nhất
Khảo sát cung một phần tám thứ nhất
Mục tiêu khảo sát sự biến thiên của hoành độ và tung
độ
2322
2
22
22

)xr(
r
- y"
xr
x
- y'
]
2
r
[0, x vớixr y Hàm

=

=
∈−=
Trang 9
Khảo sát cung 1/8 thứ nhất
Khảo sát cung 1/8 thứ nhất
Bảng biến thiên
−−

"y
1
0
'y
2
r
r
y
2

r
0x
Đường cong
giảm chậm
Trang 10
Thuật toán trực tiếp
Thuật toán trực tiếp
Round(y) = y
xr = y
1 + x = x
]
2
r
[ < x Lặp
lại còn điểm những đònh Xác 2 bước
r = y
0 = x
đầu điểm đònh Xác 1 bước
1+i
2
1i
2
i1+i
i
1
1
+

Trang 11
Thuaọt toaựn MidPoint

Thuaọt toaựn MidPoint
Dửù ủoaựn ủieồm saựng thửự i+1
i
A
B
Trang 12
Thuật toán MidPoint
Thuật toán MidPoint
- Khái niệm bên trong / bên
ngoài đường tròn
- Hàm kiểm tra một điểm
bên trong / bên ngoài
đường tròn
F(x, y) = x
2
+ y
2
– r
2
- Cách kiểm tra
bên trong
bên ngoài
P(x, y) F(x, y)
bên trong < 0
nằm trên = 0
bên ngoài > 0
Trang 13
Thuật toán MidPoint
Thuật toán MidPoint
Xây dựng biến f

i
Trung điểm M của AB
M(x
i
+ 1, y
i
– 1/2)
Biến f
i
f
i
= F(M)
f
i
= F(x
i
+ 1, y
i
– 1/2)
i
B
A
M
y
i
-1/2
x
i
x
i

+1
y
i
y
i
-1
Trang 14
Thuaọt toaựn MidPoint
Thuaọt toaựn MidPoint
Coõng thửực tớnh f
i
4
1
r1yyx2xf
2
i
2
ii
2
ii
++++=
Coõng thửực tớnh f
i
nguyeõn
2
i
2
ii
2
ii

r1yyx2xf +++=
Trang 15
Khi f
Khi f
i
i
không nguyên !
không nguyên !
Có hai cách giải quyết để f
i
thành nguyên
Cách 1
f
i
< 0 ⇔ kf
i
< 0
f
i
≥ 0 ⇔ kf
i
≥ 0
Với k > 0
Cách 2
f
i
< 0 ⇔ [f
i
] < 0
f

i
≥ 0 ⇔ [f
i
] ≥ 0
Trang 16
Thuật toán MidPoint
Thuật toán MidPoint
Thuật toán
Bước 1 Xác đònh điểm đầu tiên
x
1
= 0
y
1
= r
Bước 2 Xác đònh những điểm tiếp theo
Lặp x
i
< y
i
f
i
= …
f
i
< 0
x
i+1
= x
i

+ 1
y
i+1
= y
i
f
i
≥ 0
x
i+1
= x
i
+ 1
y
i+1
= y
i
– 1
Trang 17
Thuaọt toaựn MidPoint
Thuaọt toaựn MidPoint
Caựch tớnh f
i
caỷi tieỏn
f
1
= 1 r
f
i
< 0

f
i+1
= f
i
+ 2x
i
+ 3
f
i
0
f
i+1
= f
i
+ 2x
i
2y
i
+ 5

×