Kornjaina grafika Crtanje u Pythonu Modul turtle Modul














- Slides: 14

Kornjačina grafika Crtanje u Python-u

Modul turtle • Modul koji nam u Python-u omogućava crtanje je turtle. • Prilikom crtanja u Python-u otvara se, grafički prozor na kojem se odvija crtanje. • U središnjem dijelu grafičkog prozora nalazi se strelica, koju ćemo zvati još i olovka za crtanje odnosno kornjača. • Crtanje se svodi na to da se olovka kreće te ostavlja trag na grafičkom ekranu. • Grafički prozor je veličine 600 x 600 px

Osnovni koraci • Za korištenje kornjače potrebna je biblioteka turtle zato na početku svakog programa moramo navesti import turtle

Funkcije za crtanje Funkcija Opis djelovanja forward(n), skraćeno fd(n) Kornjača se kreće naprijed n koraka backward(n) ili bk(n) Kornjača se kreće unazad n koraka right(n) ili rt(n) Okreće se za ne stepeni udesno left(n) ili lt(n) Okreće se za n stepeni ulijevo

Zadatak: Kvadrat • Napravite program koji će crtati kvadrat stranica dužine 50 piksela(linijski algoritam). import turtle as t t. fd(50) t. lt(90)

Primjer: Programiranje Programiranje. . . Programiranje nije nije dosadno dosadno i i i tesko tesko nije dosadno i tesko

Naredba za ponavljanje • for. . . in. . . range naredba za ponavljanje određenog dijela programa za dati broj puta. . . for i in range(n): blok_naredbi for i in range(10): print("Programiranje nije dosadno i tesko")

Zadatak: Kvadrat • Prepravite program kvadrat na način da se kvadrat crta pomoću ponavljanja (for petlja). import turtle as t for i in range(4): t. fd(100) t. lt(90)

Zadatak: Cvijet • Napraviti program koji crta lik na slici. Svaki put kad nacrtaš kvadrat treba se pomaknuti za ugao 360/18 i to ponoviti 18 puta. import turtle as t for j in range(18): for i in range(4): t. fd(100) t. lt(90) t. lt(360/18)

Domaći 1 (za prvu nedelju) • Nacrtati jednakostranični trougao stranice 100 pomoću for petlje. • Nacrtati cvijet koristeći jednakostranični trougao (sa dvije for petlje)

Crtanje u bojama Funkcija Opis djelovanja pencolor(boja) Boja se definiše navođenjem engleskog imena boje unutar navodnika, na pr: pencolor(“red“) ili kao šestocifreni RGB (red green blue) broj sa znakom # ispred. Na primjer: pencolor(“#ff 0000“) fillcolor(boja) Boja kojom je ispunjena figura begin_fill() Naglašavamo da će se područje koje nacrtamo nakon ove naredbe ispuniti bojom zadatom naredbom fillcolor(boja) end_fill() Prekidamo ispunjavanje figure bojom pensize(d), width(d) Debljina linije

Primjer • Napišimo program koji će crtati • kvadrat stranice dužine 100 • čije će ivice biti crvene boje, • a unutrašnjost plave boje. import turtle as t t. pencolor("red") t. width(5) t. fillcolor("blue") t. begin_fill() for i in range(4): t. fd(100) t. lt(90) t. end_fill()

Domaći rad 2 (za drugu nedelju) Nacrtaj jedrilicu kao na slici.

Zadatak: Kućice • Nacrtaj i oboji kućice kao na slici