Урок 12 Поняття про модуль. Створення графічних примітивів.

Пригадати (переглянути) ст. 2-11

Прочитати :

Домашнє завдання:

Цілі:

 навчальна: ознайомити з апаратним й програмним забезпеченням,

необхідним для створення й компіляції кодів програм;

 розвивальна: розвивати дослідницькі навички, інформаційну культуру

учнів;

 виховна: виховувати уважність та відповідальність, бажання мати глибокі

та якісні знання.

Тип уроку: Комбінований.

Обладнання та наочність: дошка, комп’ютери з підключенням до мережі

Інтернет, підручник, навчальна презентація.

Програмне забезпечення: браузер, пакет офісних програм, середовище

програмування Python 3.


Структура уроку


I. Організаційний момент.

• привітання

• перевірка присутніх

• перевірка готовності учнів до уроку

• перевірка самопочуття учнів.


II. Актуалізація опорних знань

Згадаємо модуль tkinter призначений для графічних побудов та створення графічного

інтерфейсу користувача. 

from tkinter import *

tk = Tk()


3. Мотивація навчальної діяльності.

Малювання у Python – це, мабуть, найцікавіша частина у всьому курсі програмування.

Отже, і ми попрактикуємося над створенням графічних примітивів, які є складовою

частиною векторної графіки.

4. Сприйняття та усвідомлення нового матеріалу

Але почнемо ми із розміщення полотна. Полотно для малювання – частина вікна (або

все вікно) у якій може бути здійснене малювання об’єктів.

Для створення полотна існує функція Canvas() і застосовується вона таким чином:


назва_полотна= Canvas(назва_вікна, атрибут 1,…)


для полотна можна застосувати наступні атрибути:


width=число_у_пікселях – ширина полотна;

height= число_у_пікселях – висота полотна;

bg= «колір» - колір фону

Також нам потрібно обов’язково розмістити наше полотно у вікні за допомогою

методу place().

Графічні примітиви

До графічних примітивів у Python відносяться лінія, прямокутник, еліпс та

многокутник.

Завдання 1:

Для їх побудови створимо вікно розмірами 500х500 та полотно світло-блакитного

кольору з такими ж розмірами.

При побудові кожного об’єкту ми повинні перед собою малювати уявні координатні

промені. Від верхнього лівого краю буде починатися відлік по координатним

променям х та у. Значення х та у вимірюється у пікселях.

from tkinter import*

Window=Tk()

Window.geometry("500x500")

canv=Canvas(Window, width=500, height=500, bg="light blue")

canv.place(x=0, y=0)

Window.mainloop()


Осі координат розміщені не так, як ви звикли їх бачити.


Отже, існують наступні 4 функції для зображення основних графічних примітивів:

create_line() – для побудови лінії;

create_rectangle() - для побудови прямокутника;

create_oval() - для побудови еліпса;

create__polygon() - для побудови довільного

многокутника;


Лінія

Функція create_line() застосовується наступним чином:


х1 та у1 – координати початкової точки;

х2 та у2 – координати кінцевої точки.

Координати точок записуються у квадратних дужках через кому.

Координати початку та кінця лінії повинні знаходитися у межах полотна, щоб вона

відображалася.

Лінії притаманні такі атрибути:

 fill= «колір» - колір лінії;

 width=число_у_пікселях – товщина лінії;

Завдання 2:

До прикладу побудуємо лінію зеленого кольору у нашому полотні із товщиною 3

пікселя, початок буде в точці [100,100], а кінець в точці [200,200]:

from tkinter import*

window=Tk()

window.geometry(“500x500”)

canv=Canvas(window, width=500, height=500, bg= “light blue”)

canv.create_line([100,100],[200,200], width=3, fill= “green”)

window.mainloop()

Прямокутник

Побудова прямокутника, як і лінії буде відбуватися лише за двома точками, а саме за

координатами точки верхнього лівого кута та точки нижнього правого кута за

допомогою функції create_rectangle():

назва_полотна. create_rectangle([x1,y1],[x2,y2],

аргумент1…)

