На цьому уроці знайомимося з модулем Turtle у Python Рисунки, створені програмою – це не тільки можливо, але й цікавезно! Такою черепашкою Turtle можна малювати власні неповторні картини та чудові візерунки. Пориньмо у сучасне мистецтво й створімо власні шедеври!
Модуль Turtle у Python Рисунки, створені програмою
Запускаємо першу черепашку Turtle жити у свою Python програму і вчимо її створювати прості рисунки
Для того, щоб програми малювання працювали завжди повинні бути ці два рядки (один на початку програми), а інший в самому кінці
from turtle import *
....
exitonclick()
Перший рядок підключає бібліотеку малювання. Другий буде малювати, поки не клацають на мишку.
Ось основні команди малювання:
forward (distance) Проповзти вперед на distance пікселів;
backward (distance) Проповзти назад на distance пікселів;
right (angle) Повернутися направо на angle градусів;
left (angle) Повернутися наліво на angle градусів;
Кути обчислюються в градусах. Ось це коло допоможе з цим розібратися у поворотах. В центрі кола стоїть наша пайтон-черепашка. Щоб їй повернутися в інший бік – треба прописати поворот на 180 градусів (не важливо вправо чи вліво).
А щоб піти вгору – повертаємо вліво на 90 градусів, або вправо на 270 (другий варіант складніший)
Вниз – повертаємося вправо на 90 або вліво на 270.
1: Почнемо малювання з блискавки. :
from turtle import *
left(45)
forward(100)
left(45)
back(100)
right(45)
forward(100)
exitonclick()
2: Спробуйте намалювати квадрат
3: А тепер прямокутник.
Курсор
Щоб курсор виглядав веселіше, можна зробити його у вигляді черепашки Для цього відразу після підключення бібліотеки треба написати:
shape ("turtle")
Ще курсори можуть бути: “arrow”, “turtle”, “circle”, “square”, “triangle”, “classic”. Можете вибрати той, який подобається
4: Змініть вигляд курсора на той, який більше до душі
Кольори, заливка та інші рюші
width (3) - товщина лінії 3 пікселя.
Пікселі – це точки (квадратики), з яких складається зображення. Кожне растрове зображення, якщо його дуже-дуже сильно наблизити буде складатися з квадратиків-пікселів.
Наприклад:
Колір малювання
Задати колір лінії можна командою color, в дужках вказується назва кольору англійською.
color('red')
color("blue")
Важливо! Назва кольору ОБОВ’ЯЗКОВО пишеться в одинарних або подвійних лапках.
5: Додайте кольорів вашим рисункам
Зупинка і старт малювання
Якщо ми хочемо перейти в якусь точку і не залишити за собою сліду, тобто не малювати, треба підняти черепашку командою up (), перейти в потрібну точку і потім опустити черепашку down ().
6: Що намалює черепашка, якщо запустити цей код?
Зображення кола
circle (50) – малює коло радіусом 50 пікселів, яке повністю знаходиться зліва від черепашки.
7: Змініть програму так, щоб вийшла вісімка, як на малюнку
Цикли для черепашки
8: Можна використовувати цикли для того, щоб черепашка повторила свій малюнок. Спробуйте запустити у себе.
from turtle import *
shape("turtle")
i=0
while i<12:
forward(50)
left(90)
forward(50)
left(90)
forward(50)
left(90)
forward(50)
left(90)
left(30)
i=i+1
exitonclick()
9: Поекспериментуйте з попередньою програмою. Трохи змініть цикл на свій смак.
Черепашки та сучасне мистецтво
10: Намалюй картину у стилі сучасного мистецтва. Ось тобі кілька прикладів картин для натхнення (але ви можете придумати свій варіант):
Основні команди модуля Turtle у Python
Рисунки черепашкою “like a PRO”
Повзаємо
forward (distance) Проповзти вперед на distance пікселів;
backward (distance) Проповзти назад на distance пікселів;
right (angle) Повернутися наліво на angle градусів;
left (angle) Повернутися направо на angle градусів;
goto (x, y) Перемістити черепашку в точку з координатами (x, y);
setx (x) Встановити x координату черепашки;
sety (y) Встановити y координату черепашки;
setheading (to_angle) Повернути черепашку під кутом to_angle до вертикалі (0 – наверх, 90 – направо);
home () Повернути черепашку додому – в точку, з координатами (0,0);
circle (radius) Намалювати коло радіуса | r |, центр якої знаходиться зліва від черепашки, якщо r> 0 і справа, якщо r <1;
dot (size, color) Намалювати точку діаметра size кольору color. Параметр color необов’язковий;
undo () Відкотити попередні дії черепашки;
speed (speed) Встановити швидкість черепашки. speed має бути від 1 (повільно) до 10 (швидко), або 0 (миттєво);
Малюємо
pendown () Опустити перо;
penup () Підняти перо;
pensize (width) Встановити діаметр пера в width;
pencolor (colorstring) Встановити колір лінії, яка малює черепашка (наприклад, ‘brown’ або ‘# 32c18f’);
fillcolor (colorstring) Встановити колір заповнення;
begin_fill () Почати стежити за черепашкою для заповнення області;
end_fill () Заповнити кольором fillcolor область, пройдену черепашкою починаючи з begin_fill ();
showturtle () Показати черепашку;
hideturtle () Сховати черепашку;
write (text) Вивести текст text;
Дізнатися про черепашку
position () Отримати поточні координати черепашки;
towards (x, y) Отримати кут між поточним напрямком черепашки й точкою (x, y);
xcor () Отримати x координату черепашки;
ycor () Отримати y координату черепашки;
heading () Отримати поточний кут до вертикалі;
distance (x, y) Отримати відстань до точки (x, y);
isdown () Дізнатися, чи малює зараз черепашка;
isvisible () Дізнатися, видима чи зараз черепашка;
Додаткові завдання на тему Turtle у Python Рисунки
1: Відгадайте 1-2 загадки (нижче) про країну і намалюйте прапори країн, які ви відгадали. Нище приклад, який допоможе у завданні з прапорами
color("black")
fillcolor("blue")
begin_fill()
forward(20)
left(90)
forward(50)
left(90)
forward(20)
left(90)
forward(50)
left(90)
end_fill()
up()
back(20)
down()
fillcolor("yellow")
begin_fill()
forward(20)
left(90)
forward(50)
left(90)
forward(20)
left(90)
forward(50)
end_fill()
exitonclick()
🌎 Якщо між двома однаковими займенниками поставити маленького коника, то отримаємо цю країну.
🌎 “Крізь чорне минуле, кривавим теперішнім до золотого майбутнього.” Цей слоган – ключ до кольорів прапору
🌎 Країна – батьківщина нотного письма. Тут воно виникло у 11 ст. завдяки Гвідо д’Ареццо, який дав назви семи нотам гармонії. Це дозволило увіковічувати твори композиторів всього світу. У 16 ст. саме тут виникла опера. Найкращими оперними театрами світу й нині вважаються “Ла Скала”, “Сан Карла”, “Феніче”. Країна є світовим центром моди.
🌎 Країна є найбільш гористою країною серед європейських держав. Апельсин в країні – символ любові. Тут з розмахом відзначають як стандартні для європейських країн свята, так і абсолютно незвичайні і унікальні події. Чого тільки варта знаменита Томатіна, або битва томатами. Футбол тут найпоширеніший вид спорту, в нього грають майже всі, а хто не грає, той є лютим вболівальником.
🌎”Кремнієва долина” Європи. Країна має розвинуту економіку, орієнтовану на послуги й високі технології. Саме в цій країні був спроєктований сумнозвісний круїзний лайнер “Титанік”. У багатьох мешканців країни руде волосся, на думку вчених, рудий колір – реакція на брак сонячного світла.
2: Намалюйте візерунок з 15 кіл, використовуючи цикл. Щоб розрахувати, на який кут треба повернутись, щоб всі кола вмістилися, треба: 360 : 15 – те, що вийде – потрібний кут.
3: Намалюйте схожий візерунок, але з 20 кіл
4: Додайте своїй програмі різних кольорів. Для того, щоб програма малювала коло випадковим кольором, на початку програми підключіть бібліотеку випадкових чисел:
from random import randint
також задайте тип кольору перед циклом:
colormode(255)
А в середині циклу додайте команду, яка і буде створювати випадковий колір:
color(randint(0, 255),
randint(0, 255),
randint(0, 255))
5: Намалюйте щось на свій смак.
Домашнє завдання
1: Намалюйте три квадрати різних розмірів: найменший синього кольору, середній – зеленого, і найбільший – червоного
2: Намалюйте 2 прапори: України та будь-якої іншої країни на твій вибір. Нище приклад, який допоможе у завданні з прапорами (малює прямокутник, який заповнений кольором)
from turtle import *
color("violet")
fillcolor("violet")
begin_fill()
forward(150)
left(90)
forward(50)
left(90)
forward(150)
left(90)
forward(50)
left(90)
end_fill()
exitonclick()
3: Намалюйте якусь кольорову картинку (будиночок або дерево або смайлик або комп’ютер або візерунок або ракету або кораблик або щось на твій смак…). Тему картинки оберіть самостійно
Level UP!
1: Намалюйте 6-тикутник, 12-тикутник. Всі грані повинні бути різних кольорів.
Підказка : для 6-тикутника треба повернутись на 60 градусів. А для 12-тикутника – на 30
(В 4-му додатковому прикладі можна підгледіти використання випадкових кольорів., якщо не хочете писати кожен колір)
2: Знайди та виправ помилки в коді
а)Програміст написав програму для малювання квадрата. Допоможи йому виправити помилки
from turtle import *
shape("turtle")
def sq():
down()
forward(50)
left(90)
forward(50)
left(90)
forward(50)
up()
sq()
done()
exitonclick()
б) Програміст хотів написати програму для малювання 8 кіл в рядок, але у нього вийшло тільки одне. Допоможи знайти та виправити помилку:
from turtle import *
speed(2)
i=0
while i<9:
down()
circle(20)
up()
i=i+1
forward(40)
exitonclick()
в) Програміст хотів написати програму для малювання візерунка. Як повинен виглядати візерунок він пояснити вам не зміг, але просить допомогти зрозуміти, чому програма не працює:
from turtle import *
speed(100)
i=0
while i<60
forward(5)
circle(120)
right(6)
i=i+1
done()
Все! Більше інформації про модуль turtle у Python рисунки тут.
Не зупиняйтесь у вивченні Python! До зустрічі на наступних уроках!