MyBooks.club
Все категории

Python для детей. Анимация с черепашьей графикой - Виктор Рабинович

На сайте mybooks.club вы можете бесплатно читать книги онлайн без регистрации, включая Python для детей. Анимация с черепашьей графикой - Виктор Рабинович. Жанр: Прочая детская литература / Программирование . Доступна полная версия книги с кратким содержанием для предварительного ознакомления, аннотацией (предисловием), рецензиями от других читателей и их экспертным мнением.
Кроме того, на сайте mybooks.club вы найдете множество новинок, которые стоит прочитать.

Название:
Python для детей. Анимация с черепашьей графикой
Дата добавления:
2 октябрь 2022
Количество просмотров:
44
Читать онлайн
Python для детей. Анимация с черепашьей графикой - Виктор Рабинович

Python для детей. Анимация с черепашьей графикой - Виктор Рабинович краткое содержание

Python для детей. Анимация с черепашьей графикой - Виктор Рабинович - описание и краткое содержание, автор Виктор Рабинович, читайте бесплатно онлайн на сайте электронной библиотеки mybooks.club

В нашей книге, написанной для обучения детей 12+ анимационной технике с использованием современного языка программирования Python, мы используем простейшую графическую библиотеку языка: черепашью графику(Turtle library). Считается, что библиотека Turtle предназначена в основном для рисования геометрических фигур и анимаций с использованием стандартных, встроенных в библиотеку изображений таких как квадрат, круг, черепашка, стрелка (назовем эти изображения базовыми примитивами). Однако это не так. Простая и понятная для детей библиотека Turtle имеет в своем составе команды, позволяющие детям создавать отличные анимационные проекты, наподобие тем, которые создаются с помошью блочного языка программирования Scratch, широко распространенного в настоящее время для обучения детей. Мы научимся добывать из интернета нужные нам для проекта изображения, научимся вводить их в программу и контролировать движения этих изображений с помощью команд библиотеки.

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

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

Несколько существенных замечаний, касающихся указанной выше программы:

Файлы изображений должны располагаться в той же директории (folder), что и основной script(код) программы.

Сами изображения должны быть расположены на прозрачном фоне, иначе фон изображения наложится на основной фон экрана и исказит его.

Для того, чтобы обеспечить все приведенные требования к правильной настройке изображения, воспользуемся следующими рецомендациями: находим интересующее нас изображение в интернете, копируем его с помощью команды Ctrl+c, открываем один из редакторов, например, редактор Paint.net (предварительно бесплатно скачав-установив его на свой компьютер) и, используя команду Ctrl+v, получаем выбранное нами изображение на экране редактора. Для того, чтобы изменить размеры изображения нужно использовать опцию Image->Resize для того, чтобы сделать прозрачный фон. Затем следует запомнить полученное изображение в виде файла с расширением gif и поместить его в директорию, где расположен основной файл с кодами языка. Обратите внимание на то чтобы имя файла изображения в директории совпадало с именем файла изображения в коде исполнительного файла. После запуска программы в Python редакторе получаем анимацию-движение, несколько кадров которой показано ниже.

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

Анимация ходьбы с несколькими изображениями

В таблице 22 представлен код, который демонстрирует как памкин переходит дорогу перебирая ногами. Код использует 10 спрайтов-изображений памкина с разным положением ног.

Таблица 22

В приведенной программе 10 изображений человечка-памкина введены в программу 10-ю файлами в виде Python-list (image=[…]) и затем добавлены на экран с использованием команды wn.addshape(image[i]), где i пробегает значения от 0 до 9 включительно. Движение памкина осуществляется с помощью цикла (for m in range(60):). Целое число m1 пробегает только 10 значений ( 0,1,2…9), в то время как величина i изменяется от 0 до 60 включительно. При этом памкин проходит весь путь от левой части экрана до конца правой. Файлы с изображениями памкина, изображение улицы а также файл-программу можно скачать по адресу:

https://github.com/victenna/Pumpkin-man

Eсли вы хотите, чтобы после первого прохода по перекрестку памкин возвращался обратно влево и вновь повторял тот же маршрут и так бесконечное количество раз, программа может быть изменена следующим образом, как показано в таблице 23 (Код показан в левой колонке):

Таблица 23

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

Дальнейшим шагом является код программы (правая колонка в таблице), которая реализует ходьбу памкина слева направо, затем справа налево и опять слева направо и справа налево. Для того, чтобы реализовать этот код пришлось дополнительно ввести в программу 10 изображений памкина зеркально отраженных по сравнению с изображениями левой таблицы. Эти изображения «работают», когда памкин идет справа налево.

Особенности исполнения кодов черепахи при работе с изображениями в библиотеке

turtle

.

Применим к встроенной в библиотеку изображению черепашки команду left(45). При этом голова черепахи повернется на 45 градусов, и последующая за ней команда fd(100) сдвинет черепаху на расстояние 100 пикселей под углом 45 к горизонту. В том случае, когда мы используем в программе изображение, добавленное командой wn.addshape(image), повернуть изображение вокруг своей оси нельзя. Но последующая за командой left(45) команда fd(100) сдвинет изображение на 100 пихелей в направлении под углом 45 градусов к горизонту также как и в случае со стандартным изображением черепахи. Аналогичное правило действует в отношении поворота вправо. На нижнем рисунке видно: слева голова черепашки повернулась при использовании команды left(45), на правом изображении памкин не повернулся на 45 градусов, однако и черепашка и памкин прошли 200 пикселей в направлении под 45 градусов к горизонтали.

Отметим также, что команда 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

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

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


Виктор Рабинович читать все книги автора по порядку

Виктор Рабинович - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки mybooks.club.


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

Отзывы читателей о книге Python для детей. Анимация с черепашьей графикой, автор: Виктор Рабинович. Читайте комментарии и мнения людей о произведении.

Прокомментировать
Подтвердите что вы не робот:*
Подтвердите что вы не робот:*
Все материалы на сайте размещаются его пользователями.
Администратор сайта не несёт ответственности за действия пользователей сайта..
Вы можете направить вашу жалобу на почту librarybook.ru@gmail.com или заполнить форму обратной связи.