首页 > 其他 > 详细

《高效学习OpenGL》 之 glMap1f(),glEvalCoord1f(),glMapGrid1d(),glEvalMesh1()

时间:2014-03-06 16:08:24      阅读:838      评论:0      收藏:0      [点我收藏+]

定义一维求值器:

   glMap1f(GL_MAP1_VERTEX_3, 0.0, 1.0, 3, 4, &ctrlpoints[0][0]);
   void glMap1f (GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points);
   //target参数指定了控制点表示什么。如表所示,并因此确定了points应该提供多少值
   //u1和u2参数表示变量u的变化范围,变量stride是每个存储块之间单精度或双精度浮点数的数量
   //order参数的值就是stride+1,它应该与控制点的数量一致
   //points参数指向第一个控制点的第一个坐标

bubuko.com,布布扣

   glEnable(GL_MAP1_VERTEX_3);
   //启用求值器

使已启用的一维求职器执行计算:

         glEvalCoord1f((GLfloat) i/30.0);
	     void glEvalCoord1f (GLfloat u);
		 //参数u是定义域坐标的值

定义均匀分布的一维坐标值:

		 void glMapGrid1d (GLint un, GLdouble u1, GLdouble u2);
		 //定义一个均匀分布的u1到u2的网格,中间有un个阶段

		 void glEvalMesh1 (GLenum mode, GLint i1, GLint i2);
		 //对所有已启用的求职器应用当前定义的一维网格。
		 //mode参数可以是GL_POINT、GL_LINE。
		 //这个函数相当于为从i1到i2的每一步调用glMapGrid1d函数,其中0<i1,i2<n;


《高效学习OpenGL》 之 glMap1f(),glEvalCoord1f(),glMapGrid1d(),glEvalMesh1(),布布扣,bubuko.com

《高效学习OpenGL》 之 glMap1f(),glEvalCoord1f(),glMapGrid1d(),glEvalMesh1()

原文:http://blog.csdn.net/biggbang/article/details/20615917

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!