java.awt.Graphics2D#drawRect ( )源码实例Demo

下面列出了java.awt.Graphics2D#drawRect ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: energy2d   文件: Symbol.java
public void paintIcon(Component c, Graphics g, int x, int y) {
	super.paintIcon(c, g, x, y);
	int y2 = Math.round(ySymbol + hSymbol * 0.5f);
	Graphics2D g2 = (Graphics2D) g;
	if (isButtonIcon) {
		g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
		g2.setRenderingHint(RenderingHints.KEY_RENDERING, RenderingHints.VALUE_RENDER_QUALITY);
	}
	g2.setColor(Color.white);
	g2.fillRect(xSymbol, ySymbol, wSymbol, hSymbol);
	g2.fillOval(xSymbol - 7, y2 - 3, 6, 6);
	g2.setColor(Color.black);
	g2.drawRect(xSymbol, ySymbol, wSymbol, hSymbol);
	for (int i = 4; i < wSymbol - 4; i += 4) {
		if (i % 8 == 0) {
			g2.drawLine(xSymbol + i, ySymbol, xSymbol + i + 4, ySymbol + hSymbol);
		} else {
			g2.drawLine(xSymbol + i, ySymbol + hSymbol, xSymbol + i + 4, ySymbol);
		}
	}
	g2.drawLine(xSymbol - 2, y2, xSymbol + 4, y2);
	g2.drawOval(xSymbol - 7, y2 - 3, 6, 6);
	g2.setStroke(stroke2);
	g2.drawLine(xSymbol, ySymbol, xSymbol + wSymbol, ySymbol);
	g2.drawLine(xSymbol, ySymbol + hSymbol, xSymbol + wSymbol, ySymbol + hSymbol);
}
 
源代码2 项目: seaglass   文件: SeaGlassBrowser.java
static void printDimension(PrintWriter html, Dimension dim) {
    html.println("<td>Dimension (" + dim.width + "," + dim.height + ")</pre></td>");
    int w = dim.width;
    int h = dim.height;
    if (w == 0 || h == 0) {
        html.println("<td>&nbsp;</td>");
    } else {
        BufferedImage img = new BufferedImage(w, h, BufferedImage.TYPE_INT_ARGB);
        Graphics2D g2 = img.createGraphics();
        Composite old = g2.getComposite();
        g2.setComposite(AlphaComposite.Clear);
        g2.fillRect(0, 0, w, h);
        g2.setComposite(old);
        g2.setColor(Color.RED);
        g2.drawRect(0, 0, w - 1, h - 1);
        g2.dispose();
        html.println("<td>" + saveImage(img) + "</td>");
    }
}
 
源代码3 项目: brModelo   文件: FormaRetangular.java
@Override
    public void DoPaint(Graphics2D g) {
        getTextoFormatado().CorretorPosicao = new Point(-1, -1);
        g.setPaint(this.getForeColor());
        super.DoPaint(g);
        g.drawRect(getLeft(), getTop(), getWidth() -1, getHeight() -1);
        Paint bkp = g.getPaint();
        g.setPaint(isDisablePainted()? disabledColor : Color.darkGray);
        int L = getLeft();
        int T = getTop();
        int W = getWidth() + L;
        int H = getHeight() + T;
        g.drawLine(L + 1, H, W, H);
        g.drawLine(W, T + 1, W, H);
        g.setPaint(isDisablePainted()? disabledColor : Color.gray);
        g.drawLine(L + 2, H + 1, W + 1, H + 1);
        g.drawLine(W + 1, T + 2, W  +1, H + 1);
//        g.drawLine(L + 1, H -1, W -1, H -1);
//        g.drawLine(W -1, T + 1, W -1, H -1);
//        g.setPaint(Color.gray);
//        g.drawLine(L + 2, H, W, H);
//        g.drawLine(W, T + 2, W, H);
        g.setPaint(bkp);
        //g.drawString(getLocation().toString(), getLeft() + 5, getTop() + 20);
    }
 
