Вы не используете 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()
. Это базовая анимация: квадрат . Если вы хотите видеть нарисованные квадраты, то вам нужно изменить дизайн кода, чтобы сделать базовую анимационную единицу стороной квадрата (то есть линия .)