|
小弟正在看Opengl红皮书 看到第12章gluNurbsSurface()函数时有两个参数不知道该如何定义它的值,该函数定义如下:
void gluNurbsSurface(
GLUnurbsObj * nobj, //NURBS曲面对象
GLint sknot_count, //s方向节点数目
GLfloat * sknot, //s方向节点(序列)数组指针
GLint tknot_count, //t方向节点数目
GLfloat * tknot, //t方向节点(序列)数组指针
GLint s_stride, //s方向控制点数据跨度
GLint t_stride, //t方向控制点数据跨度
GLfloat * ctlarray, //控制点数组指针
GLint sorder, //s方向上多项式阶数
GLint torder, //t方向上多项式阶数
GLenum type //确定求值器类型
);
书上的代码是用这个函数画一个在两个方向上都是4个控制点的曲面,其中 *sknot和*tknot指向了一个以下内容的数组{0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 1.0},可是我不知道这么定义究竟起到了什么具体的作用,在往上查了老半天只是知道这个数组要用升序,而且是每个控制点定义两个节点值,但其他的就不懂了 [em16] [em16] |
|