027 Python3 + Turtle: Scrivere testi colorati

18 Giugno, 2023 (13:37) | Python | By: sargonsei

#
# 027-Python3 - Per scrivere testi colorati con Python 3 – Turtle occorre:
#
def SCRIVE(COL):    # j) Inizio definizione funzione SCRIVE() richiedente un parametro contenuto in una variabile-lista
    TESTO01.color(COL)                      # a) Impostare il colore corrente dell'oggetto TESTO01
    TESTO = "Codice colore: "+ str(COL)     # b) Imposta il contenuto della variabile alfanumerica 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.write(TESTO,0)                  # f) Scrivere sul piano cartesiano il contenuto della variabile TESTO
    TESTO01.backward(10)                    # g) Spostare l’oggetto TESTO01 più indietro di 10 punti
    TESTO01.right(90)                       # h) Orientare TESTO01 girata a destra di 90 gradi rispetto al valore corrente
import turtle             # A) Importare il modulo turtle
TELA01 = turtle.Screen()  # B) Creare il piano cartesiano TELA01 su cui disegnare
TESTO01 = turtle.Turtle() # C) Creare l’oggetto TESTO01 con cui disegnare
TESTO01.speed(1)          # D) Impostare velocità di esecuzione per TESTO01
TESTO01.pensize(6)        # E) Definire lo spessore della linea TESTO01
TESTO01.penup()           # F) Impedire all’oggetto TESTO01 di scrivere
TESTO01.goto(-120,250)    # G) Spostare l’oggetto TESTO01 nel punto avente coordinate X=-320, Y=250
TESTO01.pendown()         # H) Consentire all’oggetto TESTO01 di scrivere
TESTO01.right(90)         # I) Orientare TESTO01 girata a destra di 90 gradi rispetto al valore corrente
for CD in range(7, 0, -1):                      # J) Inizio del ciclo che verrà ripetuto varie volte, da 7 a 0 incrementando di -1.
    CB = bin(CD+16)                             # K) Convertire il parametro da numero decimale a numero binario
    X = [0.3, 0.7, 1]                           # L) Definire la variabile-lista contenente le varie sfumature di colore
    C0 =[int(CB[-3]), int(CB[-2]), int(CB[-1])] # M) Convertire il parametro da numero binario a variabile -lista
    for I in range(3):                              # N) Inizio del ciclo 'for' che verrà ripetuto 3 volte, incrementando I da 0 a 2.
        COL = [C0[0]*X[I], C0[1]*X[I], C0[2]*X[I]]  # O) Ricalcolare il valore del colore RGB (più scuro)
        SCRIVE(COL)                                 # P) Chiamare la funzione SCRIVE() previo trasferimento del contenuto della variabile-lista COL
#
# Se il listato terminasse con questa riga, la finestra TELA01 verrebbe chiusa.
TELA01.mainloop()           # Attendere che l'utente chiuda la finestra TELA01
# TELA01.exitonclick()      # Chiudere TELA01 cliccando su di esso.
# ^^ Togliere il graticcio che precede l’istruzione che si vuole utilizzare per terminare il programma
#