We can create multiple circles within a Circles in OpenGL, with the following code, you can change the radius Color and width according to your own requirement.
1: #include<Windows.h> 2: #include<glut.h> 3: #include<math.h> 4: 5: void DrawCircle(float x, float y, float radius)
6: {7: float DEG_RAD = 3.14159/180;
8: glBegin(GL_LINE_LOOP); 9: 10: for (int z=0; z<=360; z++)
11: {12: float deg = z*DEG_RAD;
13: glVertex2f(x+cos(deg)*radius,y+sin(deg)*radius); 14: } 15: glEnd(); 16: }17: void Draw()
18: { 19: glClear(GL_COLOR_BUFFER_BIT); 20: glColor3f(1.0 , 0.0, 0.9); 21: DrawCircle(0.0,0.0,0.9); 22: glColor3f(0.0 , 1.0, 0.0); 23: DrawCircle(0.0,0.0,0.7); 24: glColor3f(1.0 , 1.0, 0.0); 25: DrawCircle(0.0,0.0,0.5); 26: glColor3f(1.0 , 1.0, 1.0); 27: DrawCircle(0.0,0.0,0.3); 28: glEnd(); 29: glFlush(); 30: } 31: 32: void Initialize()
33: { 34: glClearColor(0,0,0,1); 35: glMatrixMode(GL_PROJECTION); 36: glLoadIdentity(); 37: glOrtho(0.0, 0.0, 0.0, 0.0, -1.0, 1.0); 38: } 39: 40: void main(int iArgc,char** cppArgv)
41: { 42: glutInit(&iArgc,cppArgv); 43: glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB); 44: glutInitWindowPosition(400,200); 45: glutInitWindowSize(500,400);46: glutCreateWindow("Circles Within Circle by Muhammad Taqi :: www.techgulf.blogspot.com");
47: Initialize(); 48: glutDisplayFunc(Draw); 49: glutMainLoop(); 50: } 
No comments:
Post a Comment