如何使用Java Graphics2D的浮点坐标?

时间:2014-12-23 18:20:06

标签: java graphics2d

所以,我有一个相当典型的

public void paint(Graphics g) 

方法,我用来做

之类的事情
g2.drawOval(200+s.getX().intValue(), 200+s.getY().intValue(), 3, 3);
将它投射到Graphics2D对象后

我的问题是我有以浮点类型表示的坐标,在本例中为双打。我想要的是任意小的值,可以缩放以使它们实际上可感知。看得怎么样

a)Graphics2D中的绘图方法需要输入ints

b)缩放是一个独立的步骤

c)我的原始值需要在不考虑缩放的情况下进行调整,我有一些担心是否会正确显示内容。

实际上,如果我将原始坐标设置为一个很小的值,然后应用缩放进行补偿,结果是可预测的:坐标被视为零,因为它们在被内化时它们的近似值。

有没有办法解决这个问题,以便我同时使用浮点坐标和缩放?

1 个答案:

答案 0 :(得分:2)

如何为提供双精度的2D对象使用java.awt.geom包? e.g。

Ellipse2D.Double ellipse  = 
new Ellipse2D.Double(200+s.getX(), 200+s.getY(), width, height);

检查包摘要http://docs.oracle.com/javase/7/docs/api/java/awt/geom/package-summary.html