程序用OPENGL绘点时很卡
我做了个程序(科学计算可视化的)用opengl绘制大量的点,
运行时一卡一卡的,还经常出现程序无响应
代码如下:(3层循环,每一层循环都有上千次)
for(k=1;k<Tn;k++)
{
//----------雷克子波离散值------------//
ricker[k]=exp((-4*PI*PI*f*f*k*k*Delta_t*Delta_t)/(r*r))*cos(2*PI*f*Delta_t*k);
glClear(GL_COLOR_BUFFER_BIT);
glBegin(GL_POINTS);
for(i=1;i<Xn-1;i++)
for(j=1;j<Yn-1;j++)
{
Is_Center=0.0;
if(i==Wave_Center->x()&&j==Wave_Center->y())Is_Center=1.0;
u[i][j][k+1]=2*u[i][j][k]-u[i][j][k-1]+(Delta_t*Delta_t/(Delta_h*Delta_h))*v[i][j]*v[i][j]*(u[i+1][j][k]-2*u[i][j][k]+u[i-1][j][k]+u[i][j+1][k]-2*u[i][j][k]+u[i][j-1][k])+ricker[k]*Is_Center;
glColor3f(u[i][j][k],u[i][j][k],u[i][j][k]);
glVertex2f((1.0/width)*i,(1.0/hight)*j);
}
glEnd();
glFlush();
}
请教有没有办法解决这个问题啊????谢谢!!!!我的email:hhshiyi@163.com