谁能给我解释一下?
您不能在像素之间绘制,那么为什么在绘制时要使用浮点或双重测量?在 Oracle 的文档中写了一些关于打印机设备的内容,但它也不能在最小的点之间进行绘制。我不明白。
让我们说一条简单的线。这条线的宽度设置为 1.3f。当它被绘制时会发生什么:
- 在 Windows 中显示(我相信它有 96 DPI)?
- 300 DPI的打印机?
AFAIK Java 在内部使用 72 DPI。那么数学如何呢?
谁能给我解释一下?
您不能在像素之间绘制,那么为什么在绘制时要使用浮点或双重测量?在 Oracle 的文档中写了一些关于打印机设备的内容,但它也不能在最小的点之间进行绘制。我不明白。
让我们说一条简单的线。这条线的宽度设置为 1.3f。当它被绘制时会发生什么:
AFAIK Java 在内部使用 72 DPI。那么数学如何呢?
我想到了几个用例。
以上都不会轻易排除使用单精度浮点数,事实上大多数 G2D 操作也可以使用浮点数。使用双精度仅对非常大的变焦、非常高的精度要求和类似应用程序很重要。但另一方面,在任何情况下,大多数计算都是在 double 上执行的,并且尽可能远地通过图形管道进行这些计算的开销通常可以忽略不计。所以当你问我为什么要使用 double 而不是 float 时,我会问你“为什么不呢?”</p>