使用arcAngle为圆的外部着色

时间:2014-02-26 21:18:27

标签: java geometry

关于圆周长的问题。为了改变圆圈(圆周)的外部颜色,我会使用

drawArc(int x, int y, int width, int height, int startAngle, int arcAngle)

在下面的代码之后,我不知道如何开始......后Public void drawArc我不知道去哪里

public void paintComponent(Graphics g) {
    super.paintComponent(g);

    Dimension d = getSize();

    for(int i = 0; i < 100; ++i) {                        
        Color color = new Color(generator.nextInt(255), generator.nextInt(255), generator.nextInt(255));
        g.setColor(color);

        int circleSize = generator.nextInt(d.width / 4);
        int x = generator.nextInt(d.width - circleSize);
        int y = generator.nextInt(d.height - circleSize);
        g.fillOval(x, y, circleSize, circleSize);
        g.drawArc(x, y, circleSize, circleSize, 0, 360);
    }
}

2 个答案:

答案 0 :(得分:1)

您正在绘制圆的主体,然后绘制其轮廓,而不更改其间的颜色。这意味着你无法真正看到圆圈的轮廓。

我认为在绘制轮廓之前应该更改图形上下文的颜色。一种方法是插入

color = new Color(generator.nextInt(255), generator.nextInt(255), generator.nextInt(255));
g.setColor(color);
在致电drawArc之前

答案 1 :(得分:0)

您不需要自己的drawArc方法,应该调用Graphics.drawArc()方法。 xy是圆圈的中心,widthheight是圆的直径,startAnglearcAngle是开始和停止绘制圆圈。 0是3点。因此,要绘制完整的圆圈,您可以使用0和360作为startAnglearcAngle