Guest User

Untitled

a guest
Dec 13th, 2018
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.51 KB | None | 0 0
  1. void draw_line(SDL_Surface * s, int x0, int y0, int x1, int y1, unsigned color){
  2.     unsigned x, y, count = x0;
  3.  
  4.     if(x0 != x1 && y1 != y0 && x0 < x1 && y0 < y1)
  5.         for(y = y0; y < y1; y++){
  6.             for(x = count; x < count+1; x++)
  7.                 put_pixel(s, x, y, RGB(color, color, color));
  8.             count++;
  9.         }
  10.     else if(x0 != x1 && y1 != y0 && x0 > x1 && y0 < y1)
  11.         for(y = y0; y < y1; y++){
  12.             for(x = x1; x > count-1; x--)
  13.                 put_pixel(s, x, y, RGB(color, color, color));
  14.             count--;
  15.         }
  16.     else if(x0 != x1 && y1 != y0 && x0 < x1 && y0 > y1)
  17.         for(y = y1; y < y0; y--){
  18.             for(x = count; x < count+1; x++)
  19.                 put_pixel(s, x, y, RGB(color, color, color));
  20.             count++;
  21.         }
  22.     else if(x0 != x1 && y1 != y0 && x0 > x1 && y0 > y1)
  23.         for(y = y1; y < y0; y--){
  24.             for(x = x1; x > count-1; x--)
  25.                 put_pixel(s, x, y, RGB(color, color, color));
  26.             count--;
  27.         }
  28.     else if(x0 != x1 && x0 < x1)
  29.         for(x = x0; x < x1; x++)
  30.             put_pixel(s, x, y, RGB(color, color, color));
  31.     else if(x0 != x1 && x0 > x1)
  32.         for(x = x1; x > x0; x--)
  33.             put_pixel(s, x, y, RGB(color, color, color));
  34.     else if(y0 != y1 && y0 < y1)
  35.         for(y = y0; y < y1; y++)
  36.             put_pixel(s, x, y, RGB(color, color, color));
  37.     else if(y0 != y1 && y0 < y1)
  38.         for(y = y1; y > y0; y--)
  39.             put_pixel(s, x, y, RGB(color, color, color));
  40. }
Add Comment
Please, Sign In to add comment