1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Thảo luận Môn Đồ họa máy tính pps

8 399 1

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 8
Dung lượng 118,5 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Tương tự thuật toán vẽ đường tròn, sử dụng thuật toán Bresenham để vẽ, ta chỉ cần vẽ 1/4 ellipse, sau đó lấy đối xứng qua các trục tọa độ sẽ vẽ được toàn bộ ellipse.

Trang 1

R

2

R

O

y

x

Trang 2

Begin

P = 5/4 - R

x = & y =

P8P(x, y, c)

Yes

P < 0 Yes

P = P + 2x + 3

No

P = P + 2(x - y) + 5

y = y - 1

x = x + 1

P8P(x, y, c)

End

No

) 2 /

(R

round

x 

2 /

R R / 2

Trang 4

Tương tự thuật toán vẽ đường tròn, sử dụng thuật toán Bresenham để vẽ, ta chỉ cần vẽ 1/4 ellipse, sau đó lấy đối xứng qua các trục tọa độ sẽ vẽ được toàn bộ ellipse.

Xét ellipse có tâm O, các bán kính là a và b, phương trình là :

Chọn tọa độ pixel đầu tiên cần hiển thị là (Xi ,Yi) = (0,b)

Cần xác định pixel tiếp theo là (Xi+1, Yi+1).

1

2

2 2

2

b

y a

x

a

b

y

O

x

Trang 5

i

y

i

x x i  1

i

y

1

d

2

d

Trang 6

1 2b

-a

2b P

b) (0, )

y , x

(

P

-) y -4(1 3)

(2x a

2b P

P do Khi 1.

-y y

chon Ta

: 0 P

Neu

-3) +

(2x a

2b P

P do Khi y y

chon Ta

: 0 P

Neu

-3) +

(2x a

2b + ) y -2(y ) )2 (y -)2 2((y

+ P P

3) +

(2x a

2b + ) y -2(y ) )2 (y -)2 2((y

P

-P

1) -(y y

-y -) (y d

-d

P

1) -(y -y

d

y -)

(y

d

1

y y

1 x

x

:

2

2 0

0 0

i

i i

2

2 i

1 i i

1 i i

i 2

2 i

1 i i

1 i i

i 2

2 i

1 + i i

1 + i i

1

i

i 2

2 i

1 + i i

1 + i i

1

i

2 i

2 2

2 i 2

1

i

2 i

2

2

2 2

i

1

i 1

i

i 1

i



 

i

y Co

Trang 7

Begin

P = 2(b*b)/(a*a)-2b+1

C1 = 2[(b*b)/(a*a)](2x+3)

C2 = 2[(b*b)/(a*a)](2x+3) + 4(1-y)

x = 0 & y = b

P4P(x, y, c)

1

2

2

y

x a

b

Yes

P < 0 Yes

P = P + C1

No

P = P + C2

y = y - 1

x = x + 1

P4P(x, y, c)

End No

Trang 8

P = 2(b*b)/(a*a)-2b+1

C1 = 2[(b*b)/(a*a)](2x+3)

C2 = 2[(b*b)/(a*a)](2x+3) + 4(1-y)

C3 = 2[(a*a)/(b*b)](2x+3)

C4 = 2[(a*a)/(b*b)](2x+3) + 4(1-y)

1

2

2

y

x

a

b

1

2

2

x

y b

a

Yes

P < 0

Yes

P = P + C1

No

P = P + C2

y = y - 1

x = x + 1

P4P(x, y, c)

x = 0 & y = b

P4P(x, y, c)

Yes

P < 0 Yes

P = P + C3

No

P = P + C4

y = y - 1

x = x + 1 P4P(x, y, c)

End

x = a & y = 0 P4P(x, y, c)

Ngày đăng: 07/08/2014, 20:23

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w