/** * Creates an outset rectangle. * * @param base the base rectangle (<code>null</code> not permitted). * * @return An outset rectangle. */ public Rectangle2D createOutsetRectangle(final Rectangle2D base) { return createOutsetRectangle(base, true, true); }
/** * Creates an outset rectangle. * * @param base the base rectangle (<code>null</code> not permitted). * * @return An outset rectangle. */ public Rectangle2D createOutsetRectangle(final Rectangle2D base) { return createOutsetRectangle(base, true, true); }
/** * Creates an outset rectangle. * * @param base the base rectangle (<code>null</code> not permitted). * * @return An outset rectangle. */ public Rectangle2D createOutsetRectangle(final Rectangle2D base) { return createOutsetRectangle(base, true, true); }
Rectangle2D fb = this.insets.createOutsetRectangle(bounds);
/** * Returns a rectangle that encloses the axis label. This is typically * used for layout purposes (it gives the maximum dimensions of the label). * * @param g2 the graphics device. * @param edge the edge of the plot area along which the axis is measuring. * * @return The enclosing rectangle. */ protected Rectangle2D getLabelEnclosure(Graphics2D g2, RectangleEdge edge) { Rectangle2D result = new Rectangle2D.Double(); String axisLabel = getLabel(); if (axisLabel != null && !axisLabel.equals("")) { FontMetrics fm = g2.getFontMetrics(getLabelFont()); Rectangle2D bounds = TextUtilities.getTextBounds(axisLabel, g2, fm); RectangleInsets insets = getLabelInsets(); bounds = insets.createOutsetRectangle(bounds); double angle = getLabelAngle(); if (edge == RectangleEdge.LEFT || edge == RectangleEdge.RIGHT) { angle = angle - Math.PI / 2.0; } double x = bounds.getCenterX(); double y = bounds.getCenterY(); AffineTransform transformer = AffineTransform.getRotateInstance(angle, x, y); Shape labelBounds = transformer.createTransformedShape(bounds); result = labelBounds.getBounds2D(); } return result; }
FontMetrics fm = g2.getFontMetrics(); Rectangle2D bounds = TextUtilities.getTextBounds(label, g2, fm); Rectangle2D out = this.labelPadding.createOutsetRectangle( bounds); Shape bg = ShapeUtilities.createTranslatedShape(out,