getting coordinates from the modelview

lets say I have a function called drawcube()
that draws a cube about the origin.
Then I translate, rotate, etc that cube. Something like:

glPushMatrix();
glRotatef(32,0,1,0);
glTranslatef(10,-20,1);
drawcube()
glPopMatrix();

Is there a way I can get the coordinates of the cube?
Its easy to keep track of coordinates with translations, but I’m mostly confused on the getting the coordinates after rotations.

Thanks

You can retrieve the modelviewmatrix right before your call to drawcube.

GLfloat mm[16];
glGetFLoatv(GL_MODELVIEW_MATRIX,&mm[0]);

and use that matrix to transform the original coordinates.

Note that in OpenGL matrices are stored in column major order.

Greetz,

Nico