haz*_*994 3 java graphics geometry jframe shapes
基本上,我想使用 Graphics 绘制一个圆,但不是使用整数来定位它,而是想使用双精度值。
理想情况下:
g.drawOval(0.5, 0.5, 50, 50);
Run Code Online (Sandbox Code Playgroud)
任何帮助是极大的赞赏!提前致谢!
感谢所有帮助的人,但我找到了出路,我的 dy 变量设置为 1,所以如果我希望 dx 为 dy 的一半,那将是不可能的,相反我只是将 dy 更改为 2,将 dx 更改为 1 !愚弄我!
这样做的唯一有效方法是使用Ellipse2D.Double形状并将其传递给实例的draw(Shape)方法Graphics2D。为获得最佳效果,请启用抗锯齿:
public void yourDrawingMethod(Graphics gg)
{
/* Cast it to Graphics2D */
Graphics2D g = (Graphics2D) gg;
/* Enable anti-aliasing and pure stroke */
g.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
g.setRenderingHint(RenderingHints.KEY_STROKE_CONTROL, RenderingHints.VALUE_STROKE_PURE);
/* Construct a shape and draw it */
Ellipse2D.Double shape = new Ellipse2D.Double(0.5, 0.5, 50, 50);
g.draw(shape);
}
Run Code Online (Sandbox Code Playgroud)
您也可以使用Graphics2D.fill(Shape)。
| 归档时间: |
|
| 查看次数: |
11225 次 |
| 最近记录: |