源代码4 项目: jdk8u_jdk   文件: RepaintManagerFPUIScaleTest.java
private static Image createTestImage(int w, int h,
        double scaleX, double scaleY, Color color) {

    int width = (int) Math.ceil(scaleX * w);
    int height = (int) Math.ceil(scaleY * h);
    BufferedImage img = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);

    Graphics2D g = img.createGraphics();
    g.setColor(Color.WHITE);
    g.fillRect(0, 0, width, height);
    g.scale(scaleX, scaleY);
    g.setColor(color);
    int d = 1;
    int d2 = 2 * d;
    g.drawLine(d, h / 2, w - d2, h / 2);
    g.drawLine(w / 2, d, w / 2, h - d2);
    g.drawRect(d, d, w - d2, h - d2);
    g.dispose();

    return img;
}
 
源代码5 项目: chipster   文件: RectDrawable.java
public void draw(Graphics2D g, int x, int y) {
	
	super.draw(g, x, y);

	// Draw fill
	if (this.color != null) {
		g.setPaint(this.color);
		g.fillRect(this.x + x, this.y + y, this.width, this.height);
	}

	// Draw outline after fill to hide gaps between adjacent rectangles
	if (this.lineColor != null) {
		g.setColor(this.lineColor);
		g.drawRect(this.x + x, this.y + y, this.width - 1, this.height - 1);
	}
}
 
源代码6 项目: 3Dscript   文件: SingleSlider.java
@Override
public void paintBuffer(Graphics gx) {
	Graphics2D g = (Graphics2D)gx;
	g.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
	g.clearRect(0, 0, getWidth(), getHeight());

	g.setColor(color);
	int x1 = diagram.canvasX(setMax);
	int wi = x1 - 0;
	g.fillRect(0, diagram.getTopPixel() - 1, wi, diagram.getAvailableHeight() + 1);

	g.setColor(Color.BLACK);
	g.drawRect(0, diagram.getTopPixel() - 1, wi, diagram.getAvailableHeight() + 1);

	g.setColor(Color.BLACK);
	diagram.drawFrame(gx);
}
 
源代码7 项目: render   文件: ClusterOverlapProblem.java
private static void drawTileBounds(final Graphics2D targetGraphics,
                                   final RenderParameters renderParameters,
                                   final TileBounds tileBounds,
                                   final Color color) {
    targetGraphics.setStroke(new BasicStroke(2));
    targetGraphics.setColor(color);
    final int x = (int) ((tileBounds.getMinX() - renderParameters.getX()) * renderParameters.getScale());
    final int y = (int) ((tileBounds.getMinY() - renderParameters.getY()) * renderParameters.getScale());
    final int width = (int) (tileBounds.getDeltaX() * renderParameters.getScale());
    final int height = (int) (tileBounds.getDeltaY() * renderParameters.getScale());

    // HACK: draw row and column label for FAFB style tileIds
    final String tileId = tileBounds.getTileId();
    final int firstDot = tileId.indexOf('.');
    if (firstDot > 6) {
        final String rowAndColumn = tileId.substring(firstDot - 6, firstDot);
        targetGraphics.drawString(rowAndColumn, (x + 10), (y + 20));
    }
    targetGraphics.drawRect(x, y, width, height);
}
 
源代码8 项目: rscplus   文件: Renderer.java
public static void drawShadowTextBorder(
    Graphics2D g,
    String text,
    int x,
    int y,
    Color textColor,
    float alpha,
    float boxAlpha,
    boolean border,
    int borderSize) {
  int textX = x;
  int textY = y;
  Dimension bounds = getStringBounds(g, text);
  textX -= (bounds.width / 2);
  textY += (bounds.height / 2);

  g.setColor(color_shadow);
  int rectX = x - (bounds.width / 2) - 2 - borderSize;
  int rectY = y - (bounds.height / 2) + 2 - borderSize;
  int rectWidth = bounds.width + 2 + (borderSize * 2);
  int rectHeight = bounds.height + (borderSize * 2);
  if (border) {
    setAlpha(g, 1.0f);
    g.drawRect(rectX, rectY, rectWidth, rectHeight);
  }
  setAlpha(g, boxAlpha);
  g.fillRect(rectX, rectY, rectWidth, rectHeight);
  setAlpha(g, alpha);
  g.drawString(text, textX + 1, textY);
  g.drawString(text, textX - 1, textY);
  g.drawString(text, textX, textY + 1);
  g.drawString(text, textX, textY - 1);

  g.setColor(textColor);
  g.drawString(text, textX, textY);
}
 
