4.1. Наредбе корњаче¶
Како ово ради?¶
Можемо веома лепо да цртамо куцањем наредби уз помоћ корњача графикe. Ту се мала корњача креће по екрану и за собом као траг оставља линију у боји. Заправо, корњача је један од ликова које можемо упослити да цртају (ако не изаберемо лик, програм ће цртати помоћу стрелице).
За разлику од робота Карела, који ради само на порталу Петља и којег смо испрограмирали специјално за вас, корњача графика је саставни део језика Python и програме са корњачом можете писати и на свом рачунару, ван портала Петља (на пример, у програму IDLE). Потребно је само да на свом рачунару инсталирате Пајтон 3, чију инсталацију можете преузети са сајта Python.org. Када сте инсталирали Python, покрените IDLE и идите на File, а затим на New file. На овом месту куцате свој програм. Када сте завршили, покрените га на Run, а затим кликните на Run Мodule. Дајте име вашем програму и сачувајте га, а затим гледајте како црта!
Наредбе корњаче¶
Да бисмо у нашим програмима могли да цртамо уз помоћ корњаче, потребно је
да прво укључимо библиотеку за рад са корњачом (то се ради тако што наведемо import turtle
).
Након тога можемо издавати наредбе нашој корњачи. Свака наредба ће почињати са turtle.???
.
Основне наредбе корњачи приказаћемо кроз неколико једноставних програма.
Цртање линије¶
Корњача се на почетку налази у центру екрана и окренута је надесно (у смеру истока).
Наредбом
turtle.forward(100)
корњачи говоримо да се помери напред (у смеру у ком је тренутно окренута) 100 корака и тако, пошто наша корњача свакако са собом носи оловку којом црта, постижемо да се на екрану нацрта дуж дужине 100 пиксела.
Да бисмо видели јасније како корњача ради, можемо јој променити брзину кретања.
turtle.speed(0)
нам даје најбржу корњачу (након покретања програма се одмах види готов цртеж), докturtle.speed(1)
даје најспорију корњачу (могуће је навести и било коју целобројну вредност између 0 и 10). Што је број већи, корњача ће бити бржа (осим за случај са 0, који одмах црта готов цртеж).
Осим померања напред, корњача може да се креће и уназад цртајући притом линију. Наредба којом се то постиже је
turtle.backward
.
Боја и дебљина линије¶
Могуће је поставити различите параметре који одређују начин на који се врши исцртавање.
Да бисмо видели нашу корњачу (уместо стрелице која се приказује), можемо употребити наредбу
turtle.shape("turtle")
.Помоћу
turtle.color
можемо променити боју корњаче и њене оловке (и тако променити и боју трага, тј. линија које се исцртавају). Као параметар ове наредбе у заградама под наводницима наводимо име жељене боје на енглеском језику. На пример, наредбаturtle.color("red")
поставља црвену боју.Помоћу
turtle.width
постављамо дебљину трага који корњача оставља, при чему се дебљина задаје као параметар. На пример, наредбомturtle.width(5)
постижемо да линије које се цртају буду дебеле 5 пиксела.
Да ли можеш да погодиш шта ће се добити покретањем наредног програма? Пробај да погодиш, а онда након тога покрени програм и провери да ли си био у праву.
Подизање оловке¶
Корњача током свог кретања оставља траг. Међутим, некада је згодно да корњачу померимо без цртањa.
Наредбом
turtle.penup()
корњача подиже своју оловку и након тога се креће по екрану не остављајући траг све док јој се не изда наредбаturtle.pendown()
, након чега поново почиње да оставља траг током кретања.
Допуни наредни програм тако да корњача нацрта испрекидану линију која се састоји од три дужи.
Отисци корњаче¶
Наредбом
turtle.stamp()
корњача може да остави свој отисак на месту на ком се тренутно налази.
Покушај да погодиш који ће се облик добити покретањем наредног програма.
Окретање корњаче¶
Корњача може мењати свој смер кретања тако што се окреће налево (у смеру супротном смеру кретања казаљке на сату) или надесно (у смеру кретања казаљке на сату) за одређени број степени, за шта се користе наредбе
turtle.left(n)
иturtle.right(n)
, a n je број степени.
Покушај да погодиш који ће се облик добити покретањем наредног програма.
Резимирајмо све наредбе корњачи које смо до сада поменули.
|
корњача се помера напред за n корака, где је n неки цео број |
|
корњача се помера назад за n корака, где је n неки цео број |
|
корњача се окреће налево за n степени, где је n неки цео број |
|
корњача се окреће надесно за n степени, где је n неки цео број |
|
корњача подиже оловку |
|
корњача спушта оловку |
|
боја оловке се поставља на боју |
|
дебљина оловке у тачкицама (пикселима) се поставља на вредност n, где је n неки цео број |
|
корњача оставља свој отисак |
|
корњача мења свој облик (нпр. уместо |
|
корњача мења своју брзину кретања од 1 (најспорије) до 10 (најбрже). Ако брзина има вредност 0, корњача тренутно црта линију без анимације. |
Комплетан списак свих наредби корњачи може се наћи у званичној документацији језика Python 3.
Скраћени запис¶
Наредбе могу да се запишу и краће.
Ако се уместо import turtle
библиотека за рад са корњачом увезе
помоћу import turtle as t
, тада уместо turtle.???
, можемо писати само t.???
.
На пример, уместо turtle.color("red")
, можемо писати само
t.color("red")
.
Додатно, неке наредбе имају скраћени облик. На
пример, померање напред n пиксела можемо постићи помоћу
t.fd(n)
, померање назад помоћу t.bk()
, окрет налево за n
степени помоћу t.lt(n)
, надесно помоћу t.rt(n)
и слично. Скраћени облици наредби
су увек на располагању, без обзира како смо библиотеку за рад са корњачом увезли.
На пример, цртеж можемо нацртати и на следећи начин: