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

В предыдущих разделах мы познакомились с принципами анимации, создаваемой с помощью стандарных примитивов, встроенных в библиотеку turtle. Теперь научимся создавать проекты с использованием обьектов-изображений, называемых спрайтами, при этом существенно расширив возможности анимации. Обьектами могут быть животные , люди, цветы, фрукты и т. д. Каждый спрайт представляет собой неподвижную картинку (изображение). Быстро сменяющая друг друга серия этих картинок составляет анимацию и называется спрайтовой анимацией. Создавая программу, мы заставляем спрайты пермещатюся по экрану а также взаимодействовать друг с другом, например, направление движения одного обьекта может изменяться при соприкосновении с другим обьектом либо, характер движения или цвет обьекта изменяется по команде от другого обьекта. Действия, которые выполняет спрайт, полностью зависят от написанного кода. Один проект может иметь несколько спрайт(sprite)-изображений, каждое из которых должно быть введено в программу с использованием соответствующих файлов. Изображения можно выбрать из Интернета, либо нарисовать самому, либо воспользоваться спарйтами библиотеки популярного в настоящее время языка Scratch, предназначенного для обучения детей. Библиотека языка Scratch содержит много спрайт-изображений, каждое из которых имеет несколько костюмов. Каждый из костюмов фактически является отдельным изображением, отличающимся от предыдущего таким образом, что используя все костюмы в совокупности с помощью кодов программы можно созадвать анимацию изображений. Когда студент хорошо освоился с основами языка Scratch, в котором все команды представлены в виде блоков, появляется желание создать аналогичную программу с помощью текстового языка. Приходит на помощь язык программирования Python. Язык содержит множество различных библиотек, многие из которых используются профессиональными программистами и известными компаниями для создания серьзных программ. Одной из наиболее простых библиотек языка, приспособленной для школьников 12+ и встроенной в стандартную версию языка (ее не нужно дополнительно скачивать-инстолировать), является библиотека Turtle. Большинство команд этой библиотеки идентичны блочным командам языка Scratch, и в этом ее преимущество перед другими библиотеками. Поэтому студенту, знакомому с языком Scratch нетрудно освоиться с основами языка Python. Однако, как мы видели в предыдущих разделах, библиотека Python- Turtle содержит лишь несколько стандартных изображений, которыми можно пользоваться для создания sprite-анимаций: квадрат, круг, стрелка, черепашка. Считается, что библиотека Turtle предназначена в основном для рисования геометрических фигур и анимаций с использованием shape-images этой библиотеки. Однако это не так. Простая и понятная для детей 10+ библиотека Turtle имеет в своем составе команды, позволяющие детям создавать отличные анимационные проекты, наподобие тех, которые создаются с помошью языка Scratch. Нужно лишь научиться добывать нужные нам для проекта изображения (из интернета, либо рисовать самим), научиться вводить их в программу и контролировать движения этих изображений с помощью команд библиотеки. Итак приступим.

Скольжение одиночного изображения

На первом этапе научимся передвигать единичный спрайт-изображение в заданном направлении. В качестве спрайт-изображения выберем тыквенного человечка, назовем его памкин (на английском pumpkin-тыква) . В качестве фона , на котором будет двигаться памкин, выберем пешеходный переход. Во-первых, нам надо найти и запомнить изображения памкина и фона в виде файлов в компьютере. Следует учесть, что все файлы изображений, которые используются в кодах библиотеки turtle должны иметь расширение gif. Обычно размер спрайт-изображения по горизонтали и вертикали не превышает 100-200 пикселей. Изображения фона, заполняющего экран, имеет размеры примерно 800-1200 пикселей по горизонтали и не более 750 пикселей по вертикали. Предположим, мы нашли нужное нам спрайт-изображение памкина, изображение фона и запомнили их в нужном формате(gif) в компьютере. Теперь, используя коды библиотеки turtle, создаем программу (скрипт) которая передвигает памкина вдоль горизонта на фоне изображения-улицы.

В таблице 21 показан соответствующий скрипт.

Таблица 21

Поясним работу представленной программы. Первая строка вызывает библиотеки языка Python turtle и time, т. е. Теперь мы можем пользоваться любой командой этих библиотек. Вторая строка определяет обьект Screen (обозначили его с помощью переменной wn), далее установили размер экрана (по горизонтали 1000 пихелей, по вертикали 700 пихелей) , ввели изображение фона-улицы, а затем добавили спрайт-изображение памкина в окно экрана: файл man.gif. Затем определили обьект с именем man: (man=turtle.Turtle('man.gif')). Теперь можем применять к введенному обьекту man все команды библиотеки графической библиотеки turtle. Запустив программу, вы увидите как наш обьект-изображение скользит по экрану.

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

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

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

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

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

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

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

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

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