1

次のような立体球を描きます。

glPushMatrix();
    glScalef(0.015, 0.015, 0.015);
    glRotatef(90, 1.0, 0.0, 0.0);
    glTranslatef(0.0, 200, 0.0);
    glRotatef(-20, 0.0, 0.0, 1.0);
    glRotatef(-20, 1.0, 0.0, 0.0);
    glTranslatef(78.75, -110.74, -13.53);
    glutSolidSphere(4.0f,15,15);
glPopMatrix();

この固体球の変換された座標を取得するにはどうすればよいですか?

4

2 に答える 2

-1

変換された座標を変数に入れると、形状の変換された座標を取得する必要がなくなります。

float solidSphereX = whatever;
float solidSphereY = whatever;
float solidSphereZ = whatever;
float solidSphereRotationX = whatever in radians;
float solidSphereRotationY = whatever in radians;
float solidSphereRotationZ = whatever in radians;
...
glPushMatrix();
glRotatef(solidSphereRotationX, solidSphereRotationY, solidSphereRotationZ);
glTranslatef(solidSphereX, solidSphereY, solidSphereZ);
glPopMatrix();
于 2012-08-29T19:01:36.907 に答える
-1

GL_MODELVIEW_MATRIX関数 によって状態変数を取得できますglget

ModelViewスタックから現在の行列を返します。それがあなたが必要としているものだと思います。

于 2012-08-28T03:19:37.407 に答える