设置变量到一个新的数值用于一个分支(子树)。
参数
变量必须是赋值或者从新赋值的 (re-)assigned.
实例:
color("powderblue")
for (i = [10:50])
{
assign (angle = i*360/20, distance = i*10, r = i*2)
{
rotate(angle, [1, 0, 0])
translate([0, distance, 0])
sphere(r = r);
}
}
这里的赋值有一点想 C 语言中的赋值,不过 C 中是直接赋值的,而这里多了一个 assign 函数和一个括弧,^_^ ,不管如何,非常好用阿!这里,循环 for(i=[10:50], 就是循环从 10 开始到 50 结束,共 40 个,包含 0 就是 41 次循环,angle=i*360/20, 就是每个球形旋转 18 度, rotate(angle,[1,0,0]), 旋转是围绕着 x 轴线进行的,而置位 translate([0,distance,0]), 把置位也成了一个增量循环, distance=i*10, 就是沿着 y 轴线每个球形移动。
循环的相应参数 *10 的位置, sphere(r=r) 等于符号后边的 r 是赋值的相当于代数的字符,也是一个增量数值, r=i*2, 就是球形的半径从增量的数值中每一次每一个增量都乘以 2 之后得到的结果是球体的半径。我有个图形分别对不同的参数做了调整得出不同的结果。
|