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

chuong 1b compatibility mode

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

ĐỒ HỌA RASTER

CÁC THUẬT TOÁN
VẼ ĐƯỜNG TRÒN

Giảng viên : Bùi Tiến Lên


Phân loại đường tròn
Đường tròn tâm O

O

Đường tròn tâm bất kỳ

O

Trang 2


Ứng dụng phép tònh tiến
Nếu (x, y) thuộc đường tròn tâm O
Thì (x + xc, y + yc) thuộc đường tròn tâm (xc, yc)

(xc, yc)
(x+xc, y+yc)

O
(x, y)

Trang 3




Phöông trình ñöôøng troøn

r
O

x2 + y2 = r 2
y = r2 − x2

Trang 4


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

y

x

O

Trang 5


Ứ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
2

1

3

chọ
n
8

O
4

7

5

6

Trang 6


Vẽ cung một phần tám thứ nhất
Input
r bán kính
Output
{(x1, y1), (x2, y2) … (xn, yn)} “thuộc” cung một phần

tám thứ nhất

A
B

O
Trang 7


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 độ

r
Hàm y = r − x với x ∈ [0,
]
2
x
y' = - 2
r − x2
r2
y" = - 2
(r − x 2 )3 2
2

2

Trang 8


Khảo sát cung 1/8 thứ nhất

Bảng biến thiên

x
y
y'

0
r
0

y" −

r
2
r
2

Đường cong
giảm chậm

−1


Trang 9


Thuật toán trực tiếp
bước 1 Xác đònh điểm đầu
x1 = 0
y1 = r

bước 2 Xác đònh những điểm còn lại
r
Lặp xi < [ ]
2
xi+1 = xi + 1
y = r 2 − xi2+1
yi+1 = Round(y)

Trang 10


Thuaọt toaựn MidPoint
Dửù ủoaựn ủieồm saựng thửự i+1

i

A
B

Trang 11


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) = x2 + y2 – r2
- Cách kiểm tra

P(x, y)

F(x, y)

bên trong

<0

nằm trên

=0

bên ngoài

>0

bên ngoài

bên trong

Trang 12


Thuật toán MidPoint
Xây dựng biến fi
Trung điểm M của AB
M(xi + 1, yi – 1/2)
Biến fi
fi = F(M)
fi = F(xi + 1, yi – 1/2)


yi

i

yi-1/2

A

M

yi-1

B
xi

xi+1

Trang 13


Thuaọt toaựn MidPoint
Coõng thửực tớnh fi
1
fi = x + 2xi + y yi + 1 r +
4
Coõng thửực tớnh fi nguyeõn
2
i


2
i

2

fi = xi2 + 2xi + yi2 yi + 1 r 2

Trang 14


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

Trang 15


Thuật toán MidPoint
Thuật toán
Bước 1 Xác đònh điểm đầu tiên
x1 = 0
y1 = r
Bước 2 Xác đònh những điểm tiếp theo
Lặp xi < yi

fi = …
fi < 0
xi+1 = xi + 1
yi+1 = yi
fi ≥ 0
xi+1 = xi + 1
yi+1 = yi – 1
Trang 16


Thuaọt toaựn MidPoint
Caựch tớnh fi caỷi tieỏn
f1 = 1 r
fi < 0
fi+1 = fi + 2xi + 3
fi 0
fi+1 = fi + 2xi 2yi + 5

Trang 17



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×