我需要使用js turtle library来绘制分形,因此,分形是动画的,直到完全像python turtle示例here
一样绘制为止我已经在命令here中尝试过。文档中有一个名为animate
的函数,但我无法使用它,它仅等待一段时间,然后绘制分形而没有任何动画。
我输入命令输入animate(demo, 1000)
有什么建议吗?
如果我不能在js turtle中使用动画,还有另一个快速简便的库可以完成分形的绘制吗?!
答案 0 :(得分:1)
您没有正确使用animate()
。您不能仅将其应用于完成的程序并期望其行为发生变化。相反,您需要将其合并到程序中。应该有一个函数在每次调用动画时绘制一部分动画。然后让它animate()
一遍又一遍地调用。重写您的示例:
function square(side) {
repeat(4, function () {
forward(side);
right(90);
});
}
var s = 100
function draw() {
square(s);
right(36)
s -= 10
if (s < 0) {
s = 100
clear()
}
}
function demo() {
hideTurtle();
colour(0, 0, 255, 1);
animate(draw, 500);
}
通过demo()
调用它,不要在其上调用animate()
。它的基本动画单位是 square 。如果要查看正在绘制的正方形,则需要重新设计代码,以使基本动画单元位于正方形的一侧(即 line 。)