void drawDebug () {
	Graphics2D g = (Graphics2D)getTable().getGraphics();
	if (g == null) return;
	g.setColor(Color.red);
	for (DebugRect rect : debugRects) {
		if (rect.type == Debug.cell) g.setColor(Color.red);
		if (rect.type == Debug.widget) g.setColor(Color.green);
		if (rect.type == Debug.table) g.setColor(Color.blue);
		g.drawRect(rect.x, rect.y, rect.width, rect.height);
	}
}
 
源代码10 项目: visualvm   文件: DisplayAreaSupport.java
protected void paintComponent(Graphics g) {
    super.paintComponent(g);

    Dimension size = getSize();
    Graphics2D g2 = (Graphics2D)g;
    if( hasFocus() && isEnabled() ) {
        g2.setStroke(TABBUTTON_FOCUS_STROKE);
        g2.setColor(TABBUTTON_FOCUS_COLOR);
        g2.drawRect(2, 2, size.width - 5, size.height - 5);
    }
}
 
源代码11 项目: ChatGameFontificator   文件: ColorSwatch.java
@Override
public void paint(Graphics g)
{
    super.paint(g);
    if (isSelected())
    {
        Graphics2D g2d = (Graphics2D) g;
        g2d.setPaint(Color.BLACK);
        Stroke stroke = new BasicStroke(BORDER_THICKNESS, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL, 0.0f, new float[]
        { 3, 3, 3, 3 }, dashTimer.getOffset());
        g2d.setStroke(stroke);
        final int halfThickness = Math.max(1, BORDER_THICKNESS / 2);
        g2d.drawRect(halfThickness, halfThickness, getWidth() - BORDER_THICKNESS, getHeight() - BORDER_THICKNESS);
    }
}
 
源代码12 项目: PyramidShader   文件: BivariateColorPanel.java
@Override
public void paintComponent(Graphics g) {
    super.paintComponent(g);
    Graphics2D g2d = (Graphics2D) g;
    if (getRenderer() != null) {
        //Antialiasing ON
        g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
        ArrayList<BivariateColorPoint> points = getRenderer().getPoints();
        for (BivariateColorPoint point : points) {
            int px = attr1ToPixelX(point.getAttribute1());
            int py = attr2ToPixelY(point.getAttribute2());
            g2d.setColor(point.getColor());
            if (point.isLonLatDefined()) {
                g2d.fillOval(px - RECT_DIM / 2, py - RECT_DIM / 2, RECT_DIM, RECT_DIM);
            } else {
                g2d.fillRect(px - RECT_DIM / 2, py - RECT_DIM / 2, RECT_DIM, RECT_DIM);
            }
            if (point == selectedPoint) {
                if (ColorUtils.difference(Color.RED, point.getColor()) > 100) {
                    g2d.setColor(Color.RED);
                } else {
                    g2d.setColor(Color.CYAN);
                }
            } else {
                if (ColorUtils.getBrightness(point.getColor()) > 100) {
                    g2d.setColor(Color.BLACK);
                } else {
                    g2d.setColor(Color.WHITE);
                }
            }
            if (point.isLonLatDefined()) {
                g2d.drawOval(px - RECT_DIM / 2, py - RECT_DIM / 2, RECT_DIM, RECT_DIM);
            } else {
                g2d.drawRect(px - RECT_DIM / 2, py - RECT_DIM / 2, RECT_DIM, RECT_DIM);
            }
        }

        int D = 3;
        g2d.setColor(Color.BLACK);
        if (crossXPerc >= 0 && crossYPerc >= 0) {
            int x = (int) Math.round(crossXPerc * getWidth() / 100d);
            int y = (int) Math.round(crossYPerc * getHeight() / 100d);
            g2d.drawLine(x - D, y, x + D, y);
            g2d.drawLine(x, y - D, x, y + D);
        }
    }
    paintWarningString(g2d);
}
 
