为什么GraphicsContext使用双参数的方法?

时间:2015-06-01 07:22:12

标签: java swing javafx int double

我正在从摇摆到javafx。我想知道为什么GraphicsContext使用双参数的方法。例如fillRect(double x, double y, double w, double h)与swing不同,方法为drawRect(int x, int y, int width, int height)

我应该以双倍的方式完成所有计算吗?

1 个答案:

答案 0 :(得分:4)

drawRect继承自Graphicsint使用Graphics2D来指定合作伙伴&尺寸。

另一方面,Graphics对象能够处理整个像素之间的图形值'。为了补偿它,通常会在渲染的部分渲染抖动像素(绘图和BG颜色之间的某个部分),它必须处理像素的分数。

  

我应该以双倍的方式完成所有计算吗?

是的!完全等于整数的双精度值将按照您对{{1}}方法的预期呈现 - 具有清晰,干净的线条。但是如果形状的边界落在整个像素之间,那么颜色就会抖动。