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

Интересным применением базовых примитивов черепашьей графики является пример случайных блужданий (перемещений) частиц при условии, что направление движение каждой частицы на каждом последующем шаге случайно, не зависит от предыдущего, является случайным с равномерной функцией распределения в угловом интервале (0-360 градусов). Случайное блуждание частиц ограничено кругом с заданным радиусом. Если частица приближается к границе круга программа перебрасывает ее в точку с координатами (0,0), откуда она вновь начинает хаотическое движение. Соответствующая программа показана в таблице 12. В правой части таблицы показано два статических кадра анимации.Программа работает следующим образом. Черепаший обьект Circle (строка #1) обозначает область в которой флуктуируют частицы. Каждая из 100-а частиц определяется обьектом t[i](i=0,1,2,3…99) и задана в виде круга (строка #2), окрашенного своим цветом (строка #3 ). Бесконечный цикл, в котором задается хаотическое движение частиц, введен в программу последними 7-ю строками.

Движение автомобиля

Таблица 13

Следующий пример,который мы рассмотрим, использует два разных базовых примитива для создания анимации: квадрат и круг. Используя эти примитивы, построрим движущийся автомобиль. Для построения испульзуем два базовых примитива: квадрат и круг. В таблице 13 показан соответствующий код. Рассмотрим структуру программы. Строка, обозначенная индексом #1, определяет пустой лист базовых примитивов. Строка #2 задает форму четырех примитивов: 2 квадрата и два круга. Строка #3 задает массив, определяющий цвета примитивов. Цикл заполняет пустой лист примитивами, причем строка #6 t[i].shapesize(dx[i],dy[i]) (i=0,3) преобразуют квадраты в прямоугольники, i=1 и i=2 соответствуют кругам с удвоенным размером посравнению с исходным размером. Цикл while True с кодами внутри бесконечного цикла определяют дбижение автомобиля вдоль горизонта. Несколько статических кадров анимации показаны в правой части таблицы 13.

Прыгающий клоун

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

primitive – параметр в виде строки, который может принимать названия основных базовых форм черепашьей графики(черепашка, квадрат, круг, треугольник);

w, h – ширина и высота обьекта. Если величины w и h отличаются друг от друга, квадрат превращается в прямоугольник, круг – в овал, равносторонний треугольник – в равнобедренный, черепачка- растягивается вдоль горизонтальной и вертикальной осей;

параметр clr определяет цвет обьекта;

x,y – координаты, определяющие положение обьекта на координатной плоскости.

Таблица 14

Строки, расположенные между цифрами 2 и 3 конкретизируют все параметры обьектов для создания нашего клоуна. Обьектами со цвоими цветами и положением на плоскости являются, как было сказано выше, квадрат, круг и треугольник.Строки программы между цифрами 3 и 4 задают анимацию собранного клоуна: клоун мигает глазами, его шляпа подпрыгивает, он разводит руки. Все движения периодически повторяются, создавая анимационный эффект.

<p>Анимация изображений, построенных из полигонов</p>

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

Анимация прямоугольника

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

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

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

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

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

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

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

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

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