源代码13 项目: open-ig   文件: InfoScreen.java
@Override
public void draw(Graphics2D g2) {
	int rowCount = (height + rowHeight - 1) / rowHeight;
	int columnWidth = width / columns;
	
	List<BuildingType> planets = getList.invoke(null);
	Map<BuildingType, Integer> counts = player().countBuildings();
	Map<BuildingType, Integer> current = planet().countBuildings();
	boolean showCounts = planet().owner == player() 
			|| knowledge(planet(), PlanetKnowledge.BUILDING) >= 0
			|| (knowledge(planet(), PlanetKnowledge.OWNER) >= 0 && !planet().isPopulated());
	for (int j = 0; j < columns; j++) {
		int x0 = j * columnWidth;  
		for (int i = 0; i < rowCount; i++) {
			int y0 = i * rowHeight;
			int pidx = (j + columnIndex) * rowCount + i; 
			if (pidx >= 0 && pidx < planets.size()) {
				BuildingType p = planets.get(pidx);
				int c = TextRenderer.GRAY;
				if (planet().canBuild(p) && planet().owner == player()) {
					if (p.cost > player().money()) {
						c = 0xFFFF8080;
					} else {
						c = TextRenderer.YELLOW;
					}
				}
				String t = p.name;
				commons.text().paintTo(g2, x0 + 30, y0 + 2, fontSize, c, t);
				
				if (showCounts) {
					Integer c0 = current.get(p);
					Integer c1 = counts.get(p);
					
					String n = (c0 != null ? c0 : 0) + "/" + (c1 != null ? c1 : 0);
					int col = c1 != null ? TextRenderer.GREEN : TextRenderer.GRAY;
					commons.text().paintTo(g2, x0, y0 + 4, 7, col, n);
				}
				if (p == player().currentBuilding) {
					g2.setColor(new Color(player().color));
					g2.drawRect(x0 - 2 + 30, y0, columnWidth - 30, rowHeight);
				}
			}
		}
	}
}
 
源代码14 项目: birt   文件: Regression_117699_swing.java
/**
 * Presents the Exceptions if the chart cannot be displayed properly.
 * 
 * @param g2d
 * @param ex
 */
private final void showException( Graphics2D g2d, Exception ex )
{
	String sWrappedException = ex.getClass( ).getName( );
	Throwable th = ex;
	while ( ex.getCause( ) != null )
	{
		ex = (Exception) ex.getCause( );
	}
	String sException = ex.getClass( ).getName( );
	if ( sWrappedException.equals( sException ) )
	{
		sWrappedException = null;
	}

	String sMessage = null;
	if ( th instanceof BirtException )
	{
		sMessage = ( (BirtException) th ).getLocalizedMessage( );
	}
	else
	{
		sMessage = ex.getMessage( );
	}

	if ( sMessage == null )
	{
		sMessage = "<null>";//$NON-NLS-1$
	}

	StackTraceElement[] stea = ex.getStackTrace( );
	Dimension d = getSize( );

	Font fo = new Font( "Monospaced", Font.BOLD, 14 );//$NON-NLS-1$
	g2d.setFont( fo );
	FontMetrics fm = g2d.getFontMetrics( );
	g2d.setColor( Color.WHITE );
	g2d.fillRect( 20, 20, d.width - 40, d.height - 40 );
	g2d.setColor( Color.BLACK );
	g2d.drawRect( 20, 20, d.width - 40, d.height - 40 );
	g2d.setClip( 20, 20, d.width - 40, d.height - 40 );
	int x = 25, y = 20 + fm.getHeight( );
	g2d.drawString( "Exception:", x, y );//$NON-NLS-1$
	x += fm.stringWidth( "Exception:" ) + 5;//$NON-NLS-1$
	g2d.setColor( Color.RED );
	g2d.drawString( sException, x, y );
	x = 25;
	y += fm.getHeight( );
	if ( sWrappedException != null )
	{
		g2d.setColor( Color.BLACK );
		g2d.drawString( "Wrapped In:", x, y );//$NON-NLS-1$
		x += fm.stringWidth( "Wrapped In:" ) + 5;//$NON-NLS-1$
		g2d.setColor( Color.RED );
		g2d.drawString( sWrappedException, x, y );
		x = 25;
		y += fm.getHeight( );
	}
	g2d.setColor( Color.BLACK );
	y += 10;
	g2d.drawString( "Message:", x, y );//$NON-NLS-1$
	x += fm.stringWidth( "Message:" ) + 5;//$NON-NLS-1$
	g2d.setColor( Color.BLUE );
	g2d.drawString( sMessage, x, y );
	x = 25;
	y += fm.getHeight( );
	g2d.setColor( Color.BLACK );
	y += 10;
	g2d.drawString( "Trace:", x, y );//$NON-NLS-1$
	x = 40;
	y += fm.getHeight( );
	g2d.setColor( Color.GREEN.darker( ) );
	for ( int i = 0; i < stea.length; i++ )
	{
		g2d.drawString( stea[i].getClassName( ) + ":"//$NON-NLS-1$
				+ stea[i].getMethodName( ) + "(...):"//$NON-NLS-1$
				+ stea[i].getLineNumber( ), x, y );
		x = 40;
		y += fm.getHeight( );
	}
}
 
