Drawing Bresenham’s Line- Algorithm in all quadrants
- by Yoyo2965259
I am newbie for OpenGL. I am practicing the exercises from my textbook but I could not get the outputs which is should be in Bresenham's Line Algorithm in all quadrants.
Here's the coding:
#include <Windows.h>
#include <GL/glut.h>
void init(void) {
glClearColor(0.0, 0.0, 0.0, 0.0);
glShadeModel(GL_FLAT);
}
void BresnCir(void) {
int delta, deltadash;
glClear(GL_COLOR_BUFFER_BIT);
glPointSize(3.0);
int r = 150;
int x = 0;
int y = r;
int D = 2 * (1 - r);
glBegin(GL_POINTS);
do {
glVertex2i(x, y);
if (D < 0) {
delta = 2 * D + 2 * y - 1;
if (delta <= 0) {
x++;
Right(x);
} else {
x++;
y--;
Diagonal(x, y);
}
glVertex2i(x, y);
} else {
deltadash = 2 * D - 2 * x - 1;
if (deltadash <= 0) {
x++;
y--;
Diagonal(x, y);
} else {
y--;
Down(y);
}
glVertex2i(x, y);
}
if (D == 0) {
x++;
y--;
Diagonal(x, y);
glVertex2i(x, y);
}
} while (y > 0);
glEnd();
glFlush();
}
int main(int argc, char** argv) {
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
glutInitWindowSize(400, 150);
glutInitWindowPosition(100, 100);
glutCreateWindow(argv[0]);
init();
glutDisplayFunc(BresnCir);
glutMainLoop();
return 0;
}
But, it keep comes out with errors C3861.