float restnear[4][4][3] = { 8.0, -10.0, 0.0,
8.0, -5.0, 0.0,
8.0, 5.0, -4.0,
8.0, 10.0, -6.0,
6.0, -10.0, 0.0,
6.0, -5.0, 0.0,
6.0, 5.0, -4.0,
6.0, 10.0, -6.0,
2.0, -10.0, 0.0,
2.0, -5.0, 0.0,
2.0, 5.0, -4.0,
2.0, 10.0, -6.0,
0.0, -10.0, 0.0,
0.0, -5.0, 0.0,
0.0, 5.0, -4.0,
0.0, 10.0, -6.0 };
float restnearnorm[4][4][3] = { 0.0, 0.0, -1.0,
0.0, 0.0, -1.0,
0.0, -1.0, -1.0,
0.0, -1.0, -1.0,
0.0, 0.0, -1.0,
0.0, 0.0, -1.0,
0.0, -1.0, -1.0,
0.0, -1.0, -1.0,
0.0, 0.0, -1.0,
0.0, 0.0, -1.0,
0.0, -1.0, -1.0,
0.0, -1.0, -1.0,
0.0, 0.0, -1.0,
0.0, 0.0, -1.0,
0.0, -1.0, -1.0,
0.0, -1.0, -1.0 };
gluNurbsSurface(theNurb,
8, knots, 8, knots,
4 * 3, 3, &restnear[0][0][0],
4, 4, GL_MAP2_NORMAL);
gluNurbsSurface(theNurb,
8, knots, 8, knots,
4 * 3, 3, &restnear[0][0][0],
4, 4, GL_MAP2_VERTEX_3);
gluNurbsSurface(theNurb,
8, knots, 8, knots,
4 * 3, 3, &restnear[0][0][0],
4, 4, GL_MAP2_TEXTURE_COORD_2);
gluEndSurface(theNurb);