|
|

楼主 |
发表于 2022-8-8 12:54
|
显示全部楼层
本帖最后由 马黑黑 于 2022-8-8 12:55 编辑
先说小球半径。对象 dotAr[key] (key是数组下标内任意数)有三个属性,它们已经在创建函数的时候赋值,后面又通过 update 函数在小球移出顶线后随机或不随机赋值(重新安置时的Y坐标不随机,在底线):
dotAr[key].x - X坐标
dotAr[key].y - Y坐标
dotAr[key].r - 半径
再说珠子大小。半径决定其大小,半径计算中,工具函数 Math.random() * 5 将得到 0 - 5 之间的浮点数(会有0,所以本帖不够严谨,严谨的话应再加上一个数,如加1什么的)。
至于珠子上升的依据,就是你说的这句,
dotAr[key].y -= (7 - dotAr[key].r) / 10;
半径不会超过 5,7减去5还有2,然后除以10,那么,上升的速率就在0.2上下幅度,这是处于缓慢而平滑上升设计的,可根据需要另外设计算式。为什么Y坐标要用 -= ?因为上升,Y坐标为0时是在顶线,而珠子的Y坐标值,不论是初始时还是重置时,都大于0,所以需要持续减去一定值对象才会上升。 |
评分
-
| 参与人数 1 | 威望 +50 |
金钱 +100 |
经验 +50 |
收起
理由
|
红影
| + 50 |
+ 100 |
+ 50 |
赞一个! |
查看全部评分
|