#
# 028-python3 + Turtle: disegnare segmenti ed archi di circonferenza raccordati.
#
def SCRIVE(COL, COM): # Inizio definizione funzione SCRIVE() richiedente un parametro contenuto in una variabile-lista
TESTO01.color(COL) # a) Impostare il colore corrente dell'oggetto TESTO01
TESTO = f"MATITA01.color{COL}; {COM}" # b) Definire il contenuto della variabile TESTO
TESTO01.forward(20) # c) Spostare l’oggetto TESTO01 più avanti di 20 punti
TESTO01.left(90) # d) Orientare TESTO01 girata a sinistra di 90 gradi rispetto al valore corrente
TESTO01.forward(10) # e) Spostare l’oggetto TESTO01 più avanti di 10 punti
TESTO01.color("black") # f) Impostare il colore corrente per l'oggetto TESTO01
TESTO01.write(TESTO,0) # g) Scrivere sul piano cartesiano il contenuto della variabile TESTO
TESTO01.penup() # h) Impedire all’oggetto TESTO01 di scrivere
TESTO01.backward(10) # i) Spostare l’oggetto TESTO01 più indietro di 10 punti
TESTO01.pendown() # j) Consentire all’oggetto TESTO01 di scrivere
TESTO01.right(90) # k) Orientare TESTO01 girata a destra di 90 gradi rispetto al valore corrente
import turtle # Importare modulo turtle
TELA01 = turtle.Screen() # Creare una TELA01 su cui disegnare
TELA01.bgcolor("pink") # Impostare il colore dello sfondo (di default è bianco)
TESTO01 = turtle.Turtle() # Creare l’oggetto TESTO01 con cui disegnare
TESTO01.speed(10) # Impostare velocità di esecuzione per TESTO01
TESTO01.pensize(6) # Definire lo spessore della linea TESTO01
TESTO01.penup() # Impedire all’oggetto TESTO01 di scrivere
TESTO01.goto(20,250) # Spostare l’oggetto TESTO01 nel punto avente coordinate X=-320, Y=250
TESTO01.pendown() # Consentire all’oggetto TESTO01 di scrivere
TESTO01.right(90) # Orientare TESTO01 girata a destra di 90 gradi rispetto al valore corrente
MATITA01 = turtle.Turtle() # Crea una "MATITA01" con cui disegnare
MATITA01.speed(1) # Impostrea velocità di esecuzione per MATITA01
MATITA01.pensize(4) # Definire lo spessore della linea tracciata con l'oggetto MATITA01
MATITA01.penup() # Durante gli spostamenti, l'oggetto MATITA01 NON scrive
MATITA01.goto(-300, 50) # Spostare, l’oggetto MATITA01 nel punto corrispondente alle coordinate indicate
MATITA01.pendown() # Durante gli spostamenti, l'oggetto MATITA01 scrive (default)
TESTO01.hideturtle() # Rendere invisibile l'indicatore di direzione di TESTO01
# MATITA01.hideturtle() # Rendere invisibile l'indicatore di direzione di MATITA01
# MATITA01.showturtle() # Rendere visibile l'indicatore di direzione di MATITA01 (default)
MATITA01.circle(50, 90) # Tracciare, con l’oggetto MATITA01, un'arco di circonferenza avente raggio ed ampiezza indicati
COMANDO = "MATITA01.circle(50, 90)" # Assegnare il contenuto della variabile COMANDO
SCRIVE([0, 0, 0], COMANDO) # Chiamare la funzione SCRIVE() previo trasferimento del contenuto delle variabili indicate
COLORE = [0.3, 0.3, 0.3] # Assegnare il contenuto della variabile COLORE
MATITA01.color(COLORE) # Impostare il colore di MATITA01
MATITA01.forward(50) # Tracciare, con l’oggetto MATITA01, una linea di 50 punti
COMANDO = "MATITA01.forward(50)" # Assegnare il contenuto della variabile COMANDO
SCRIVE(COLORE, COMANDO) # Chiamare la funzione SCRIVE() previo trasferimento del contenuto delle variabili indicate
COLORE = [0.7, 0.7, 0.7] # Assegnare il contenuto della variabile COLORE
MATITA01.color(COLORE) # Impostare il colore di MATITA01
MATITA01.circle(-50, 90) # Tracciare, con l’oggetto MATITA01, un'arco di circonferenza avente raggio ed ampiezza indicati
COMANDO = "MATITA01.circle(-50, 90)" # Assegnare il contenuto della variabile COMANDO
SCRIVE(COLORE, COMANDO) # Chiamare la funzione SCRIVE() previo trasferimento del contenuto delle variabili indicate
COLORE = [1, 1, 1] # Assegnare il contenuto della variabile COLORE
MATITA01.color(COLORE) # Definire il colore di MATITA01
MATITA01.forward(50) # Tracciare, con l’oggetto MATITA01, una linea di 50 punti
COMANDO = "MATITA01.forward(50)" # Assegnare il contenuto della variabile COMANDO
SCRIVE(COLORE, COMANDO) # Chiamare la funzione SCRIVE() previo trasferimento del contenuto delle variabili indicate
COLORE = [0.3, 0.3, 0] # Assegnare il contenuto della variabile COLORE
MATITA01.color(COLORE) # Impostare il colore di MATITA01
MATITA01.forward(50) # Tracciare, con l’oggetto MATITA01, una linea di 50 punti
COMANDO = "MATITA01.forward(50)" # Assegnare il contenuto della variabile COMANDO
SCRIVE(COLORE, COMANDO) # Chiamare la funzione SCRIVE() previo trasferimento del contenuto delle variabili indicate
COLORE = [0.7, 0.7, 0] # Assegnare il contenuto della variabile COLORE
MATITA01.color(COLORE) # Impostare il colore di MATITA01
MATITA01.circle(-50, 45) # Tracciare, con l’oggetto MATITA01, un'arco di circonferenza avente raggio ed ampiezza indicati
COMANDO = "MATITA01.circle(-50, 45)" # Assegnare il contenuto della variabile COMANDO
SCRIVE(COLORE, COMANDO) # Chiamare la funzione SCRIVE() previo trasferimento del contenuto delle variabili indicate
COLORE = [1, 1, 0] # Assegnare il contenuto della variabile COLORE
MATITA01.color(COLORE) # Impostare il colore di MATITA01
MATITA01.circle(-100, 90) # Tracciare, con l’oggetto MATITA01, un'arco di circonferenza avente raggio ed ampiezza indicati
COMANDO = "MATITA01.circle(-100, 90)" # Assegnare il contenuto della variabile COMANDO
SCRIVE(COLORE, COMANDO) # Chiamare la funzione SCRIVE() previo trasferimento del contenuto delle variabili indicate
COLORE = [0.3, 0, 0.3] # Assegnare il contenuto della variabile COLORE
MATITA01.color(COLORE) # Impostare il colore di MATITA01
MATITA01.forward(50) # Tracciare, con l’oggetto MATITA01, una linea di 50 punti
COMANDO = "MATITA01.forward(50)" # Assegnare il contenuto della variabile COMANDO
SCRIVE(COLORE, COMANDO) # Chiamare la funzione SCRIVE() previo trasferimento del contenuto delle variabili indicate
COLORE = [0.7, 0, 0.7] # Assegnare il contenuto della variabile COLORE
MATITA01.color(COLORE) # Impostare il colore di MATITA01
MATITA01.forward(50) # Tracciare, con l’oggetto MATITA01, una linea di 50 punti
COMANDO = "MATITA01.forward(50)" # Assegnare il contenuto della variabile COMANDO
SCRIVE(COLORE, COMANDO) # Chiamare la funzione SCRIVE() previo trasferimento del contenuto delle variabili indicate
COLORE = [1, 0, 1] # Assegnare il contenuto della variabile COLORE
MATITA01.color(COLORE) # Impostare il colore di MATITA01
MATITA01.circle(50, 45) # Tracciare, con l’oggetto MATITA01, un'arco di circonferenza avente raggio ed ampiezza indicati
COMANDO = "MATITA01.circle(50, 45)" # Assegnare il contenuto della variabile COMANDO
SCRIVE(COLORE, COMANDO) # Chiamare la funzione SCRIVE() previo trasferimento del contenuto delle variabili indicate
COLORE = [0.3, 0, 0] # Assegnare il contenuto della variabile COLORE
MATITA01.color(COLORE) # Impostare il colore di MATITA01
MATITA01.circle(-50, 45) # Tracciare, con l’oggetto MATITA01, un'arco di circonferenza avente raggio ed ampiezza indicati
COMANDO = "MATITA01.circle(-50, 45)" # Assegnare il contenuto della variabile COMANDO
SCRIVE(COLORE, COMANDO) # Chiamare la funzione SCRIVE() previo trasferimento del contenuto delle variabili indicate
COLORE = [0.7, 0, 0] # Assegnare il contenuto della variabile COLORE
MATITA01.color(COLORE) # Impostare il colore di MATITA01
MATITA01.begin_fill() # Prima istruzione per disegnare una figura piena di colore
MATITA01.circle(50) # Tracciare, con l’oggetto MATITA01, un'arco di circonferenza avente raggio ed ampiezza indicati
COMANDO = "MATITA01.circle(50)" # Assegnare il contenuto della variabile COMANDO
SCRIVE(COLORE, COMANDO) # Chiamare la funzione SCRIVE() previo trasferimento del contenuto delle variabili indicate
COLORE = [1, 1, 0] # Assegnare il contenuto della variabile COLORE
MATITA01.color(COLORE) # Impostare il colore di MATITA01
MATITA01.end_fill() # Ultima istruzione per disegnare una figura piena di colore
COMANDO = "MATITA01.end_fill()" # Assegnare il contenuto della variabile COMANDO
SCRIVE(COLORE, COMANDO) # Chiamare la funzione SCRIVE() previo trasferimento del contenuto delle variabili indicate
COLORE = [0, 0.3, 0.3] # Assegnare il contenuto della variabile COLORE
MATITA01.color(COLORE) # Impostare il colore di MATITA01
MATITA01.circle(-100, 90) # Tracciare, con l’oggetto MATITA01, un'arco di circonferenza avente raggio ed ampiezza indicati
COMANDO = "MATITA01.circle(-100, 90)" # Assegnare il contenuto della variabile COMANDO
SCRIVE(COLORE, COMANDO) # Chiamare la funzione SCRIVE() previo trasferimento del contenuto delle variabili indicate
MATITA01.begin_fill() # Prima istruzione per disegnare una figura piena di colore
COLORE = [1, 0, 0] # Assegnare il contenuto della variabile COLORE
MATITA01.color(COLORE) # Impostare il colore di MATITA01
MATITA01.circle(-100, 45) # Tracciare, con l’oggetto MATITA01, un'arco di circonferenza avente raggio ed ampiezza indicati
COMANDO = "MATITA01.circle(-100, 45)" # Assegnare il contenuto della variabile COMANDO
SCRIVE(COLORE, COMANDO) # Chiamare la funzione SCRIVE() previo trasferimento del contenuto delle variabili indicate
COLORE = [0, 0.7, 0.7] # Assegnare il contenuto della variabile COLORE
MATITA01.color(COLORE) # Impostare il colore di MATITA01
MATITA01.circle(-50, 180) # Tracciare, con l’oggetto MATITA01, un'arco di circonferenza avente raggio ed ampiezza indicati
COMANDO = "MATITA01.circle(-50, 180)" # Assegnare il contenuto della variabile COMANDO
SCRIVE(COLORE, COMANDO) # Chiamare la funzione SCRIVE() previo trasferimento del contenuto delle variabili indicate
COLORE = [0, 1, 1] # Assegnare il contenuto della variabile COLORE
MATITA01.color(COLORE) # Impostare il colore di MATITA01
MATITA01.circle(-100, 45) # Tracciare, con l’oggetto MATITA01, un'arco di circonferenza avente raggio ed ampiezza indicati
COMANDO = "MATITA01.circle(-100, 45)" # Assegnare il contenuto della variabile COMANDO
SCRIVE(COLORE, COMANDO) # Chiamare la funzione SCRIVE() previo trasferimento del contenuto delle variabili indicate
COLORE = [0, 0, 1] # Assegnare il contenuto della variabile COLORE
MATITA01.color(COLORE) # Impostare il colore di MATITA01
MATITA01.circle(-30, 90) # Tracciare, con l’oggetto MATITA01, un'arco di circonferenza avente raggio ed ampiezza indicati
COMANDO = "MATITA01.circle(-30, 90)" # Assegnare il contenuto della variabile COMANDO
SCRIVE(COLORE, COMANDO) # Chiamare la funzione SCRIVE() previo trasferimento del contenuto delle variabili indicate
MATITA01.end_fill() # Ultima istruzione per disegnare una figura piena di colore
COMANDO = "MATITA01.end_fill()" # Assegnare il contenuto della variabile COMANDO
SCRIVE(COLORE, COMANDO) # Chiamare la funzione SCRIVE() previo trasferimento del contenuto delle variabili indicate
TELA01.mainloop() # Attende che l'utente chiuda la finestra TELA01
# TELA01.exitonclick() # Chiude TELA01 cliccando su di esso.
#