javascript - canvas中Math.random()与性能优化
大家讲道理
大家讲道理 2017-04-11 13:23:38
0
1
621

在 canvas 画布上随机生成多个封闭图形。封闭图形的位置、大小、旋转角度都是随机的。

我用了Math.random()的方法。比如旋转角度,我写的是 var rot = 360 * Math.random()

但 Math.random() 生成的随机数精度可能很大,像0.7402760791934122

综合考虑,应该把随机生成的有效数字很多的 坐标、数量、角度等变量作为参数传给图形绘制函数呢,

还是直接生成整形的变量如var rot = Math.round(360 * Math.random())性能更好呢?

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

reply all(1)
左手右手慢动作

避免浮点数的坐标点,用整数取而代之

当你画一个没有整数坐标点的对象时会发生子像素渲染。

浏览器为了达到抗锯齿的效果会做额外的运算。为了避免这种情况,请保证在你调用drawImage()函数时,用Math.floor()函数对所有的坐标点取整。

https://developer.mozilla.org...

Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template