实验四-OpenGL多边形存储及绘制_第1页
实验四-OpenGL多边形存储及绘制_第2页
实验四-OpenGL多边形存储及绘制_第3页
实验四-OpenGL多边形存储及绘制_第4页
实验四-OpenGL多边形存储及绘制_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实验四 OpenGL多边形存储及绘制 序号: 姓名: 学号: 成绩 指导教师: 廖赟 1实验目的:基于OpenGL画点函数,读取box.obj文件中的顶点坐标,绘制多边形。2实验环境:(1)运行win7/win8/win10操作系统的PC一台(2)每台PC机安装VC+开发环境3实验步骤:a、读取box.obj中顶点信息,如下。b、其中行开头v 代表顶点,之后两个数字表示顶点坐标(X,Y),坐标原点(0,0)位于窗口左下角。c、其中行开头f代表多边形顶点索引,之后数字表示多边形顶点索引,索引下标从0开始,下标0表示顶点数据第一行,下标1表示顶点数据第二行,以此类推。d、实现顶点表及面片表相关数据

2、结构。e、绘制索引所要求的两个多边形。4实验分析,回答下列问题(1)算法流程图lineSegment(): NoYes No Yes ReadFile():noyesyesnononoyesyesnoyesnoyesyesnoyesnoyes(2)多边形绘制算法代码(包含完整注释)答:#include windows.h#include #include #define GLUT_DISABLE_ATEXIT_HACK#include GL.h#include GLU.h#include GLUT.husing namespace std;int v100;int f1010;void ini

3、t(void)glClearColor(1.0, 1.0, 1.0, 0.0); /设置窗口背景颜色为白色glMatrixMode(GL_PROJECTION); /设置投影参数gluOrtho2D(0.0, 400.0, 0.0, 450.0);void lineSegment(void)glClear(GL_COLOR_BUFFER_BIT);glColor3f(0.0,0.0,0.0); /设置点颜色for(int y = 0,j = 1; fj0!=fj1; j+)for(;fjy+1 != fj0;y+) /第一个多边形glBegin(GL_LINES);glVertex2i(v2*

4、fjy, v2*fjy+1);glVertex2i(v2*fjy+1, v2*fjy+1+1); glEnd();/第二个多边形glBegin(GL_LINES);glVertex2i(v2*fjy, v2*fjy+1);glVertex2i(v2*fj0, v2*fj0+1);glEnd();y=0;glFlush();void ReadFile()ifstream in;string file;in.open(E:/学校学习/计算机图形学/计算机图形学_实验4/box.obj);if(!in)printf(打开失败);char ch;int num = 0;int i = 0;bool i

5、sv = true; /为true存入数组vbool isf = false; /为true存入数组fint j = 0;int y = 0;while(!in.eof()in.read(&ch,1); /每次读取一个字节存在ch中if(ch=f)isv = false;j+;y = 0;if(isv)if (ch=48&ch=48&ch=57)num = num * 10 + (int)ch-48,isf = true; /计算顶点索引if(ch= )if(isf)fjy+ = num,isf = false; /存入顶点索引值num = 0;int main(int argc, CHAR*

6、 argv)glutInit(&argc, argv);glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB); /初始化窗口的显示模式glutInitWindowPosition(50, 100); /设置窗口的位置glutCreateWindow(line segment); /创建一个名为line segment的窗口ReadFile();init(); /完成窗口初始化glutDisplayFunc(lineSegment); /设置当前窗口的显示回调函数glutMainLoop(); /启动主GLUT事件处理循环return 0;(3)简述多边形机内表示形式?答:多边形在机内以数据表的形式表示。在输入每个多边形的信息时,数据放进一些表格中等待后续处理、显示和场景的对象管理。这些多边形数据表分成几何数据表和属性数据表。几何数据表存放顶点坐标和标识多边形面片空间方向的参数,属性数据表存放指定对象的透明度及其表面

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论