【问题标题】:Drawing circles画圈
【发布时间】:2020-08-18 14:23:48
【问题描述】:

如何在java中绘制四个圆,所以四个都在面板的角度?我有半径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).

有没有最简单的方法?

【问题讨论】:

  • 一张图片在这里会很有价值:显示您的面板的东西,正确放置的四个圆圈以及a 的任何尺寸

标签: java swing graphics


【解决方案1】:

所以所有四个都在面板的角度

您是指面板的 4 个角吗?

如果是这样,那么你知道:

  1. 你的圆圈的大小,因为你正在画圆圈
  2. 使用面板的getWidth()getHeight() 方法获得面板的宽度/高度。

但我的主要问题是找到矩形左上角的坐标

绘制左上角很容易,因为圆圈总是从 (0,0) 开始。

所以在paintComponent(...) 方法中的代码是:

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

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

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

相同的基本逻辑适用于上/右和下/右。

【讨论】:

    猜你喜欢
    • 2021-12-31
    • 1970-01-01
    • 2019-04-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多