电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

OpenGL之NURBS曲线和曲面VIP免费

OpenGL之NURBS曲线和曲面_第1页
1/8
OpenGL之NURBS曲线和曲面_第2页
2/8
OpenGL之NURBS曲线和曲面_第3页
3/8
上一节讲了一般的曲线与曲面的绘制,本节讲NURBS 曲线和曲面的绘制。 例 11:此例绘制两个相同形状的NURBS 曲面,不同之处是一个为线框式,一个是由实多边形组成。运行后可以看到其中的区别,如图十三所示。 #include #include GLUnurbsObj *theNurb1; GLUnurbsObj *theNurb2; GLfloat ctrlpoints[5][5][3] = {{{-3,0.5,0},{-1,1.5,0},{-2,2,0},{1,-1,0},{-5,0,0}}, {{-3,0.5,-1},{-1,1.5,-1},{-2,2,-1},{1,-1,-1},{-5,0,-1}}, {{-3,0.5,-2},{-1,1.5,-2},{-2,2,-2},{1,-1,-2},{-5,0,-2}}, {{-3,0.5,-3},{-1,1.5,-3},{-2,2,-3},{1,-1,-3},{-5,0,-3}}, {{-3,0.5,-4},{-1,1.5,-4},{-2,2,-4},{1,-1,-4},{-5,0,-4}}};// 控制点 GLfloat mat_diffuse[] = {1.0,0.5,0.1,1.0}; GLfloat mat_specular[] = {1.0,1.0,1.0,1.0}; GLfloat mat_shininess[] = {100.0}; GLfloat light_position[] = {0.0,-10.0,0.0,1.0}; void myInit(void) { glClearColor(1.0,1.0,1.0,0.0);// 设置背景色 /*为光照模型指定材质参数*/ glMaterialfv(GL_FRONT,GL_DIFFUSE,mat_diffuse); glMaterialfv(GL_FRONT,GL_SPECULAR,mat_specular); glMaterialfv(GL_FRONT,GL_SHININESS,mat_shininess); glLightfv(GL_FRONT,GL_POSITION,light_position);//设置光源参数 glLightModeli(GL_LIGHT_MODEL_TWO_SIDE,GL_TRUE);//设置光照模型参数 /*激活光照*/ glEnable(GL_LIGHTING); glEnable(GL_LIGHT0); glDepthFunc(GL_LEQUAL); glEnable(GL_DEPTH_TEST); glEnable(GL_LEQUAL); glEnable(GL_AUTO_NORMAL); glEnable(GL_NORMALIZE); /*设置特殊效果*/ glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA); glHint(GL_LINE_SMOOTH_HINT,GL_DONT_CARE); glEnable(GL_BLEND); glFrontFace(GL_CW); glShadeModel(GL_SMOOTH); glEnable(GL_LINE_SMOOTH); theNurb1 = gluNewNurbsRenderer();//创建NURBS 对象theNurb1 gluNurbsProperty(theNurb1,GLU_SAMPLING_TOLERANCE,25.0); gluNurbsProperty(theNurb1,GLU_DISPLAY_MODE,GLU_OUTLINE_POLYGON); theNurb2 = gluNewNurbsRenderer();//创建NURBS 对象theNurb2 gluNurbsProperty(theNurb2,GLU_SAMPLING_TOLERANCE,25.0); gluNurbsProperty(theNurb2,GLU_DISPLAY_MODE,GLU_FILL); } int spin = 0; /*接收键盘指令*/ static void myKey(...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

OpenGL之NURBS曲线和曲面

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部