Wykład podstawowy stanowiący wprowadzenie do algorytmów grafiki komputerowej. Poruszane zagadnienia obejmują: podstawowe algorytmy rastrowe, algorytmy aproksymacji półtonowej, transformacje 2D/3D, rzutowanie 3D->2D, algorytmy wyznaczania powierzchni widocznych, modelowanie oświetlenia, modelowanie krzywych i powierzchni krzywoliniowych.
Zawartość:
- Algorytmy rastrowe: podstawowy algorytm przyrostowy kreślenia odcinka, kreślenie odcinków algorytmem z punktem środkowym, kreślenie okręgów algorytmem z punktem środkowym, algorytmy wypełniania wielokątów, algorytmy aproksymacji półtonowej (metoda progowa, metoda Floyda-Steinberga, metoda komórkowa)
- Obcinanie 2D: algorytm Cohena-Sutherlanda, algorytm Sutherlanda-Hodgmana
- Przekształcenia 2D i 3D: współrzędne jednorodne, macierze przekształceń, składanie przekształceń
- Rzutowanie 3D->2D: klasy metod rzutowania, specyfikowanie rzutu, rzuty perspektywiczne w układzie współrzędnych obserwatora, rzuty perspektywiczne w układzie współrzędznych świata rzeczywistego, obcinanie 3D
- Wyznaczanie powierzchni widocznych: wybieranie tylnych ścian, prostokąty ograniczające, algorytm Z-bufora, metoda śledzenia promieni
- Modelowanie oświetlenia: lokalny model oświetlenia, cieniowanie Gourauda, cieniowanie Phonga, rekursywna metoda śledzenia promieni, antialiasing, otoczkowanie, Light Caching, znajdowanie przecięcia promienia z płaszczyzną i sferą
- Modelowanie krzywych i powierzchni krzywoliniowych: krzywe trzeciego stopnia, krzywe Hermite'a, krzywe Beziera, powierzchnie Beziera