Что значит << прикол но я не нагуглил, а прогнав в дебаге значение в скобке увеличилось вдвое.
static public void Bresenham4Line(Graphics g, Color clr, int x0, int y0, int x1, int y1)
{
//Изменения координат
int deltaX = (x1 > x0) ? (x1 - x0) : (x0 - x1);
int deltaY = (y1 > y0) ? (y1 - y0) : (y0 - y1);
//Направление приращения
int sx = (x1 >= x0) ? (1) : (-1);
int sy = (y1 >= y0) ? (1) : (-1);
if (deltaY < deltaX)
{
int d = (deltaY << 1) - deltaX;
int d1 = deltaY << 1;
int d2 = (deltaY - deltaX) << 1;
PutPixel(g, clr, x0, y0, 255);
int x = x0 + sx;
int y = y0;
for (int i = 1; i <= deltaX; i++)
{
if (d > 0)
{
d += d2;
y += sy;
}
else
d += d1;
PutPixel(g, clr, x, y, 255);
x++;
}
}
else
{
int d = (deltaX << 1) - deltaY;
int d1 = deltaX << 1;
int d2 = (deltaX - deltaY) << 1;
PutPixel(g, clr, x0, y0, 255);
int x = x0;
int y = y0 + sy;
for (int i = 1; i <= deltaY; i++)
{
if (d > 0)
{
d += d2;
x += sx;
}
else
d += d1;
PutPixel(g, clr, x, y, 255);
y++;
}
}
}