-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathREADME.txt
31 lines (30 loc) · 1.52 KB
/
README.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
main.c: Se citesc comenzi de la tastatura pana se citeste quit si se apeleaza
functiile corespunzatoare comenzilor
basic.c: Implementare comenzi edit, save
edit.c: Implementare comenzi insert, set, draw, fill
draw_functions.c: Functii pentru draw (line, tri, rect)
edit, save:
Se citeste calea fisierului-imagine, se citeste/scrie header-ul fisierului,
se aloca dinamic si se citeste/scrie matricea de pixeli
insert:
Se citesc offset-ul, latimea, inaltimea si matricea de pixeli din fisierul
imaginii ce trebuie inserate. Se pleaca de la pozitia data si se copiaza
pixelii din imaginea de inserat pana aceasta se termina sau se iese din
limitele imaginii curente
set:
Seteaza culoarea/latimea creionului in variabilele pen/fill_data
pentru comenzile draw/fill
draw:
Citeste comanda pentru draw si apeleaza functia specifica
draw_line:
Deseneaza o linie, afland mai intai pe ce axa se afla intervalul maxim,
il parcurge de la minim la maxim si afla cealalta coordonata a punctului
in functie de formula data. Patratele in care sunt incadrati pixelii
principali sunt umpluti folosind functia fill_rect
draw_tri, draw_rect:
Folosesc functia draw_line pentru a desena liniile unui triunghi/dreptunghi
fill:
Functie care implementeaza umplerea recursiva. Verifica daca pixelul curent
se afla in limitele bitmap-ului si daca culoarea acestuia este aceeasi ca
cea a pixelului de start, modifica pixelul in culoare setata si apoi trece
la verificarea pixelilor care sunt vecini cu cel curent