问题描述
在视觉工作室上运行
我正在尝试编写代码,其中一行从屏幕的一侧到屏幕的另一侧。
#include<stdio.h>
#include<conio.h>
#include<windows.h>
#include<glut.h>
int x1,y1,x2,y2,tx,ty,a;
void myInit(void)
{
glClearColor(0.0,0.0,0.0);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluOrtho2D(0.0,500.0,400.0);
}
void mydisplay()
{
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(1.0,0.0);
glPointSize(4.0);
x1 = 10;
y1 = 100;
x2 = 100;
y2 = 200;
tx = 10;
ty = 0;
glBegin(GL_LInes);
glVertex2i(x1,y1);
glVertex2i(x2,y2);
glEnd();
//printf("press 1 to start ");
//scanf_s("%d",a);
_getch();
for (int i = 0; i < 38; i++)
{
if (i % 2 == 0)
{
glClear(GL_COLOR_BUFFER_BIT);
x1 += tx;
y1 += ty;
x2 += tx;
y2 += ty;
glBegin(GL_LInes);
glVertex2i(x1,y1);
glVertex2i(x2,y2);
glEnd();
}
}
glFlush();}
int main(int argc,char** argv)
{
glutinit(&argc,argv);
glutinitdisplayMode(gluT_SINGLE | gluT_RGB);
glutinitwindowSize(640,480);
glutinitwindowPosition(10,10);
glutCreateWindow("TRANSLATION TRANFORMATION");
myInit();
glutdisplayFunc(mydisplay);
glutMainLoop();
return 0;
}
当我尝试运行代码时,它没有显示移动的动画行,而是显示了白色输出屏幕(无响应),当我给“ getch()”一个字符时,它直接显示了代码的最终结果,该行应位于最后。 我还尝试创建一个永久的线以使线继续移动,以便可以看到它在移动,输出屏幕只是变成全白而没有响应。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)