Читаем Python для детей. Анимация с черепашьей графикой полностью

Отметим также, что команда shapesize(…) в случае с избражениями, взятыми, например, из интернета, не работают. Если необходимо увеличить размер изображения или повернуть его на какой-либо угол, необходимо вначале создать необходимое вам изображение с изпользованием, например библиотеки PIL языка Python а затем ввести это изображение в программу.

Видео, демонстрирующее пешехода памкина при использовании кода в правой части показанной выше таблицы, расположено по адресу:

https://youtu.be/K3OLvrmDTHI

Астронавт в открытом космосе

Сценарий этого анимационного проекта следующий: астронавт летит в открытом космосе вблизи космического корабля. Код и пояснения приведены в таблице 24

Таблица 24

В показанном примере изображение окна экрана (звездного неба) а также астронавта и космического корабля вводятся в программу с помощью трех файлов: moonsky.gif, astr.gif и shuttle.gif. Движение корабля и космонавта определяются кодами между линиями 1 и 2, каждое новое вхождение космического корабля в зону окна задается случайным углом наклона (последняя строка кода). Для того,чтобы астронавт не удалялся от корабля, в процессе работы программы определяются координаты корабля X,Y, а затем позиция космонавта определяется строкой кода Astro.setposition(X+15,Y+115). Файлы с необходимыми изображениями а также файл с программой можно скачать по адресу:

https://github.com/victenna/Astronaut-in-free-space

Видео файл с полученной анимацией можно посмотреть по адресу:

https://youtu.be/vbO7jR3zMho

Ракета вращается вокруг Земли

Следующий проект: ракетоплан вращается вокруг Земли. Особенностю создания программы является то, что ракетоплан строим сами, используя метод полигонов, изображение Землю выбераем из интернета. Ниже на рисунке показана статическая картина того, что мы хотим реализовать с помощью команд черепашьей графики и использованием стандартных команд программы Питон.

В таблице 25 показан скрипт программы:

Таблица 25

В отличие от предыдущего примера в представленном коде ракетоплан создается с использованием 6 полигонов с вершинами, обозначенными в строках #1-#6. Каждый из полигонов окрашен в свой цвет, а все вместе образуют ракетоплан, который вращается вокруг земли и подчиняется всем командам черепашьей графики. Применяя к построенному ракетоплану функции поворота(left(),right()), используемые в черепашьей графике, создаем еффект его вращения вокруг Земли. Ниже на фоне Земли показан ракетоплан, построенный с помощью полигонов кода.

Файл с изображениeм Земли, а также файл с программой можно скачать по адресу:

https://github.com/victenna/Rockets-around-Earth

Планеты солнечной системы

Представленная в таблице 26 программа реализует анимацию солнечной системы с использованием планет-изображений-спрайтов, скачанных из интернета, вращающихся вокруг солнца. Коротко об отдельных блоках программы. Коды с файлами между линиями 1 и 2 вводят в программу изображения планет сонечной системы. Все файлы имеют расширение gif. Между линиями 2 и 3 расположены коды, заполняющие список, в который входят указанные файлы планет. В этом же блоке коды расставляют планеты в начальное координатное положение. Наконец, коды между линиями 3 и 4 задают вращение планет викруг солнца а также луны вокруг земли.

Таблица 26

Полет воздушных шариков

Программа реализует следующий анимационный сценарий. Мальчик, пританцовывая, выпускает из рук шарик, который поднимается вверх, постепенно увеличиваясь в обьеме, и долетев до верхней части экрана лопается. Затем все действие повторяется вновь и вновь, создавая анимационное видео. Несколько кадров анимации представлено в правой части таблиц 27-1 и 27-2.

Таблица 27-1

Таблица 27-2(продолжение таблицы 27-1)

Поясним основные ключевые блоки программы. Картинка на экране, на фоне которой мальчик запускает вверх шарик, определяется файлом строки с номером 1. Между строками 2 и 3 расположены коды, задающие списки с цветами шариков а также изображения лоскутов лопнувших шариков. Между линиями 3 и 4 расположены коды, определяющие, танцующего мальчика. Коды между линиями 4 и 5 вводят в программу 5 лоскутов лопнувших шариков и изображение нитки, на которой држится шарик. Очень важными являются коды между линиями 5 и 6. Эти коды служат для определения функции, которая вводит следующие обьекты: мальчик, шарик, лоскуты лопнувшего шарика и нить, на которой держится шарик. Все 5 обьектов заданы кодами между линиями 6 и 7. Наконец, коды между линиями 8 и 9 определяют движение шарика вверх а также анимацию движений мальчика с помощью соответствующих спрайтов. Файлы изображений можно скачать поадресу:

https://github.com/victenna/Balloon

Уличное движение

Перейти на страницу:

Похожие книги

1С: Бухгалтерия 8 с нуля
1С: Бухгалтерия 8 с нуля

Книга содержит полное описание приемов и методов работы с программой 1С:Бухгалтерия 8. Рассматривается автоматизация всех основных участков бухгалтерии: учет наличных и безналичных денежных средств, основных средств и НМА, прихода и расхода товарно-материальных ценностей, зарплаты, производства. Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, проводить их по учету, формировать разнообразные отчеты, выводить данные на печать, настраивать программу и использовать ее сервисные функции. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов.Для широкого круга пользователей.

Алексей Анатольевич Гладкий

Программирование, программы, базы данных / Программное обеспечение / Бухучет и аудит / Финансы и бизнес / Книги по IT / Словари и Энциклопедии
1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

Современные торговые предприятия предлагают своим клиентам широчайший ассортимент товаров, который исчисляется тысячами и десятками тысяч наименований. Причем многие позиции могут реализовываться на разных условиях: предоплата, отсрочка платежи, скидка, наценка, объем партии, и т.д. Клиенты зачастую делятся на категории – VIP-клиент, обычный клиент, постоянный клиент, мелкооптовый клиент, и т.д. Товарные позиции могут комплектоваться и разукомплектовываться, многие товары подлежат обязательной сертификации и гигиеническим исследованиям, некондиционные позиции необходимо списывать, на складах периодически должна проводиться инвентаризация, каждая компания должна иметь свою маркетинговую политику и т.д., вообщем – современное торговое предприятие представляет живой организм, находящийся в постоянном движении.Очевидно, что вся эта кипучая деятельность требует автоматизации. Для решения этой задачи существуют специальные программные средства, и в этой книге мы познакомим вам с самым популярным продуктом, предназначенным для автоматизации деятельности торгового предприятия – «1С Управление торговлей», которое реализовано на новейшей технологической платформе версии 1С 8.2.

Алексей Анатольевич Гладкий

Финансы / Программирование, программы, базы данных