Algorytm malarza

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacja, szukaj
Problem algorytmu malarza

Algorytm malarza (ang. painter's algorithm) — algorytm stosowany w grafice komputerowej służący do wyznaczania powierzchni widocznych. Polega na rysowaniu obiektów w kolejności od najdalszego do najbliższego, podobnie jak malarz przedstawia bliższe obiekty malując je na namalowanych wcześniej, bardziej odległych. Fragmenty są następnie rysowane w tej kolejności. Zakłada się przy tym, że rysunek powstaje analogicznie do malowania obrazu olejnego, stąd nazwa algorytmu. Oznacza to, że fragment później namalowany zasłania (zamalowuje) wszystko, co było dotychczas namalowane w tym miejscu. Tę cechę ma każde urządzenie wyświetlające, ale stosowanie tego algorytmu bezpośrednio na drukarce byłoby niemożliwe.

Jest jednym z najprostszych algorytmów HSR i nie usuwa powierzchni niewidocznych, dlatego przy złożonych scenach powinien być stosowany razem z innymi metodami, np. backface culling, BSP tree.

Algorytm nazywany jest również algorytmem sortowania ze względu na głębokość, ponieważ rysowanie obiektów poprzedza sortowanie ze względu na głębokość (na ogół współrzędną z) i w ogólnym przypadku przed narysowaniem sceny 3D należy rozstrzygnąć wszystkie niejednoznaczności związane z sortowaniem — czy wielokąty nie przenikają przez siebie, wtedy należy skorzystać z innego algorytmu, np. Bufor Z.

W zastosowaniach 2 i 1/2D (kartografia, projektowanie układów scalonych, zarządzanie oknami w systemach graficznych) takie problemy nie występują.

Bibliografia[edytuj | edytuj kod]

  • James D Foley, Andries van Dam, Steven K Freiner, John F Hughes, Richard L Phillips: Wprowadzenie do grafiki komputerowej. Jan Zabrodzki (tłumaczenie). Warszawa: Wydawnictwa Naukowo-Techniczne, 1995. ISBN 83-204-1840-2.