0

以下を有するdisplay()-

float tranX , tranY , tranZ ; 
public void display(GLAutoDrawable gLDrawable) {
    final GL gl = gLDrawable.getGL();
    gl.glLoadIdentity();
    gl.glPushMatrix();
    gl.glTranslatef(tranX ,tranY ,tranZ);
    gl.glCallList(i);
    gl.glPopMatrix();
    tranX += 0.05;
    tranY += 0.05;
    tranZ += 0.05;
}

ご覧のとおり、保存されdisplay()たオブジェクトの行列を呼び出すたびに、座標が によって変更されます。gl.glCallList(i)gl.glTranslatef(tranX ,tranY ,tranZ)

ある段階で、このオブジェクトを現在の位置 ( をgl.glTranslatef呼び出した後) に保存し、それを別のtranX, tranY, tranZvalues に変換したいとします。

gl.glPushMatrix()上記とを考慮して、このオブジェクトの位置をどのように保存できgl.glPopMatrix()ますか?

4

2 に答える 2