计算机图形学曲线曲面.docVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机图形学曲线曲面

北方工业大学 计算机图形学课程实验报告 题 目: 实验五 曲线曲面 学 院: 计算机学院 专 业: 数字媒体技术 指导教师: 蔡兴泉 学生班级: 学生学号: 学生姓名: 教师评定: 实验报告5 曲线曲面 一.实验目的 1.熟悉OpenGL图形库; 2.掌握曲线曲面实现算法。 二.实验环境 1.软件环境: 操作系统:WinXp 应用软件:VC6.0,OpenGL 2.硬件环境(查看自己的机子) CPU: Intel PIV 2.80GHz 内存RAM: 1GB 显卡:NVIDIA GeForce7650,256M显存 三.实验内容 1. 写程序实现Bezier曲线 2. 写程序实现绘制3个半径不同、颜色不同的小球 3. 写程序实现一个场景,绘制1个立方体、1个圆锥、1个圆柱、1个茶壶 四.程序及结果 1. Bezier曲线实现关键程序及注释 void RenderScene(void) { int i; glClear(GL_COLOR_BUFFER_BIT) //设置贝塞尔曲线 glMap1f(GL_MAP1_VERTEX_3, //生成的数据类型 0.0f, //u值的下界 100.0f, / //u值的上界 3, //顶点在数据中的间隔,x,y,z所以间隔是3 nNumPoints, //u方向上的阶,即控制点的个数 ctrlPoints[0][0]); //指向控制点数据的指针 glEnable(GL_MAP1_VERTEX_3);// //必须在绘制顶点之前开启 glBegin(GL_LINE_STRIP); //使用画线的方式来连接点 for(i = 0; i = 100; i++) { glEvalCoord1f((GLfloat) i); //求的点坐标 } glEnd(); DrawPoints();//画点 glutSwapBuffers();/ /交换两个缓冲区指针 } 2. 小球绘制实现关键程序及注释 void RenderScene(void) { GLUquadricObj *pObj; // 定义Quadric Object glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);//清屏 glPushMatrix();//矩阵状态 glTranslatef(0.0f, -1.0f, -5.0f); glRotatef(xRot, 1.0f, 0.0f, 0.0f);// glRotatef(yRot, 0.0f, 1.0f, 0.0f); pObj = gluNewQuadric();//创建一个新的二次曲面状态对象 gluQuadricNormals(pObj, GLU_SMOOTH);// glPushMatrix(); glColor3f(1.0f, 1.0f, 1.0f); //定义颜色为白 glTranslatef(0.0f, 1.0f, 0.0f);//圆心坐标 gluSphere(pObj, .3f, 26, 13); // 绘制小球半径为0.3 glPopMatrix(); glPushMatrix(); glColor3f(1.0f, 0.0f, 0.0f);//定义颜色为红 glTranslatef(0.0f, 0.0f, 0.0f); // 圆心坐标 gluSphere(pObj, .5f, 26, 13);//绘制小球半径为0.5 glPopMatrix();// glPushMatrix();// glColor3f(0.0f, 0.0f, 0.0f);// 定义颜色为黑 glTranslatef(0.0f, 2.0f, 0.0f); // 圆心坐标 gluSphere(pObj, 0.2f, 26, 13);// 绘制小球半径为0.2 glPopMatrix(); glPopMatrix();//恢复矩阵状态

文档评论(0)

aicencen + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档