【发布时间】:2012-02-01 15:29:39
【问题描述】:
我正在开发一个用户在 HTML5 画布上绘制欧几里得结构的应用程序。因此,我不能真正限制某些形状的大小。当探索在屏幕上绘制的非常大的圆圈时,我注意到非常大的圆圈没有恒定的半径。
更具体地说,由两个点定义的圆,一个中心点和一个指定半径的圆不再通过半径点!
逐渐变大的圆圈。这些都应该通过E点。
错误不会发生在 45 度的倍数 = PI/4 上。在这些倍数之间误差最大(例如 PI/8)
这是一个包含上面第一个示例的 jsfiddle:
我的问题:为什么会发生这种情况?有没有办法(有效)解决这个问题?
【问题讨论】:
-
在 MacOS X 10.7.2 上的 Chrome 16.0.912.63 上,您的小提琴中的圆圈触摸,但没有通过所需的点。
-
有趣,顺便说一下,我在 Chrome 16.0.912.63 Windows 7 上。 Linux 上的 Chrome 也出现此问题。在 Firefox Windows 7 上会发生相同的错误,但要小一个数量级(仅当 r = 100 000 时才明显)。在 IE 9 上,错误甚至更小(在 r = 1 000 000 时明显)。所有这些测试都使用 alpha = PI/8
标签: graphics drawing html5-canvas