Анимация

Графический интерфейс позволяет анимировать отображаемую сцену. Пример:

s = box(10, center=True)
controller = disp(s)
nulltime = time.time()

def animate(widget):
trans = rotateZ(time.time() - nulltime) * right(30)
controller.relocate(trans)

show(animate=animate)

Здесь мы используем специальную функцию анимации animate, которая, используя объект контроллер, возвращенный функцией disp, в зависимости от текущего момента времени обновляет местоположение контролируемого объекта. В качестве параметра метода relocate выступает объект преобразования. (Подробнее в Преобразования, Комбинации преобразований)

Кроме параметра animate функция show имеет связанные параметры preanimate и close_handle. preanimate принимает функцию, вызывающуюся один раз до первой итерации animate, но уже после создания графического окружения. close_handle вызывается как обработчик при завершении процесса.