0
点赞
收藏
分享

微信扫一扫

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

定义一维求值器:

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参数指向第一个控制点的第一个坐标

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

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;




举报

相关推荐

0 条评论