Shadow Dancer
چهارشنبه 16 تیر 1389, 04:20 صبح
سلام و وقت بخیر خدمت همگی
من این کد رو برای ترسیم بیضی با استفاده از OpenGL نوشتم. هیچ خطای زمان کامپایلی هم دریافت نکردم اما موقع اجرا گویی که برنامه وارد یک حلقه نامتناهی میشه و صفحه ترسیم هنگ میکنه. هر چی هم خط به خط دیباگ کردم و مقدار متغیرها رو چک کردم نفهمیدم مشکل از کجاست.
لطفا اشکال این کد رو بفرمایید :
#include "stdafx.h"
#include <math.h>
#include "glut.h"
const float DEG2RAD = 3.14159/180;
void init (void)
{
glClearColor(1.0,1.0,1.0,0.0);
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(1,1,1);
glMatrixMode(GL_PROJECTION);
gluOrtho2D(0.0,200.0,0.0,150.0);
}
void DrawEllipse()
{
float x,y,z;
float t;
glBegin(GL_POINTS);
t= 0;
while(t<360)
{
x = 5*sin(t);
y = 4*cos(t);
z = 0;
glVertex2f(x,y);
t++;
}
glEnd();
glFlush();
}
int _tmain(int argc, char** argv)
{
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_RGB);
glutInitWindowPosition(50,100);
glutCreateWindow("Drawing Line Using OpenGL");
init();
glutDisplayFunc(DrawEllipse);
glutMainLoop();
return 0;
}
int _tmain(int argc, char** argv)
{
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_RGB);
glutInitWindowPosition(50,100);
glutCreateWindow("Drawing Line Using OpenGL");
init();
glutDisplayFunc(DrawEllipse);
glutMainLoop();
return 0;
}
}
من این کد رو برای ترسیم بیضی با استفاده از OpenGL نوشتم. هیچ خطای زمان کامپایلی هم دریافت نکردم اما موقع اجرا گویی که برنامه وارد یک حلقه نامتناهی میشه و صفحه ترسیم هنگ میکنه. هر چی هم خط به خط دیباگ کردم و مقدار متغیرها رو چک کردم نفهمیدم مشکل از کجاست.
لطفا اشکال این کد رو بفرمایید :
#include "stdafx.h"
#include <math.h>
#include "glut.h"
const float DEG2RAD = 3.14159/180;
void init (void)
{
glClearColor(1.0,1.0,1.0,0.0);
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(1,1,1);
glMatrixMode(GL_PROJECTION);
gluOrtho2D(0.0,200.0,0.0,150.0);
}
void DrawEllipse()
{
float x,y,z;
float t;
glBegin(GL_POINTS);
t= 0;
while(t<360)
{
x = 5*sin(t);
y = 4*cos(t);
z = 0;
glVertex2f(x,y);
t++;
}
glEnd();
glFlush();
}
int _tmain(int argc, char** argv)
{
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_RGB);
glutInitWindowPosition(50,100);
glutCreateWindow("Drawing Line Using OpenGL");
init();
glutDisplayFunc(DrawEllipse);
glutMainLoop();
return 0;
}
int _tmain(int argc, char** argv)
{
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_RGB);
glutInitWindowPosition(50,100);
glutCreateWindow("Drawing Line Using OpenGL");
init();
glutDisplayFunc(DrawEllipse);
glutMainLoop();
return 0;
}
}