public void pushProjectionIdentity(GL2 gl) { gl.MatrixMode(GL2.GL_PROJECTION); this.projectionPushed = true; gl.PushMatrix(); gl.LoadIdentity(); }
public void pushTextureIdentity(GL2 gl) { gl.MatrixMode(GL2.GL_TEXTURE); this.texturePushed = true; gl.PushMatrix(); gl.LoadIdentity(); }
public void pushModelviewIdentity(GL2 gl) { gl.MatrixMode(GL2.GL_MODELVIEW); this.modelviewPushed = true; gl.PushMatrix(); gl.LoadIdentity(); }
/** * Sets the the opengl modelview and projection matrices to the given matrices. * * @param dc the drawing context * @param modelview the modelview matrix * @param projection the projection matrix */ public static void loadGLViewState(DrawContext dc, Matrix modelview, Matrix projection) { if (dc == null) { String message = Logging.getMessage("nullValue.DrawContextIsNull"); Logging.logger().severe(message); throw new ArgumentException(message); } if (dc.getGL() == null) { String message = Logging.getMessage("nullValue.DrawingContextGLIsNull"); Logging.logger().severe(message); throw new IllegalStateException(message); } if (modelview == null) { Logging.logger().fine("nullValue.ModelViewIsNull"); } if (projection == null) { Logging.logger().fine("nullValue.ProjectionIsNull"); } double[] matrixArray = new double[16]; GL2 gl = dc.getGL().getGL2(); // GL initialization checks for GL2 compatibility. // Store the current matrix-mode state. OGLStackHandler ogsh = new OGLStackHandler(); try { ogsh.pushAttrib(gl, GL2.GL_TRANSFORM_BIT); // Apply the model-view matrix to the current OpenGL context. gl.MatrixMode(GL2.GL_MODELVIEW); if (modelview != null) { modelview.toArray(matrixArray, 0, false); gl.LoadMatrix(matrixArray); } else { gl.LoadIdentity(); } // Apply the projection matrix to the current OpenGL context. gl.MatrixMode(GL2.GL_PROJECTION); if (projection != null) { projection.toArray(matrixArray, 0, false); gl.LoadMatrix(matrixArray); } else { gl.LoadIdentity(); } } finally { ogsh.pop(gl); } }