@Override protected void render( Graphics2D gc, int centerX, int centerY, int width, int height, double angleRadians ) { AffineTransform oldTransform = gc.getTransform(); try { double scaleX = width * 1.0 / bitmap.getWidth(); double scaleY = height * 1.0 / bitmap.getHeight(); AffineTransform affineTransform = new AffineTransform( oldTransform ); if ( centerX != 0 || centerY != 0 ) { affineTransform.translate( centerX, centerY ); } affineTransform.scale( scaleX, scaleY ); if ( angleRadians != 0 ) { affineTransform.rotate( angleRadians ); } affineTransform.translate( -bitmap.getWidth() / 2, -bitmap.getHeight() / 2 ); gc.setTransform( affineTransform ); gc.drawImage( bitmap, 0, 0, bitmap.getWidth(), bitmap.getHeight(), null ); } finally { gc.setTransform( oldTransform ); } } }
@Override public void visit(XDGFShape shape, AffineTransform globalTransform, int level) { AffineTransform savedTr = _graphics.getTransform(); _graphics.transform(globalTransform); drawPath(shape); drawText(shape); // we're done, undo the transforms _graphics.setTransform(savedTr); }
final Graphics2D gg = destination.createGraphics(); gg.scale(dpiFactor, dpiFactor); gg.translate(deltaShadow - bounds.getMinX(), deltaShadow - bounds.getMinY()); final boolean isLine = shape instanceof Line2D.Double; if (isLine) { gg.setColor(colorLine); gg.draw(shape); } else { gg.setColor(color); gg.fill(shape); final AffineTransform at = g2d.getTransform(); g2d.scale(1 / dpiFactor, 1 / dpiFactor); g2d.drawImage(destination, (int) (bounds.getMinX() * dpiFactor), (int) (bounds.getMinY() * dpiFactor), null); g2d.setTransform(at);
g.setColor(Color.WHITE); g.fillRect(0, 0, WIDTH, HEIGHT); g.setColor(Color.getHSBColor(relDepth, 1.0f, 0.9f)); g.fillRect(x1, EXT_PAD, x2 - x1, GRAPH_HEIGHT); g.setColor(Color.getHSBColor(relDepth, 1.0f, 0.9f)); int y1 = HEIGHT * (depth - minDepth) / (maxDepth - minDepth + 1); int y2 = HEIGHT * (depth + 1 - minDepth) / (maxDepth - minDepth + 1); AffineTransform orig = g.getTransform(); g.rotate(-Math.toRadians(90.0), SCALE_WIDTH + EXT_PAD - 5, GRAPH_HEIGHT + EXT_PAD); g.drawString("Actual:", SCALE_WIDTH + EXT_PAD - 5, GRAPH_HEIGHT + EXT_PAD); g.setTransform(orig); g.setTransform(orig);
Font font = graphics.getFont(); AffineTransform oldTr = graphics.getTransform(); graphics.translate(bounds.x, bounds.y); graphics.scale(1, -1); graphics.translate(0, -bounds.height + graphics.getFontMetrics().getMaxCharBounds(graphics) .getHeight()); graphics.translate(-bounds.width, 0); graphics.setTransform(oldTr);
/** * Compute the cumulative height occupied by the text * * @param oldGraphics the graphics context, which properties are to be copied, may be null * @return the height in points */ public double getTextHeight(Graphics2D oldGraphics) { // dry-run in a 1x1 image and return the vertical advance BufferedImage img = new BufferedImage(1, 1, BufferedImage.TYPE_INT_RGB); Graphics2D graphics = img.createGraphics(); if (oldGraphics != null) { graphics.addRenderingHints(oldGraphics.getRenderingHints()); graphics.setTransform(oldGraphics.getTransform()); } DrawFactory.getInstance(graphics).fixFonts(graphics); return drawParagraphs(graphics, 0, 0); }
AffineTransform prev = graphics.getTransform(); float yScale = Math.abs(m.getScalingFactorY()); AffineTransform transform = new AffineTransform(xform); transform.scale(1.0 / xScale, 1.0 / yScale); graphics.setTransform(transform); graphics.translate(0, image.getHeight()); graphics.scale(1, -1); graphics.translate(x * xScale, y * yScale); graphics.setTransform(prev);
/** * Draws the page to the requested context. * * @param g The graphics context to draw onto. * @param pageSize The size of the page to draw. * @throws IOException If there is an IO error while drawing the page. */ public void drawPage(Graphics g, PDRectangle pageSize) throws IOException { graphics = (Graphics2D) g; xform = graphics.getTransform(); this.pageSize = pageSize; setRenderingHints(); graphics.translate(0, pageSize.getHeight()); graphics.scale(1, -1); // adjust for non-(0,0) crop box graphics.translate(-pageSize.getLowerLeftX(), -pageSize.getLowerLeftY()); processPage(getPage()); for (PDAnnotation annotation : getPage().getAnnotations(annotationFilter)) { showAnnotation(annotation); } graphics = null; }
protected void saveTransform(Graphics2D g) { assert (savedTransform == null); savedTransform = new AffineTransform(g.getTransform()); }
Dimension dim = sheet.getSlideShow().getPageSize(); Color whiteTrans = new Color(1f,1f,1f,0f); graphics.setColor(whiteTrans); graphics.fillRect(0, 0, (int)dim.getWidth(), (int)dim.getHeight()); graphics.setRenderingHint(Drawable.GROUP_TRANSFORM, new AffineTransform()); AffineTransform at = graphics.getTransform(); graphics.setTransform(at);
bgColor="255,255,255"; g.setColor(getColor(bgColor)); g.fillRect(0, 0, width, height); AffineTransform transform=g.getTransform(); int allRowHeight=0; int index=0; g.setColor(fontColor); int x=slash.getX(); int y=slash.getY(); g.rotate(Math.toRadians(slash.getDegree()), x, y); g.drawString(text, x, y); g.setTransform(transform); g.setColor(lineColor); int h=allRowHeight+rowHeight; if(i==(rowNumber+rowSpan-1)){ g.setColor(fontColor); g.drawString(text, x, y); g.setTransform(transform); index++; g.setColor(fontColor); g.drawString(text, x, y); g.setTransform(transform); ColumnDefinition col=columns.get(i-1); int colWidth=UnitUtils.pointToPixel(col.getWidth());
public void draw(Graphics2D graphics) { // the coordinate system of this group of shape Rectangle2D interior = getShape().getInteriorAnchor(); // anchor of this group relative to the parent shape Rectangle2D exterior = getShape().getAnchor(); AffineTransform tx = (AffineTransform)graphics.getRenderingHint(Drawable.GROUP_TRANSFORM); AffineTransform tx0 = new AffineTransform(tx); double scaleX = interior.getWidth() == 0. ? 1.0 : exterior.getWidth() / interior.getWidth(); double scaleY = interior.getHeight() == 0. ? 1.0 : exterior.getHeight() / interior.getHeight(); tx.translate(exterior.getX(), exterior.getY()); tx.scale(scaleX, scaleY); tx.translate(-interior.getX(), -interior.getY()); DrawFactory drawFact = DrawFactory.getInstance(graphics); AffineTransform at2 = graphics.getTransform(); for (Shape<?,?> child : getShape()) { // remember the initial transform and restore it after we are done with the drawing AffineTransform at = graphics.getTransform(); graphics.setRenderingHint(Drawable.GSAVE, true); Drawable draw = drawFact.getDrawable(child); draw.applyTransform(graphics); draw.draw(graphics); // restore the coordinate system graphics.setTransform(at); graphics.setRenderingHint(Drawable.GRESTORE, true); } graphics.setTransform(at2); graphics.setRenderingHint(Drawable.GROUP_TRANSFORM, tx0); }
AffineTransform tx = graphics.getTransform(); final double ax = anchor.getX(); final double ay = anchor.getY(); graphics.translate(ax + anchor.getWidth(), ay); graphics.scale(-1, 1); graphics.translate(-ax, -ay); final double cx = anchor.getCenterX(); final double cy = anchor.getCenterY(); graphics.translate(cx, cy); graphics.rotate(Math.toRadians(textRot)); graphics.translate(-cx, -cy); graphics.setTransform(tx);
class MyPanel extends JPanel { @Override public void paintComponent(Graphics g) { super.paintComponent(g); Graphics2D g2d = (Graphics2D)g; AffineTransform old = g2d.getTransform(); g2d.rotate(Math.toRadians(degrees)); //draw shape/image (will be rotated) g2d.setTransform(old); //things you draw after here will not be rotated } }
@Override public void translate(int scaleX, int scaleY) { transformHist.push(g2d.getTransform()); g2d.translate(scaleX,scaleY); }
int tsy = ts.getY() - INTERACTING_SHIFT; graphics.setColor(INTERACTING_COLOR); graphics.drawLine(fsx, fsy, tsx, tsy); AffineTransform t = new AffineTransform(); t.translate(tsx, tsy); t.rotate(tsx - fsx, tsy - fsy); t.rotate(Math.PI / -2); AffineTransform ot = graphics.getTransform(); graphics.setTransform(t); graphics.fill(ARROW_HEAD); graphics.setTransform(ot);
public void paintIcon(Component c, Graphics g, int x, int y) { Graphics2D g2d = (Graphics2D) g.create(); AffineTransform transform = g2d.getTransform(); transform.translate((double) width / 2.0 + 1, (double) height / 2.0 + 1); g2d.setTransform(transform); g2d.setColor(Color.BLUE); g2d.fill(shape); g2d.dispose(); }
public void paint(Graphics2D g, int width, int height, int x, int y) { // saves the old transform; AffineTransform oldTransform = g.getTransform(); try { if (oldTransform == null) oldTransform = new AffineTransform(); AffineTransform transform = new AffineTransform(oldTransform); // adds scaling to the transform so that we respect the declared size transform.translate(x, y); transform.scale(width / bounds.getWidth(), height / bounds.getHeight()); g.setTransform(transform); node.paint(g); } finally { g.setTransform(oldTransform); } } }
private void drawTile() { Graphics2D g2d = (Graphics2D) gr; AffineTransform oldTransform = g2d.getTransform(); //new g2d.translate(0, 22); g2d.drawImage(img, posX, posY, null); g2d.setTransform(oldTransform); //new System.out.print(posX+" , "+posY); }
protected void setupTransform(Graphics2D g) { saveTransform(g); AffineTransform trans = g.getTransform(); trans.concatenate(getTransform().getAffineTransform()); g.setTransform(trans); }