当前位置: 首页>>代码示例>>Java>>正文


Java Graphics2D.fill3DRect方法代码示例

本文整理汇总了Java中java.awt.Graphics2D.fill3DRect方法的典型用法代码示例。如果您正苦于以下问题:Java Graphics2D.fill3DRect方法的具体用法?Java Graphics2D.fill3DRect怎么用?Java Graphics2D.fill3DRect使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在java.awt.Graphics2D的用法示例。


在下文中一共展示了Graphics2D.fill3DRect方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: buildImage

import java.awt.Graphics2D; //导入方法依赖的package包/类
public Image buildImage(GamePieceImage defn) {
  // Create our base image
  final BufferedImage image = ImageUtils.createCompatibleTranslucentImage(
    Math.max(width,1),
    Math.max(height,1)
  );
  final Graphics2D g = image.createGraphics();

  // Fill in the sample Background color
  Color bgColor = defn.getBgColor().getColor();
  g.setColor(bgColor);

  if (getBorder().equals(BORDER_3D)) {
    if (bgColor != null) g.fill3DRect(0, 0, width, height, true);
  }
  else {
    if (bgColor != null) g.fillRect(0, 0, width, height);

    // Add Border
    if (getBorder().equals(BORDER_PLAIN) || getBorder().equals(BORDER_FANCY)) {
      Color bg = bgColor == null ? Color.WHITE : bgColor;
      g.setColor(defn.getBorderColor().getColor());
      g.setStroke(new BasicStroke(1.0f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND));
      g.drawRect(0, 0, width - 1, height - 1);
      if (getBorder().equals(BORDER_FANCY)) {
        Color lt = new Color(bg.getRed()   / 2,
                             bg.getGreen() / 2,
                             bg.getBlue()  / 2);
        Color dk = new Color(bg.getRed()   + (255 - bg.getRed())   / 2,
                             bg.getGreen() + (255 - bg.getGreen()) / 2,
                             bg.getBlue()  + (255 - bg.getBlue())  / 2);
        g.setColor(dk);
        g.drawLine(1, 1, width - 3, 1);
        g.drawLine(1, 2, 1, height - 3);
        g.setColor(lt);
        g.drawLine(width - 2, 2, width - 2, height - 2);
        g.drawLine(2, height - 2, width - 3, height - 2);
      }
    }
  }

  // layer each item over the top
  for (Item item : items) {
    if (item != null) {
      item.draw(g, defn);
    }
  }

  g.dispose();

  return image;
}
 
开发者ID:ajmath,项目名称:VASSAL-src,代码行数:53,代码来源:GamePieceLayout.java

示例2: drawOverlay

import java.awt.Graphics2D; //导入方法依赖的package包/类
/**
 * Called from another thread, must be synchronized 
 */
@Override
public synchronized void drawOverlay(Graphics g, LevelScene levelScene, int playerIndex) {
	
	if(reservoirBars == null) {
		return;
	}
	if(agent != null && agent.getPlayerIndex() != GlobalOptions.playerGameWorldToDisplay) {
		return;
	}
	

	Image[] motivations= calculateImages();
	
	int imageSize = imageMaximumSize;
	int padding = 3;
	
	
	int boxWidth = (imageSize * motivations.length ) + (padding *  motivations.length );
	int boxHeight = (imageSize)+padding*2;
	
	int yTopleftCorner = GlobalOptions.yScreen -(boxHeight+1);
	int xTopleftCorner = 0;		
	

	
	Graphics2D g2d =(Graphics2D) g;

	
	
	
	g2d.setColor(new Color(255, 255, 255, 200));
	
	g2d.fill3DRect(xTopleftCorner,yTopleftCorner , boxWidth, boxHeight, true);
	g2d.setColor(Color.GRAY);
	g2d.draw3DRect(xTopleftCorner+1,yTopleftCorner+1 , boxWidth-1, boxHeight-1, true);
	

	g2d.setColor(null);
	for(int i = 0; i<motivations.length; i++) {
		
		int xOffset = (xTopleftCorner+ i*imageSize) +(  (boxWidth - (motivations.length*imageSize)) / motivations.length );
		int yOffset = (yTopleftCorner + ((boxHeight-motivations[i].getHeight(null))/2));
		g2d.drawImage(motivations[i], xOffset, yOffset, null);
	}
	
	

}
 
开发者ID:CognitiveModeling,项目名称:BrainControl,代码行数:52,代码来源:MotivationsOverlay.java


注:本文中的java.awt.Graphics2D.fill3DRect方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。