为做出上图的效果,花了点时间想了个算法,相比之前的几个实例算法稍微深了个层次。

算法描述:

n=#() –新建空数组

u=1 –定义变量起始量为1

for t=0 to 100 do –for循环语句,这里是指在0到100帧做循环计算

(

animate on–开启动画关键帧

at time t–在第t帧时做什么

(

for a in selection do –在第t帧时执行for循环语句,这里指的是所有被选择的物体做循环计算

(

x=distance $sphere01 a–定义x变量,变量赋值为球体01和方块的距离,distance是计算距离的变量

y=200–定义y变量,这个变量做下面的比较运算

if x>y then –if条件表达式,表示如果…那么…否则,当x>y是,执行then后面的语句,否则执行else后面的语句

(n[u]=y)     ​    ​–给n数组赋予y的值

else n[u]=x–给n数组赋予x的值

a.height=n[u]–给a(指方块)的高度赋予n数组的当前值(x)

u+=1–递增表达式

)

)

)