B样条曲线数据如下: GLUnurbsObj *theNurb; GLfloat knots[13] = {0,0,0,0, 0.174058, 0.386051, 0.551328 , 0.693068, 0.834781, 1,1,1,1}; 然后调用函数: 问题如下: GLfloat ** ctrlpoints; //new 一个动态二维数组 for(i=0;i<9;i++) //给二维数组赋值 然后再调用 gluNurbsCurve(),曲线画不出来(而且确认过,控制点数据准确无误)。 目前有大量的曲线段要在屏幕上画出,不用变量赋值是不可能的。 请问大家,怎么给这个函数 gluNurbsCurve(theNurb,13,knots,3,&ctrlpoints[0][0],4,GL_MAP1_VERTEX_3) |
|
60分 |
GLfloat ** ctrlpoints; //new 一个动态二维数组
ctrlpoints = new float * [9]; for (i = 0;i < 9;i++) ctrlpoints[i]= new float [3]; 改成 GLfloat *ctrlpoints; //new 一个动态二维数组 ctrlpoints = new float [9*3]; for(i=0;i<9;i++) //给二维数组赋值 { for(j=0;j<3;j++) { ctrlpoints[i*3+j] = buffCtlPts[i][j] ; //把控制点数据传给变量 } } 试试看 |
谢谢啊
|
|
百万军中取上将首级如探囊取物,千万行里改关键源码在弹指瞬间。 |