用java设置各种形状的颜色

时间:2013-10-09 00:53:30

标签: java shapes

我制作了一堆彼此在里面的三角形,我正在尝试设置颜色,以便每个三角形都是随机颜色。我该怎么做?我试过了

g2.setColor(new Color(COLOUR,COLOUR,COLOUR)); 

COLOUR=(int)(Math.random()*256) 

然后我填充三角形,但所有三角形最终都是相同的颜色....

       for ( int i=0 ; i<triangle.size() ; i++) {
            Triangle tri
            tri=triangle.get(i);
            g2.setColor(new Color(COLOR,COLOR,COLOR));
            tri.draw(g2);
      }

三角形确实创造了我想要的东西,嵌套的三角形,只是不能正确地着色。

2 个答案:

答案 0 :(得分:1)

在绘制每个三角形之前,您需要随机化颜色。如果你想要灰色以外的颜色,你还需要分别初始化颜色的每个组成部分(红色,绿色和蓝色)。

 int redColor,greenColor,blueColor;
 for ( int i=0 ; i<triangle.size() ; i++) {
        Triangle tri;
        tri=triangle.get(i);
        redColor=(int)(Math.random()*255);
        greenColor=(int)(Math.random()*255);
        blueColor=(int)(Math.random()*255);
        g2.setColor(new Color(redColor,greenColor,blueColor));
        tri.draw(g2);
 }    

希望这有助于说明问题所在。

答案 1 :(得分:0)

每次要绘制三角形时都需要设置新颜色,如下所示:

g2d.setColor(aColor);
g2d.drawPolygon(); // triangle 
g2d.setColor(bColor);
g2d.drawPolygon(); // triangle