public void render(VisCanvas vc, VisLayer layer, VisCanvas.RenderInfo rinfo, GL gl) { synchronized (buffers) { for (Buffer b : buffers) { if (!b.isEnabled()) continue; synchronized (b) { for (VisObject vo : b.front) { if (vo != null) vo.render(vc, layer, rinfo, gl); } } } } }
public void render(VisCanvas vc, VisLayer layer, VisCanvas.RenderInfo rinfo, GL gl) { gl.glMatrixMode(GL.GL_PROJECTION); gl.glPushMatrix(); gl.glMatrixMode(GL.GL_MODELVIEW); gl.glPushMatrix(); gl.glMatrixMode(GL.GL_PROJECTION); gl.glLoadIdentity(); gl.glMatrixMode(GL.GL_MODELVIEW); int viewport[] = rinfo.layerPositions.get(layer); double width = viewport[2]; double height = viewport[3]; switch (origin) { case BOTTOM_LEFT: // nothing to do. break; case LEFT: gl.glTranslated(0, height / 2, 0); break; case TOP_LEFT: gl.glTranslated(0, height, 0); break; case TOP: gl.glTranslated(width / 2, height, 0); break; case TOP_RIGHT: gl.glTranslated(width, height, 0); break; default: System.out.println("Unsupported Origin"); break; } vo.render(vc, layer, rinfo, gl); gl.glMatrixMode(GL.GL_PROJECTION); gl.glPopMatrix(); gl.glMatrixMode(GL.GL_MODELVIEW); gl.glPopMatrix(); }