画圈

q43xntqr  于 2021-07-12  发布在  Java
关注(0)|答案(1)|浏览(299)

如何在java中绘制四个圆,使四个圆都在面板的Angular 内?我有半径a,但我的主要问题是找到矩形左上角点的坐标。我在左下角找到了这个:

g.fillOval(0-(2*a/2-((int)(2*a/2*Math.sqrt(2)/2))),0-(2*a/2-((int)(2*a/2*Math.sqrt(2)/2))), 2*a, 2*a).

有最简单的方法吗?

e4eetjau

e4eetjau1#

所以这四个都在面板的Angular
你是说面板的四个角吗?
如果是,那么你知道:
因为你在画圆,所以你的圆的大小
通过使用 getWidth() 以及 getHeight() 小组的方法。
但我的主要问题是找到矩形左上角点的坐标
绘制左上角很容易,因为圆总是从(0,0)开始。
所以在 paintComponent(...) 方法代码为:

g.FillOval(0, 0, circleWidth, circleHeight);

要在底部/左侧绘制圆,您还知道x值将为0,因此您只需计算y值,y值将为:

int y = getHeight() - circleHeight;
g.fillOval(0, y, circleWidth, circleHeight);

相同的基本逻辑将适用于顶部/右侧和底部/右侧。

相关问题