/** Creates a {@link java.awt.Graphics2D Graphics2D} instance for rendering into the overlay. The returned object should be disposed of using the normal {@link java.awt.Graphics#dispose() Graphics.dispose()} method once it is no longer being used. @return a new {@link java.awt.Graphics2D Graphics2D} object for rendering into the backing store of this renderer */ public Graphics2D createGraphics() { // Validate the size of the renderer against the current size of // the drawable validateRenderer(); return renderer.createGraphics(); }
private TextureRenderer loadTextureRenderer(String pKey) { BufferedImage img = loadBufferedImage(pKey); if (img == null) { return null; } TextureRenderer tr = new TextureRenderer(img.getWidth(), img.getHeight(), true, true); Graphics2D g = tr.createGraphics(); g.setClip(0, 0, img.getWidth(), img.getHeight()); g.drawImage(img, new AffineTransform(1f, 0f, 0f, 1f, 0, 0), null); g.dispose(); return tr; }
private Graphics2D getGraphics2D() { final TextureRenderer renderer = getBackingStore(); if (cachedGraphics == null) { cachedGraphics = renderer.createGraphics(); // Set up composite, font and rendering hints cachedGraphics.setComposite(AlphaComposite.Src); cachedGraphics.setColor(Color.WHITE); cachedGraphics.setFont(font); cachedGraphics.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, (antialiased ? RenderingHints.VALUE_TEXT_ANTIALIAS_ON : RenderingHints.VALUE_TEXT_ANTIALIAS_OFF)); cachedGraphics.setRenderingHint(RenderingHints.KEY_FRACTIONALMETRICS, (useFractionalMetrics ? RenderingHints.VALUE_FRACTIONALMETRICS_ON : RenderingHints.VALUE_FRACTIONALMETRICS_OFF)); } return cachedGraphics; }
private TextureRenderer build(String pKey) { Color color = ColorUtil.parseColor(pKey.substring(3)); if (color == null) { return null; } TextureRenderer img = new TextureRenderer(1, 1, true, true); Graphics2D g = img.createGraphics(); g.setClip(0, 0, 1, 1); g.setColor(color); g.fillRect(0, 0, 1, 1); return img; }
Graphics2D g = img.createGraphics();
@Override public void beginMovement(final Object oldBackingStore, final Object newBackingStore) { // Exit the begin / end pair if necessary if (inBeginEndPair) { // Draw any outstanding glyphs flush(); final GL2 gl = GLContext.getCurrentGL().getGL2(); // Pop client attrib bits used by the pipelined quad renderer gl.glPopClientAttrib(); // The OpenGL spec is unclear about whether this changes the // buffer bindings, so preemptively zero out the GL_ARRAY_BUFFER // binding if (getUseVertexArrays() && is15Available(gl)) { try { gl.glBindBuffer(GL.GL_ARRAY_BUFFER, 0); } catch (final Exception e) { isExtensionAvailable_GL_VERSION_1_5 = false; } } if (isOrthoMode) { ((TextureRenderer) oldBackingStore).endOrthoRendering(); } else { ((TextureRenderer) oldBackingStore).end3DRendering(); } } final TextureRenderer newRenderer = (TextureRenderer) newBackingStore; g = newRenderer.createGraphics(); }