х1 та у1 – координати точки верхнього лівого кута;

х2 та у2 – координати точки правого нижнього кута.

Прямокутник має такі атрибути:

 fill= «колір» - колір фону об’єкта;

 outline= «колір» - колір контуру;

 width=число_у_пікселях – товщина контуру;

Отже, добудуємо до нашого малюнка прямокутник, а саме квадрат із координатами

[200,200], [400,400] зеленого кольору із товщиною контуру 3 пікселі:

Завдання 3:

from tkinter import*

window=Tk()


window.geometry(“500x500”)

canv=Canvas(window, width=500, height=500, bg= “light blue”)

canv.place(x=0, y=0)

canv.create_line([100,100],[200,200], width=3, fill= “green”)

canv.create_rectangle([200,200], [400,400], width=3, fill= “green”))

window.mainloop()

Еліпс

З еліпсом складніше, адже при створенні еліпсу потрібно вказувати координати

уявного прямокутника описаного навколо нього:

назва_полотна. create_oval([х1,у1], [х2,у2], аргумент1….)

х1 та у1 – координати точки верхнього лівого кута уявного прямокутника;

х2 та у2 – координати точки правого нижнього кута уявного прямокутника.

Для еліпса притаманні такі ж атрибути, як і до прямокутника: колір фону, товщина та

колір контуру.

Завдання 4: Побудуємо еліпс із такими ж координатами як і квадрат. Встановимо

жовтий колір фону та приберемо контур:

from tkinter import*

window=Tk()

window.geometry(“500x500”)

canv=Canvas(window, width=500, height=500, bg= “light blue”)

canv.place(x=0, y=0)

canv.create_line([100,100],[200,200], width=3, fill= “green”)

canv.create_rectangle([200,200], [400,400], width=3, fill= “green”))

canv.create_oval([200,200], [400,400], width=0, fill= “yellow”))

window.mainloop()

Довільний многокутник

Можна будувати довільну фігуру, яка складається із 3-х та більше вершин:

Назва_полотна.create_polygon([x1,y1]… [xn,yn], аргумент1…)

х1 та y1– координати першої вершини многокутника;

x2 та у2 – координати другої вершини многокутника;

xn та уn – координати n-ї вершини многокутника;

Для довільного многокутника притаманні такі атрибути:

 fill= «колір» - колір фону об’єкта;

 outline= «колір» - колір контуру;

 width=число_у_пікселях – товщина контуру;


 smooth=True/False – згладжування контурів.

Завдання 5:

Побудуємо трикутник по контуру вже сформованої фігури:

from tkinter import*

window=Tk()

window.geometry(“500x500”)

canv=Canvas(window, width=500, height=500, bg= “light blue”)

canv.place(x=0, y=0)

canv.create_line([100,100],[200,200], width=3, fill= “green”)

canv.create_rectangle([200,200], [400,400], width=3, fill= “green”))

canv.create_oval([200,200], [400,400], width=0, fill= “yellow”))

canv.create_polygon([100,90], [200,190], [400,190], smooth=False)

window.mainloop()


! Цікавою можливістю є обирання кольору із палітри:

c=colorchooser.askcolor()

canvas.create_rectangle(10, 10, 350, 50, fill=c[1])


5. Творчі вправи.

Спробуйте самостійно побудувати довільний

малюнок із основних графічних примітивів.

6. Підсумки уроку.

Дописати пропущенні символи

from tkin___ import___

window=__k()

_____________.______________(“500x500”)

canv=__anvas(_________, width=500,

_______=500, bg= “light blue”)

canv.________(x=0, y=0)

canv.create________([100,100],[200,200],

width=3, fill= “green”)

____.create_rectangle([200,200], [400,400],

width=3, fill= “green”))

canv.________oval([200,200], [400,400],

width=0, fill= “yellow”))

canv.create__________([100,90], [200,190],

[400,190], smooth=False)


_____________.mainloop()


7. Домашнє завдання.


Опрацювати конспект, вивчити основні поняття, приготуватись до

самостійної роботи.