源代码15 项目: birt   文件: Regression_116619_swing.java
/**
 * Presents the Exceptions if the chart cannot be displayed properly.
 * 
 * @param g2d
 * @param ex
 */
private final void showException( Graphics2D g2d, Exception ex )
{
	String sWrappedException = ex.getClass( ).getName( );
	Throwable th = ex;
	while ( ex.getCause( ) != null )
	{
		ex = (Exception) ex.getCause( );
	}
	String sException = ex.getClass( ).getName( );
	if ( sWrappedException.equals( sException ) )
	{
		sWrappedException = null;
	}

	String sMessage = null;
	if ( th instanceof BirtException )
	{
		sMessage = ( (BirtException) th ).getLocalizedMessage( );
	}
	else
	{
		sMessage = ex.getMessage( );
	}

	if ( sMessage == null )
	{
		sMessage = "<null>";//$NON-NLS-1$
	}

	StackTraceElement[] stea = ex.getStackTrace( );
	Dimension d = getSize( );

	Font fo = new Font( "Monospaced", Font.BOLD, 14 );//$NON-NLS-1$
	g2d.setFont( fo );
	FontMetrics fm = g2d.getFontMetrics( );
	g2d.setColor( Color.WHITE );
	g2d.fillRect( 20, 20, d.width - 40, d.height - 40 );
	g2d.setColor( Color.BLACK );
	g2d.drawRect( 20, 20, d.width - 40, d.height - 40 );
	g2d.setClip( 20, 20, d.width - 40, d.height - 40 );
	int x = 25, y = 20 + fm.getHeight( );
	g2d.drawString( "Exception:", x, y );//$NON-NLS-1$
	x += fm.stringWidth( "Exception:" ) + 5;//$NON-NLS-1$
	g2d.setColor( Color.RED );
	g2d.drawString( sException, x, y );
	x = 25;
	y += fm.getHeight( );
	if ( sWrappedException != null )
	{
		g2d.setColor( Color.BLACK );
		g2d.drawString( "Wrapped In:", x, y );//$NON-NLS-1$
		x += fm.stringWidth( "Wrapped In:" ) + 5;//$NON-NLS-1$
		g2d.setColor( Color.RED );
		g2d.drawString( sWrappedException, x, y );
		x = 25;
		y += fm.getHeight( );
	}
	g2d.setColor( Color.BLACK );
	y += 10;
	g2d.drawString( "Message:", x, y );//$NON-NLS-1$
	x += fm.stringWidth( "Message:" ) + 5;//$NON-NLS-1$
	g2d.setColor( Color.BLUE );
	g2d.drawString( sMessage, x, y );
	x = 25;
	y += fm.getHeight( );
	g2d.setColor( Color.BLACK );
	y += 10;
	g2d.drawString( "Trace:", x, y );//$NON-NLS-1$
	x = 40;
	y += fm.getHeight( );
	g2d.setColor( Color.GREEN.darker( ) );
	for ( int i = 0; i < stea.length; i++ )
	{
		g2d.drawString( stea[i].getClassName( ) + ":"//$NON-NLS-1$
				+ stea[i].getMethodName( ) + "(...):"//$NON-NLS-1$
				+ stea[i].getLineNumber( ), x, y );
		x = 40;
		y += fm.getHeight( );
	}
}
 
源代码16 项目: openAGV   文件: BitmapFigure.java
@Override
protected void drawStroke(Graphics2D g) {
  Rectangle r = displayBox();
  g.drawRect(r.x, r.y, r.width - 1, r.height - 1);
}
 
