Laboratorium grafika2D 4


Laboratorium nr 4 1/2
Grafika Komputerowa 2D
Instrukcja
laboratoryjna Temat: Rysowanie okręgów i wypełnianie
Przygotował: dr inż. Grzegorz Aukawski, mgr inż. Maciej Lasota
4
1) Rysowanie okręgów
1.1) Algorytm podstawowy
Optymalny krok pętli rysującej odcinek (aby nie było przerw między punktami okręgu):
1
ą =
R
Kąt jednostkowy w radianach
1.2) Ośmiokrotna symetria
1
Algorytm podstawowy ośmiokrotnej symetrii polega na rysowaniu tylko okręgu.
8
Reszta punktów wyznaczana jest przez zamianę współrzędnych miejscami i zmianę znaku.
Laboratorium nr 4 2/2
1.3) Wypełnianie metodą rekurencyjną
Wypełnianie rozpoczynamy od punktu wewnątrz wielokąta. Funkcja wywołuje samą
siebie dla pikseli wokół bieżącego punktu.
Kroki algorytmu:
void Wypełnij(C);
(1) Zmień kolor punktu C;
(2) Dla każdego N = 0, 2, 4, 6 wykonuj:
Jeżeli kolor_punktu pN `"C i kolor_punktu pN `"kolor_krawędzi
Wypełnij(pN);
(3) Koniec.
UWAGA! Funkcja używa bardzo dużo pamięci (stos). Można to poprawić
przez zamianę na funkcję iteracyjną korzystającą ze stosu
Przydatne funkcje:
Nazwa funkcji Parametry Opis
Funkcja ustawia piksel o danym
putpixel void putpixel(BITMAP *bmp, int x, int y, int color) kolorze we wskazanym punkcie
bitmapy
Funkcja pobiera kolor
getpixel int getpixel(BITMAP *bmp, int x, int y);
wskazanego piksela bitmapy


Wyszukiwarka

Podobne podstrony:
Laboratorium grafika3D 4
Laboratorium grafika2D 7
Laboratorium grafika3D 7
Laboratorium grafika2D 3
Laboratorium grafika2D 1
Laboratorium grafika3D 3
Laboratorium grafika3D 5
Laboratorium grafika3D 6
Laboratorium grafika3D 2
Laboratorium grafika2D 2
Laboratorium grafika2D 6
Laboratorium grafika3D 1
Rola laboratoriów w świetle wymagań systemów zarządzania jakoscią
Laboratorium 3
Arch grafika osnovi kompozicii grigoryan

więcej podobnych podstron