1 if(dx == 0){
2 if(yf > yi){ //linha pra baixo
3 while(linha.y != yf)
4 {
5
6 linha.y++;
7 putPixel(linha);
8
9 }
10 }
11 else{ //linha pra cima
12 while(linha.y != yf)
13 {
14
15 linha.y--;
16 putPixel(linha);
17
18 }
19 }
20
21 }
22 else if(dy == 0){
23 if(xf > xi){ //linha pra direita
24 while(linha.x != xf)
25 {
26
27 linha.x++;
28 putPixel(linha);
29
30 }
31 }
32 else{ //linha pra esquerda
33 while(linha.x != xf)
34 {
35
36 linha.x--;
37 putPixel(linha);
38
39 }
40 }
41 }
1void drawLine(Pixel inicial, Pixel final){
2 int xi = inicial.x;
3 int xf = final.x;
4 int yi = inicial.y;
5 int yf = final.y;
6 int dx = abs(xf - xi);
7 int dy = abs(yf - yi);
8 int controle = 0; //Controla se a direção menor vai crescer ou nao;
9 int incX = 0;
10 int incY = 0;
11
12 //Define se Y e X estão indo nas direções positivas ou negativas
13 if(xf > xi) incX = 1;
14 else incX = -1;
15
16 if(yf > yi) incY = 1;
17 else incY = -1;
18
19 putPixel(inicial);
20 Pixel linha = {inicial.x, inicial.y, inicial.red, inicial.green, inicial.blue, inicial.alpha}; //Esse pixel é o que se moverá e pintará a linha