为什么opengl的程序只出现白色背景,没有运行出图像啊 10

#include<stdio.h>#include<GL/glut.h>floata[440],b[146][2];intk;intdata(){floatdata;fl... #include <stdio.h>
#include <GL/glut.h>
float a[440], b[146][2];
int k;
int data()
{
float data;
float a[440], b[146][2];
int i=0,k=0;
FILE *fp = fopen("D:\\1.txt", "r");
if (!fp)
{
printf("can't open file\n");
return -1;
}
while (!feof(fp))
{

fscanf(fp, "%8f", &data);
a[i] = data;

i++;
}
k = i / 3;
int j, t = 0;
for (i = 0; i<k; i++)
for (j = 0; j<3; j++)
{
b[i][j] = a[t++]*10;
printf("%8f\t", b[i][j]);
}
//for (m = 0; m<k; m++)
//for (n = 0; n<3; n++)
//{
//printf("%8f\t", b[m][n]);
//}
printf("\n");
fclose(fp);
getchar();
return 0;
}
int main(int argc, char *argv[])
{
void display(void);
void reshape21(int w, int h);
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH);
glutInitWindowSize(500, 300);
glutInitWindowPosition(100, 100);
glutCreateWindow("point");
glClearColor(0.0f, 0.0f, 1.0f, 1.0f);
glutReshapeFunc(reshape21);
glutDisplayFunc(display);
glutMainLoop();
glutSwapBuffers();
return 0;
}
void display(void)
{
int data();

GLfloat x1, y1, z1;
int i, j;
data();
glClear(GLUT_DEPTH | GLUT_DOUBLE | GLUT_RGBA);
glPointSize(1);
glColor3f(0.0f, 0.0f, 1.0f);
glBegin(GL_POINT);
for (i = 0; i<k; i++)
{
x1 = b[i][0];
y1 = b[i][1];
z1 = b[i][2];
glVertex3f(x1, y1, z1);
printf("%f %f %f\n", x1, y1, z1);
}
glEnd();
glutSwapBuffers();
}

void reshape21(int w, int h)
{
// 这里要设置opengl在窗口的绘图区域,一般是整个窗口
// 一般只在窗口reshape时才重新设定下投影矩阵和模型矩阵
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
// 镜头默认在坐标原点看向Z轴负方向,而glOrtho最后两个参数表示
// 距离镜头zNear到zFar距离间的图形才可以看到
// 而且默认坐标系Z轴正方向是指向屏幕朝外侧的,
// 你设置成0, 40就只能看到Z坐标( -40, 0 )间的物体,
// 所以zNear给个负数,就能看到Z坐标为正的物体了
glOrtho(-1.5, 1.5, -1.5, 1.5, -50, 100);
// 投影矩阵设好后再将当前矩阵设置为模型矩阵,
// 方便后续的图形绘制和图形变换
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
}
1.txt 是一个机翼数据
展开
 我来答
匿名用户
2017-06-05
展开全部
glClearColor(1.0f, 1.0f, 1.0f, 0.0f);设置当前帧的背景颜色
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式