Анимация в ЛОГОТИПЕ
Я создал хороший шаблон, используя следующий однострочный код
repeat 36 [repeat 10[fd 10 rt 36] rt 10]
Теперь я хочу, чтобы это выглядело так, как будто оно вращается. Я попытался очистить экран, а затем повернуть черепаху на определенный угол, а затем снова распечатать шаблон. Но в моей логике что-то не так. Кто-нибудь может помочь?
1 ответ
Чтобы выполнить анимацию, вам нужен переводчик, который ее поддерживает. Интерпретатор должен отображать весь вывод перед его отображением (не показывает движение черепахи во время рисования), и он также должен поддерживать wait
команда (или что-то подобное). Примером переводчика, который отвечает этим требованиям, может служить тот, кто находится на сайте http://www.logointerpreter.com/turtle-editor.php. Вот пример, который вращает ваше колесо на полный оборот и работает с этим интерпретатором:
ht
repeat 360
[
clean
repeat 36 [repeat 10[fd 10 rt 36] rt 10]
wait 10
rt 1
]
Как видите, внешний цикл рисует 360 отдельных кадров. После отрисовки каждого кадра, он ждет 10 миллисекунд, чтобы вы могли видеть кадр. Затем он поворачивает черепаху на один градус, прежде чем очистить экран и начать рисование следующего кадра. Если вам нужно немного больше контроля, вы можете также сохранить начальный угол для каждого кадра в переменной, например так:
ht
make "start 0
repeat 360
[
cs
rt :start
repeat 36 [repeat 10[fd 10 rt 36] rt 10]
wait 10
make "start (:start + 1)
]