Search Header Logo
Python - Grafica con Turtle

Python - Grafica con Turtle

Assessment

Presentation

Computers

11th Grade

Practice Problem

Hard

Created by

Lucia Intelisano

FREE Resource

14 Slides • 0 Questions

1

Grafica con Turtle in Python

2

I comandi di base del pacchetto Turtle Graphics

Per creare un disegno, per prima cosa si importa nel programma il pacchetto dedicato alla Turtle Graphics:

import turtle

La tartaruga trasporta una penna che può essere sollevata oppure abbassata: quando la penna è abbassata la tartaruga disegna sullo schermo mentre si muove.

Inizialmente la penna è sollevata, quindi, per iniziare a disegnare, bisogna abbassarla: turtle.pendown()

3

I comandi di base del pacchetto Turtle Graphics

La tartaruga parte dal centro della finestra grafica, rivolta verso est (cioè verso destra), e può essere spostata in avanti (forward) o all’indietro (backward) rispetto alla posizione che occupa.

Ecco come spostare la tartaruga in avanti di 100 pixel: turtle.forward(100)

Questo spostamento disegna un segmento orizzontale lungo 100 pixel.

4

I comandi di base del pacchetto Turtle Graphics

La tartaruga si sposta sempre nella direzione verso cui è rivolta. Per modificarla, si può ruotare la tartaruga verso sinistra (cioè in senso antiorario) o verso destra (in senso orario), specificando l’angolo di rotazione, in gradi.

Ora ruotiamo la tartaruga di 90 gradi verso destra, in modo che sia diretta verso il basso, dopodiché tracciamo un segmento verticale a partire dalla sua posizione attuale (che è identificata dalla freccia): turtle.right(90)

turtle.forward(100)

5

I comandi di base del pacchetto Turtle Graphics

Dando gli stessi comandi altre due volte, otteniamo un quadrato completo:

turtle.right(90)

turtle.forward(100)

turtle.right(90)

turtle.forward(100)

6

I comandi di base del pacchetto Turtle Graphics

Terminato il disegno, il programma deve essere sospeso, in attesa che l’utente vi ponga termine (azione che si può ottenere, ad esempio, usando la funzione input e ignorando il dato introdotto dall’utente):

response = input(“Press ENTER to quit.”)

Se vi dimenticate di scrivere nel programma questa azione di attesa, il programma terminerà immediatamente dopo aver disegnato e il disegno scomparirà.

7

Caratteristiche della penna

Il colore e la dimensione della penna posso essere modificati. Per cambiare il colore della penna si può invocare una di queste due funzioni: turtle.color(nomeDiUnColore)

turtle.color(rosso, verde, blu)

Vedi il programma completo

https://codehs.com/sandbox/id/python-graphics-tkinter-6vAUhI

8

Altri comandi

Ad esempio, per portare la tartaruga in un punto di coordinate (x, y), indipendentemente dalla posizione e dalla direzione attuale della tartaruga stessa, si usa il comando:

turtle.goto(x, y)

Il comando seguente porta la tartaruga nell’origine delle coordinate (“a casa”, home):

turtle.home()

9

Altri comandi

Per cancellare completamente il contenuto della fi nestra grafi ca, si può usare uno di questi due comandi:

turtle.clear()

turtle.reset()

10

Uso di funzioni

Se volete generare un disegno contenente più forme tra loro correlate,

è decisamente utile progettare una funzione per ciascun tipo di forma.

Ad esempio, questa funzione disegna un quadrato e riporta la tartaruga al suo stato originale (posizione e orientazione):

def square(width) :

turtle.pendown()

turtle.forward(width)

turtle.right(90)

turtle.forward(width)

11

Uso di funzioni

A questo punto è semplice disegnare un numero di quadrati qualsiasi:

for i in range(0, 10) :

square(20)

turtle.forward(30)

12

Uso di funzioni

Una più semplice implementazione della funzione square si ottiene ripetendo per quattro volte le azioni di disegno e di rotazione:

def square(width) :

turtle.pendown()

for i in range(0, 4) :

turtle.forward(width)

turtle.right(90)

turtle.penup()

13

Uso di funzioni

Questa nuova versione della funzione è facilmente generalizzabile per disegnare pentagoni, esagoni e così via:

def regularPolygon(n, width) :

turtle.pendown()

for i in range(0, n) :

turtle.forward(width)

turtle.right(360 / n)

turtle.penup()

14

Uso di funzioni

Vediamo un esempio con alcuni poligoni:

for n in range(3, 10) :

regularPolygon(n, 20)

turtle.forward(60)

Grafica con Turtle in Python

Show answer

Auto Play

Slide 1 / 14

SLIDE