Bài giảng đồ họa : Các thuật toán tô màu part 2 potx

4 343 0
Bài giảng đồ họa : Các thuật toán tô màu part 2 potx

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

Thông tin tài liệu

ĐỒ HỌA MÁY TÍNH Dương Anh Đức, Lê Đình Duy Các thuật toán tô màu 5/16 Đ Đ e e à à x x u u a a á á t t c c a a á á u u t t r r u u ù ù c c d d ư ư õ õ l l i i e e ä ä u u c c u u û û a a m m o o ä ä t t c c a a ï ï n n h h ( ( E E D D G G E E ) ) • Min y : giá trò tung độ nhỏ nhất trong 2 đỉnh của cạnh. • txIntersec : hoành độ giao điểm của cạnh với dòng quét hiện hành. • DxPerScan : giá trò 1/m (m là hệ số góc của cạnh). • deltaY : khoảng cách từ dòng quét hiện hành tới đỉnh Max y . Lúc này điều kiện Max yk > trở thành 0≤deltaY . • Giá trò txIntersec được khởi gán ban đầu là hoành độ của đỉnh có tung độ là Min y , và giá trò deltaY được khởi gán ban đầu là 1+− MinMax yy . yMin xIntersect y=k deltaY ĐỒ HỌA MÁY TÍNH Dương Anh Đức, Lê Đình Duy Các thuật toán tô màu 6/16 G G i i a a û û i i q q u u y y e e á á t t t t r r ư ư ơ ơ ø ø n n g g h h ơ ơ ï ï p p d d o o ø ø n n g g q q u u e e ù ù t t đ đ i i q q u u a a đ đ ỉ ỉ n n h h • Tính một giao điểm nếu chiều của hai cạnh kề của đỉnh đó có xu hướng tăng hay giảm. • Tính hai giao điểm nếu chiều của hai cạnh kề của đỉnh đó có xu hướng thay đổi, nghóa là tăng-giảm hay giảm-tăng. • Khi cài đặt để khỏi phải xét điều kiện này cho phức tạp, khi xây dựng dữ liệu cho mỗi cạnh trước khi đưa vào ET, người ta sẽ xử lí các cạnh có đỉnh tính hai giao điểm bằng cách loại đi một pixel trên cùng của một trong hai cạnh. (a) (b) P i P i-1 P i+1 P i P i-1 P i+1 P i-1 P i-1 P i+1 P i+1 P i P i y=k P i-1 P i P i+1 y=k-1 P i+1 y=k P i+1 P i P i-1 y=k-1 P i-1 P i * P i * P i-1 P i+1 ĐỒ HỌA MÁY TÍNH Dương Anh Đức, Lê Đình Duy Các thuật toán tô màu 7/16 M M i i n n h h h h o o ï ï a a t t h h u u a a ä ä t t t t o o a a ù ù n n • Ban đầu : ♦ ET : AB*, AI, H*G, BC, G*F, DC, EF. (loại IH và DE) ♦ AET : NULL. • Khi dòng quét đạt y=y A ♦ ET : H*G, BC, G*F, DC, EF. (chuyển AB*, AI sang AET) ♦ AET : AB*, AI. • Khi dòng quét đạt y=y H* ♦ ET : BC, G*F, DC, EF. (chuyển H*G sang AET) ♦ AET : AB*, H*G. (loại AI vì không còn cắt dòng quét) Top F ED C B G HI A Bottom y B y G* =y G +1 y B* =y B -1 y G y H* =y H +1 y H ĐỒ HỌA MÁY TÍNH Dương Anh Đức, Lê Đình Duy Các thuật toán tô màu 8/16 • Khi dòng quét đạt y=y B ♦ ET : G*F, DC, EF. (chuyển BC sang AET) ♦ AET : BC, H*G. (loại AB*, sắp xếp lại H*G và BC) • Khi dòng quét đạt y=y G* ♦ ET : DC, EF. (chuyển G*F sang AET) ♦ AET : BC, G*F. (loại H*G vì không còn cắt dòng quét) • Khi dòng quét đạt y=y D ♦ ET : NULL. (chuyển DC, EF sang AET) ♦ AET : BC, DC, EF, G*F. (sắp xếp lại BC, GF*, DC, EF) • Khi dòng quét đạt y=y C +1 ♦ ET : NULL. ♦ AET : EF, G*F. (loại BC, DC vì không còn cắt dòng quét) • Khi dòng quét đạt y=y F +1 ♦ ET : NULL. ♦ AET : NULL. (loại EF, G*F vì không còn cắt dòng quét). • Thuật toán dừng tại đây. . (b) P i P i-1 P i+1 P i P i-1 P i+1 P i-1 P i-1 P i+1 P i+1 P i P i y=k P i-1 P i P i+1 y=k-1 P i+1 y=k P i+1 P i P i-1 y=k-1 P i-1 P i * P i * P i-1 P i+1 ĐỒ HỌA MÁY TÍNH Dương Anh Đức, Lê Đình Duy Các thuật toán tô màu 7/16 M M i i n n h h h h o o ï ï a a t t h h u u a a ä ä t t t t o o a a ù ù n n • Ban đầu : ♦ ET : AB*, AI,. quét) Top F ED C B G HI A Bottom y B y G* =y G +1 y B* =y B -1 y G y H* =y H +1 y H ĐỒ HỌA MÁY TÍNH Dương Anh Đức, Lê Đình Duy Các thuật toán tô màu 8/16 • Khi dòng quét đạt y=y B ♦ ET : G*F, DC, EF. (chuyển BC sang AET) ♦ AET : BC, H*G. (loại AB*, sắp. ĐỒ HỌA MÁY TÍNH Dương Anh Đức, Lê Đình Duy Các thuật toán tô màu 5/16 Đ Đ e e à à x x u u a a á á t t c c a a á á u u

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

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan