Da się.
Ale to co robisz teraz nie będzie miało efektu na rysowanie kuli, ponieważ:
- rotację trzymasz między glPushMatrix(), glPopMatrix(),
- do rotacji nie przekazujesz żadnego kąta.
Zakładam, że chcesz zrobić coś jakby planetę kręcącą się wokół słońca:
void kule(GLfloat srednica, GLfloat odl, GLfloat angle)
{
glPushMatrix();
glTranslatef(0, 0.0, 0); // pozycja srodka obrotu w przestrzeni 3D
glRotatef(angle, 0.0f, 1.0f, 0.0f); // obrot wzgledem srodka obrotu
glTranslatef(odl, 0.0, 0); // przesuniecie wzgledem srodka obrotu
gluSphere(quadric, srednica, 500.0, 500); // rysowanie wyprzesuwanej, wyobracanej kuli
glPopMatrix();
Jeśli kula ma się obracać, to trzeba jako parametr angle podawać kąt (zadeklarowany globalnie, żeby nie tracił wartości z każdym obrotem pętli), który gdzieś poza funkcją jest zwiększany.