源代码17 项目: netbeans   文件: Paper.java
@Override
public void paint(Graphics graphics) {
    Graphics2D g = Config.getDefault().getGraphics(graphics);

    // scaling
    if (myIsPainting) {
        g.scale(myScale, myScale);
    }

    // background
    g.setColor(Color.white);
    g.fillRect(myPageX, myPageY, myPageWidth, myPageHeight);

    // page
    g.translate(myPageX, myPageY);
    myPage.print(g);
    g.translate(-myPageX, -myPageY);

    // horizontal margin
    g.setColor(Color.white);
    g.fillRect(0, 0, myPaperWidth, myPageY);
    g.fillRect(0, myPageY + myPageHeight, myPaperWidth, myPaperHeight);

    // header
    if (myHasHeader) {
        drawTitle(g, myHeaderLeft, myHeaderCenter, myHeaderRight, myHeaderY, myHeaderColor, myHeaderFont);
    }

    // footer
    if (myHasFooter) {
        drawTitle(g, myFooterLeft, myFooterCenter, myFooterRight, myFooterY, myFooterColor, myFooterFont);
    }

    // vertical margin
    g.setColor(Color.white);
    g.fillRect(0, 0, myPageX, myPaperHeight);
    g.fillRect(myPageX + myPageWidth, 0, myPaperWidth, myPaperHeight);

    // shadow
    if (myIsPainting) {
        g.setColor(Color.gray.darker());
        g.fillRect(myPaperWidth, SHADOW_WIDTH, SHADOW_WIDTH + 1, myPaperHeight);
        g.fillRect(SHADOW_WIDTH, myPaperHeight, myPaperWidth, SHADOW_WIDTH + 1);
        g.setColor(Color.lightGray);
        g.fillRect(myPaperWidth, 0, SHADOW_WIDTH + 1, SHADOW_WIDTH + 1);
        g.fillRect(0, myPaperHeight, SHADOW_WIDTH + 1, SHADOW_WIDTH + 1);
    }

    // box
    if (myIsPainting) {
        g.setColor(Color.black);
        g.drawRect(0, 0, myPaperWidth, myPaperHeight);
    }

    // border
    if (myHasBorder) {
        g.setColor(myBorderColor);
        g.drawRect(myPageX, myPageY, myPageWidth, myPageHeight);
    }

    // number
    if (myIsPainting) {
        g.setColor(NUMBER_FONT_COLOR);
        g.setFont(NUMBER_FONT_NAME);
        g.drawString(Integer.toString(myNumber), NUMBER_X, NUMBER_Y);
    }
}
 
