void RestrictedDrawLine(
int x0, int y0,
int x1, int y1,
int color
) {
const int dx(x1-x0));
const int dy(y1-y0));
int F(2*dy - dx); // F(x0+1,y0+1/2)
const int dF_E(2*dy); // Delta F east
const int dF_NE(2*(dy-dx)); // Delta F north-east
int y(y0);
for (int x(x0); x!=x1+1; x++) {
SetPixel(x, y, color);
if(F>0) {
F += dF_NE;
y += 1;
}
else
F += dF_E;
}
}
Implementierung der Fälle für andere Steigungen
liefert kompletten Darstellungsalgorithmus.