PDA

View Full Version : nurbs and selection



teame
05-22-2004, 02:31 AM
Hello,
I'm trying to implement a picking feature to my 3D scene using gluPickMatrix(). This works fine... except for nurbs objects !

First I would like to know is there is special known problem with picking nurbs ?

More explanation now...
Here is my rendering routine :

struct volume *pvol;
GLfloat knots[6] = < knots definition here >
GLfloat ctrlpts[3][3][3] = < control points definition here >

pvol=pvol0;
while(pvol != NULL){
if (mode == GL_SELECT) {
glLoadName(pvol->id);
}

< some code... >

switch (pvol->type){
case SPHERE:
glutSolidSphere(pvol->size, 36, 36);
break;

< some code managing other kind of objects >

case NURBS:
printf("plotting Nurbs \n");
gluBeginSurface(theNurbs);
gluNurbsSurface(theNurbs,
6, knots, 6, knots,
3 * 3, 3,
&ctrlpts[0][0][0],
3, 3, GL_MAP2_VERTEX_3);
gluEndSurface(theNurbs);
printf("Nurbs done \n");
break;
}
pvol = pvol->psuiv;
}

This compiles fine. But when I run the program, when the routine is called in GL_SELECT mode, application is hanging on nurbs rendering : the "Nurbs done" string never written despite "plotting Nurbs" is written. Behaviour in GL_RENDER mode is OK.

Any help would be very appreciate...

plasmonster
05-23-2004, 10:35 AM
Just a suggestion, but statements like "< some code... >" are not very helpful to people trying to analyze your problem. You should probably post your selection mode setup (where you initialize the name stack), and any other code relevant to the selection issue.