源代码18 项目: Logisim   文件: AbstractTtlGate.java
protected void paintBase(InstancePainter painter, boolean drawname, boolean ghost) {
	Direction dir = painter.getAttributeValue(StdAttr.FACING);
	Graphics2D g = (Graphics2D) painter.getGraphics();
	Bounds bds = painter.getBounds();
	int x = bds.getX();
	int y = bds.getY();
	int xp = x, yp = y;
	int width = bds.getWidth();
	int height = bds.getHeight();
	for (byte i = 0; i < this.pinnumber; i++) {
		if (i < this.pinnumber / 2) {
			if (dir == Direction.WEST || dir == Direction.EAST)
				xp = i * 20 + (10 - pinwidth / 2) + x;
			else
				yp = i * 20 + (10 - pinwidth / 2) + y;
		} else {
			if (dir == Direction.WEST || dir == Direction.EAST) {
				xp = (i - this.pinnumber / 2) * 20 + (10 - pinwidth / 2) + x;
				yp = height + y - pinheight;
			} else {
				yp = (i - this.pinnumber / 2) * 20 + (10 - pinwidth / 2) + y;
				xp = width + x - pinheight;
			}
		}
		if (dir == Direction.WEST || dir == Direction.EAST) {
			// fill the background of white if selected from preferences
			if (!ghost && AppPreferences.FILL_COMPONENT_BACKGROUND.getBoolean()) {
				g.setColor(Color.WHITE);
				g.fillRect(xp, yp, pinwidth, pinheight);
				g.setColor(Color.BLACK);
			}
			g.drawRect(xp, yp, pinwidth, pinheight);
		} else {
			// fill the background of white if selected from preferences
			if (!ghost && AppPreferences.FILL_COMPONENT_BACKGROUND.getBoolean()) {
				g.setColor(Color.WHITE);
				g.fillRect(xp, yp, pinheight, pinwidth);
				g.setColor(Color.BLACK);
			}
			g.drawRect(xp, yp, pinheight, pinwidth);
		}
	}
	if (dir == Direction.SOUTH) {
		// fill the background of white if selected from preferences
		if (!ghost && AppPreferences.FILL_COMPONENT_BACKGROUND.getBoolean()) {
			g.setColor(Color.WHITE);
			g.fillRoundRect(x + pinheight, y, bds.getWidth() - pinheight * 2, bds.getHeight(), 10, 10);
			g.setColor(Color.BLACK);
		}
		g.drawRoundRect(x + pinheight, y, bds.getWidth() - pinheight * 2, bds.getHeight(), 10, 10);
		g.drawArc(x + width / 2 - 7, y - 7, 14, 14, 180, 180);
	} else if (dir == Direction.WEST) {
		// fill the background of white if selected from preferences
		if (!ghost && AppPreferences.FILL_COMPONENT_BACKGROUND.getBoolean()) {
			g.setColor(Color.WHITE);
			g.fillRoundRect(x, y + pinheight, bds.getWidth(), bds.getHeight() - pinheight * 2, 10, 10);
			g.setColor(Color.BLACK);
		}
		g.drawRoundRect(x, y + pinheight, bds.getWidth(), bds.getHeight() - pinheight * 2, 10, 10);
		g.drawArc(x + width - 7, y + height / 2 - 7, 14, 14, 90, 180);
	} else if (dir == Direction.NORTH) {
		// fill the background of white if selected from preferences
		if (!ghost && AppPreferences.FILL_COMPONENT_BACKGROUND.getBoolean()) {
			g.setColor(Color.WHITE);
			g.fillRoundRect(x + pinheight, y, bds.getWidth() - pinheight * 2, bds.getHeight(), 10, 10);
			g.setColor(Color.BLACK);
		}
		g.drawRoundRect(x + pinheight, y, bds.getWidth() - pinheight * 2, bds.getHeight(), 10, 10);
		g.drawArc(x + width / 2 - 7, y + height - 7, 14, 14, 0, 180);
	} else {// east
		// fill the background of white if selected from preferences
		if (!ghost && AppPreferences.FILL_COMPONENT_BACKGROUND.getBoolean()) {
			g.setColor(Color.WHITE);
			g.fillRoundRect(x, y + pinheight, bds.getWidth(), bds.getHeight() - pinheight * 2, 10, 10);
			g.setColor(Color.BLACK);
		}
		g.drawRoundRect(x, y + pinheight, bds.getWidth(), bds.getHeight() - pinheight * 2, 10, 10);
		g.drawArc(x - 7, y + height / 2 - 7, 14, 14, 270, 180);
	}
	g.rotate(Math.toRadians(-dir.toDegrees()), x + width / 2, y + height / 2);
	if (drawname) {
		g.setFont(new Font(Font.DIALOG_INPUT, Font.BOLD, 14));
		GraphicsUtil.drawCenteredText(g, this.name, x + bds.getWidth() / 2, y + bds.getHeight() / 2 - 4);
	}
	if (dir == Direction.WEST || dir == Direction.EAST) {
		xp = x;
		yp = y;
	} else {
		xp = x + (width - height) / 2;
		yp = y + (height - width) / 2;
		width = bds.getHeight();
		height = bds.getWidth();
	}
	g.setFont(new Font(Font.DIALOG_INPUT, Font.BOLD, 7));
	GraphicsUtil.drawCenteredText(g, "Vcc", xp + 10, yp + pinheight + 4);
	GraphicsUtil.drawCenteredText(g, "GND", xp + width - 10, yp + height - pinheight - 7);
}
 
源代码19 项目: whyline   文件: WhylineMenuBorder.java
public void paintBorder(Component c, Graphics g, int x, int y, int width, int height) {

		Graphics2D g2 = (Graphics2D)g.create();

		g2.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_ON);
		g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
		g2.setRenderingHint(RenderingHints.KEY_RENDERING, RenderingHints.VALUE_RENDER_QUALITY);
		
		g2.setColor(UI.getControlBorderColor());
		g2.drawRect(0, 0, width - 1, height - 1);
		
	}
 
源代码20 项目: ET_Redux   文件: KwikiSynopticOutputPanel.java
private void DrawBounds ( Graphics2D g2d ) {

        g2d.drawRect( 0, 0, getWidth() - 1, getHeight() - 1 );

    }