@Override public void onDrawFrame(GL10 gl) { long tStart = SystemClock.uptimeMillis(); gl.glClear(GL10.GL_COLOR_BUFFER_BIT | GL10.GL_DEPTH_BUFFER_BIT); gl.glMatrixMode(GL10.GL_MODELVIEW); gl.glLoadIdentity(); gl.glEnableClientState(GL10.GL_VERTEX_ARRAY); mBackgroundPlane.draw(gl); // eyeX, eyeY, eyeZ, centerX, centerY, centerZ, upX, upY, upZ // GLU.gluLookAt(gl, mDistance * (float) Math.cos(-mPitch) * (float) Math.cos(mHead), mDistance // * (float) Math.sin(-mPitch), mDistance * (float) Math.cos(-mPitch) * (float) Math.sin(mHead), // 0, 0, 0, 0, 0, 1); gl.glTranslatef(mXPanOffset, mYPanOffset, -mDistance); gl.glRotatef(mPitch, 1, 0, 0); gl.glRotatef(mHead, 0, 1, 0); gl.glRotatef(mRoll, 0, 0, 1); // only if point of view changed setCurrentModelView(gl); // if (getManagers().getOptionsManager().getDisplayDebugInfos())// TODO use cache if (true) { mAxis.draw(gl); } // main draw call getManagers().getMeshManager().draw(gl); mToolOverlay.draw(gl, mManagers); mSymmetryPlane.draw(gl, mManagers); gl.glDisableClientState(GL10.GL_VERTEX_ARRAY); if (mbTakeScreenshot) { TakeGLScreenshot(gl); mbTakeScreenshot = false; } long tStop = SystemClock.uptimeMillis(); mLastFrameDurationMs = tStop - tStart; }
public void onToolChange() { mToolOverlay.updateTool(mManagers); }