有没有简单的方法在JPanel上绘制圆圈?

时间:2012-04-18 23:03:10

标签: java graphics

我在使用drawOval(x,y,width,height)方法时遇到了麻烦,该方法假设x和y值代表“要绘制的椭圆的左上角”的坐标({{3 }})

我希望x和y值代表圆的中心点。我该怎么做呢?感谢

1 个答案:

答案 0 :(得分:2)

一个简单的解决方案,如果您事先声明了宽度/高度,那么将使用drawOval方法,如下所示:

drawOval( x - (width/2), y - (height/2), width, height);

这将确保(x,y)位于椭圆的中心。

为什么?

假设(x,y)是(10,10)并且你想绘制一个椭圆(高度,宽度)=(10,10)。

drawOval(x, y, height width);

然后在(10,10),处绘制椭圆的右上角,左下角将在(10 + 10,10 + 10)= (20) ,20)

另一方面,如果你使用

drawOval( x - (width/2), y - (height/2), height, width);

椭圆形的右上角将绘制在(10 - (10/2),10 - (10/2))= (5,5),底部将被绘制at(5 + 10,5 + 10)= (15,15)。然后中心将(10,10):)