1. Trang chủ
  2. » Công Nghệ Thông Tin

slike bài giảng đồ họa máy tính các thuật toán tô màu

44 1,2K 0

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 44
Dung lượng 439 KB

Nội dung

ĐỒ HỌA RASTER ĐỒ HỌA RASTER CÁC THUẬT TOÁN TÔ MÀU CÁC THUẬT TOÁN TÔ MÀU Giảng viên : Bùi Tiến Lên Trang 2 Bài toán tô màu Bài toán tô màu Tô màu là thao tác tìm các điểm sáng “nằm bên trong” một vùng khép kín. Input : Vùng S Output : {(x 1 , y 1 ), (x 2 , y 2 ) … (x n , y n )} Trang 3 Các hướng tiếp cận Các hướng tiếp cận Có hai phương pháp - Tô màu theo lân cận - Tô màu theo dòng quét Toõ maứu theo laõn caọn Toõ maứu theo laõn caọn Trang 5 Lân cận là gì ? Lân cận là gì ? Có hai loại lân cận : lân cận 4 và lân cận 8. Lân cận 4 N 4 (x, y) = {(x-1, y), (x, y+1), (x+1, y), (x, y-1)} Lân cận 8 N 8 (x, y) = {(x-1, y), (x-1, y+1), (x, y+1), (x+1, y+1), (x+1, y), (x+1, y-1), (x, y-1), (x-1, y-1)} (x,y) phảitrái dưới trên x y (x,y) x y trái Trang 6 Thuật toán đệ qui Thuật toán đệ qui bước 1 Kẻ biên vùng cần tô bước 2 Xác đònh một điểm (x, y) nằm bên trong vùng cần tô bươc 3 Tô điểm (x, y), sau đó tô loang sang những điểm lân cận x y Trang 7 Caứi ủaởt ủeọ qui Caứi ủaởt ủeọ qui // To loang void BoundaryFill(CDC *pDC, int x, int y, int fill_color, int boundary_color) { int color; color = pDC->GetPixel(x, y); if((color != fill_color) && (color != boundary_color)) { pDC->SetPixel(x, y, fill_color); BoundaryFill(pDC, x-1, y, fill_color, boundary_color); BoundaryFill(pDC, x, y+1, fill_color, boundary_color); BoundaryFill(pDC, x+1, y, fill_color, boundary_color); BoundaryFill(pDC, x, y-1, fill_color, boundary_color); } } Trang 8 Nhận xét thuật toán đệ qui Nhận xét thuật toán đệ qui Ưu điểm Có thể tô vùng có hình dạng bất kỳ. Khuyết điểm Không thể dùng để tô các vùng có kích thước lớn. kích thước ! kích thước ! Trang 9 Thuật toán cải tiến Thuật toán cải tiến bước 1 Cất điểm hạt giống đầu tiên vào kho. bước 2 Lặp nếu kho không rỗng - c 1 Lấy điểm hạt giống. - c 2 Tô điểm hạt giống sau đó tô loang sang trái và sang phải. - c 3 Bổ sung những điểm hạt giống mới vào kho từ dòng trên và dòng dưới. Trang 10 Thuật toán cải tiến Thuật toán cải tiến hạt giống : điểm sáng kho : chứa các điểm hạt giống [...]... p0pn-2pn-1 2 Tô từng tam giác Trang 27 Tô hình đa giác Nguyên lý chia tam giác Mọi đa giác không tự cắt đều có thể phân chia thành các tam giác Trang 28 Thuật toán tô đa giác tổng quát Thuật toán bước 1 Tìm ymin và ymax ymin = min{yi, (xi, yi) ∈ P} ymax = max{yi, (xi, yi) ∈ P} ymax y c2 Sắp xếp các giao điểm I2 I3 I4 P bước 2 Tô từng dòng Lặp y : ymin … ymax c1 Tìm các giao điểm I1 y ymin c3 Tô các đoạn... ? Trang 14 Tô theo lân cận - Một số vấn đề Đường biên màu gì ? Trang 15 Tô theo lân cận - Một số vấn đề Trang 16 Tô màu theo dòng quét Khái niệm dòng quét Dòng quét là dòng điểm sáng trên màn hình y Trang 18 Tô hình chữ nhật l r y t y b Trang 19 Tô hình tam giác Input (X1, Y1), (X2, Y2), (X3, Y3) Cách tô bước 1 : Sắp xếp các đỉnh Y1 ≤ Y2 ≤ Y3 bước 2 : Phân trường hợp Theo tung độ Trang 20 Tô hình tam.. .Thuật toán cải tiến Minh họa tô loang biên biên Trang 11 Thuật toán cải tiến Tiêu chuẩn để là điểm hạt giống 1 Điểm này chưa được tô và không phải điểm biên 2 Điểm này thoả : - Điểm trái đầu tiên - hoặc bên trái của nó là điểm biên (nếu nó không phải là điểm trái đầu tiên) Trang 12 Thuật toán cải tiến Minh họa bổ sung những điểm hạt giống mới biên biên hạt giống biên biên biên Trang 13 Tô theo... Trang 23 Tô hình tam giác Ví dụ Các hoành độ giao điểm của các dòng quét với cạnh (2, 2), (11, 6) 6 5 4 3 2 2 1 8 4 17 4 26 4 35 4 44 4 Trang 24 Tô hình tam giác Cách tính hoành độ giao điểm 2 x đầu là X1 xmoi = x cu + k với k= X2 − X1 Y2 − Y1 1 Trang 25 Tô hình tam giác 3 Y3 Y2 y Y1 2 1 Trang 26 Tô hình đa giác lồi p0 p3 p1 p2 − ∆2 p0p2p3 p0 p1 pn-1 pn-2 p2 p3 Cách tô 1 Chia đa giác lồi có n đỉnh... Trang 21 Tô hình tam giác Y1 1 Xmin 3 2 Xmax Tô tam giác (Y1 = Y2 = Y3) 1 Tìm Xmin, Xmax 2 Tô dòng Y1 bắt đầu tại cột Xmin, kết thúc tại cột Xmax Trang 22 Tô hình tam giác Y2 2 3 Tô tam giác (Y1 < Y2 = Y3) Lặp y : Y1 … Y2 y y Y1 1 Tìm hoành độ giao điểm xl, xr giữa dòng quét y với các cạnh trái và cạnh phải của tam giác 2 Tô dòng y bắt đầu tại cột xl, kết thúc tại cột xr 1 xl xr Trang 23 Tô hình tam... c d I3 h I4 e f g Trang 34 Ví dụ {(1, 1) (2, 7) (4, 9) (7, 9) (9, 5) (9, 1) (7, 1) (5, 5) (4, 1)} c 9 b 8 d 7 6 5 4 a 3 h 2 1 e g i 1 2 f 3 4 5 6 7 8 9 Trang 35 Tiền xử lý 1 c 9 b 8 d 7 6 5 4 Loại bỏ các cạnh {c, f, i} a 3 h 2 1 e g i 1 2 f 3 4 5 6 7 8 9 Trang 36 . ĐỒ HỌA RASTER ĐỒ HỌA RASTER CÁC THUẬT TOÁN TÔ MÀU CÁC THUẬT TOÁN TÔ MÀU Giảng viên : Bùi Tiến Lên Trang 2 Bài toán tô màu Bài toán tô màu Tô màu là thao tác tìm các điểm sáng. 10 Thuật toán cải tiến Thuật toán cải tiến hạt giống : điểm sáng kho : chứa các điểm hạt giống Trang 11 Thuật toán cải tiến Thuật toán cải tiến biên biên Minh họa tô loang Trang 12 Thuật toán. xét thuật toán đệ qui Nhận xét thuật toán đệ qui Ưu điểm Có thể tô vùng có hình dạng bất kỳ. Khuyết điểm Không thể dùng để tô các vùng có kích thước lớn. kích thước ! kích thước ! Trang 9 Thuật

Ngày đăng: 17/10/2014, 07:28

TỪ KHÓA LIÊN QUAN