summaryrefslogtreecommitdiffstats
path: root/src/jrummikub/view/StonePainter.java
diff options
context:
space:
mode:
authorMatthias Schiffer <mschiffer@universe-factory.net>2011-04-29 16:25:32 +0200
committerMatthias Schiffer <mschiffer@universe-factory.net>2011-04-29 16:25:32 +0200
commit96cb7454884ed896c0e3305e86212a5c01240d5f (patch)
tree695e971405d3f9fda0d9f660222bbcf8d3f56e98 /src/jrummikub/view/StonePainter.java
parent839e020f4bbd85a76a970cf7c56538a82e1075b6 (diff)
downloadJRummikub-96cb7454884ed896c0e3305e86212a5c01240d5f.tar
JRummikub-96cb7454884ed896c0e3305e86212a5c01240d5f.zip
Restructured view package
git-svn-id: svn://sunsvr01.isp.uni-luebeck.de/swproj13/trunk@17 72836036-5685-4462-b002-a69064685172
Diffstat (limited to 'src/jrummikub/view/StonePainter.java')
-rw-r--r--src/jrummikub/view/StonePainter.java94
1 files changed, 0 insertions, 94 deletions
diff --git a/src/jrummikub/view/StonePainter.java b/src/jrummikub/view/StonePainter.java
deleted file mode 100644
index 8b104df..0000000
--- a/src/jrummikub/view/StonePainter.java
+++ /dev/null
@@ -1,94 +0,0 @@
-package jrummikub.view;
-
-import java.awt.Color;
-import java.awt.Font;
-import java.awt.FontMetrics;
-import java.awt.Graphics;
-import java.awt.Graphics2D;
-import java.awt.RenderingHints;
-import java.awt.geom.Rectangle2D;
-
-import jrummikub.model.Stone;
-import jrummikub.model.StoneColor;
-
-class StonePainter {
- private static final float ASPECT_RATIO = 0.75f;
- private static final float DEFAULT_WIDTH = 40;
- private static final float CIRCLE_WIDTH = 0.5f;
-
- private static final Color BACKGROUND_COLOR = new Color(0.9f, 0.9f, 0.6f);
-
- public static final float BOARD_SCALE = 75.0f*ASPECT_RATIO/DEFAULT_WIDTH;
-
-
- private static Color getColor(StoneColor color) {
- switch(color) {
- case BLACK:
- return Color.BLACK;
- case BLUE:
- return Color.BLUE;
- case ORANGE:
- return new Color(1.0f, 0.6f, 0);
- case RED:
- return Color.RED;
- }
-
- return null;
- }
-
- public static void paintStone(Graphics g, Stone stone, float x, float y, float scale) {
- if (g instanceof Graphics2D) {
- ((Graphics2D)g).setRenderingHint(RenderingHints.KEY_ANTIALIASING,
- RenderingHints.VALUE_ANTIALIAS_ON);
- }
-
- int width = (int)(DEFAULT_WIDTH*scale);
- int height = (int)(DEFAULT_WIDTH*scale/ASPECT_RATIO);
-
- int xpos = (int)(x*width);
- int ypos = (int)(y*height);
-
- // Paint background
- g.setColor(BACKGROUND_COLOR);
- g.fillRect(xpos, ypos, width, height);
-
- // Paint bevel border
- g.setColor(BACKGROUND_COLOR.brighter().brighter());
- g.fillRect(xpos, ypos, 1, height);
- g.setColor(BACKGROUND_COLOR.brighter());
- g.fillRect(xpos+1, ypos+1, 1, height-2);
-
- g.setColor(BACKGROUND_COLOR.brighter().brighter());
- g.fillRect(xpos, ypos, width, 1);
- g.setColor(BACKGROUND_COLOR.brighter());
- g.fillRect(xpos+1, ypos+1, width-2, 1);
-
- g.setColor(BACKGROUND_COLOR.darker().darker());
- g.fillRect(xpos+width-1, ypos, 1, height);
- g.setColor(BACKGROUND_COLOR.darker());
- g.fillRect(xpos+width-2, ypos+1, 1, height-2);
-
- g.setColor(BACKGROUND_COLOR.darker().darker());
- g.fillRect(xpos, ypos+height-1, width, 1);
- g.setColor(BACKGROUND_COLOR.darker());
- g.fillRect(xpos+1, ypos+height-2, width-2, 1);
-
- // Paint number
- g.setFont(new Font("SansSerif", Font.BOLD, height/4));
- FontMetrics fm = g.getFontMetrics();
- String value = Integer.toString(stone.getValue());
- Rectangle2D stringRect = fm.getStringBounds(value, g);
-
- g.setColor(getColor(stone.getColor()).darker());
- g.drawString(value, (int)(xpos+width/2-stringRect.getWidth()/2)+1, ypos+height/4+(fm.getAscent()-fm.getDescent())/2+1);
- g.setColor(getColor(stone.getColor()));
- g.drawString(value, (int)(xpos+width/2-stringRect.getWidth()/2), ypos+height/4+(fm.getAscent()-fm.getDescent())/2);
-
- // Paint circle
- g.setColor(BACKGROUND_COLOR.darker());
- g.drawArc((int)(xpos+width/2-width*CIRCLE_WIDTH/2), (int)(ypos+height*0.65f-width*CIRCLE_WIDTH/2), (int)(width*CIRCLE_WIDTH), (int)(width*CIRCLE_WIDTH), 50, 170);
-
- g.setColor(BACKGROUND_COLOR.brighter());
- g.drawArc((int)(xpos+width/2-width*CIRCLE_WIDTH/2), (int)(ypos+height*0.65f-width*CIRCLE_WIDTH/2), (int)(width*CIRCLE_WIDTH), (int)(width*CIRCLE_WIDTH), -130, 170);
- }
-}