SHARE
TWEET

drawline_3d

eyitsmerubi Apr 23rd, 2019 75 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. void DrawLine(int x1, int y1, int x2, int y2, short c = 0x2588, short col = 0x000F)
  2.     {
  3.         int x, y, dx, dy, dx1, dy1, px, py, xe, ye, i;
  4.         dx = x2 - x1; dy = y2 - y1;
  5.         dx1 = abs(dx); dy1 = abs(dy);
  6.         px = 2 * dy1 - dx1; py = 2 * dx1 - dy1;
  7.         if (dy1 <= dx1)
  8.         {
  9.             if (dx >= 0)
  10.                 { x = x1; y = y1; xe = x2; }
  11.             else
  12.                 { x = x2; y = y2; xe = x1;}
  13.  
  14.             Draw(x, y, c, col);
  15.            
  16.             for (i = 0; x<xe; i++)
  17.             {
  18.                 x = x + 1;
  19.                 if (px<0)
  20.                     px = px + 2 * dy1;
  21.                 else
  22.                 {
  23.                     if ((dx<0 && dy<0) || (dx>0 && dy>0)) y = y + 1; else y = y - 1;
  24.                     px = px + 2 * (dy1 - dx1);
  25.                 }
  26.                 Draw(x, y, c, col);
  27.             }
  28.         }
  29.         else
  30.         {
  31.             if (dy >= 0)
  32.                 { x = x1; y = y1; ye = y2; }
  33.             else
  34.                 { x = x2; y = y2; ye = y1; }
  35.  
  36.             Draw(x, y, c, col);
  37.  
  38.             for (i = 0; y<ye; i++)
  39.             {
  40.                 y = y + 1;
  41.                 if (py <= 0)
  42.                     py = py + 2 * dx1;
  43.                 else
  44.                 {
  45.                     if ((dx<0 && dy<0) || (dx>0 && dy>0)) x = x + 1; else x = x - 1;
  46.                     py = py + 2 * (dx1 - dy1);
  47.                 }
  48.                 Draw(x, y, c, col);
  49.             }
  50.         }
  51.     }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top