我正在尝试创建弧,但是当我使用相同的width和height参数时,弧几乎是平坦的,难道不是应该更高吗?我本来希望高度看起来与屏幕上的宽度相同。

public void paintComponent(Graphics g) {
    Graphics2D g2d = (Graphics2D) g.create();
    g2d.drawArc(0, 0, 100, 100, 45, 90);
}

最佳答案

g2d.drawArc(0, 0, 100, 100, 45, 90, Arc2D.CHORD);



  我本来希望高度看起来与屏幕上的宽度相同。


这是因为您仅绘制了90度的弧。将值更改为180,宽度/高度将不同。即使您绘制180,宽度/高度也不会相同。宽度/高度仅对于360度弧是相同的。

另外,您正在使用什么API? Graphics.drawArc(...)仅支持6个参数,不支持7个。

当您提出问题时,请张贴适当的SSCCE以便我们查看行为。

08-19 15:52