home - blog - Scratch e le coordinate polari
#scratch #coding #pensieroComputazionale
by Leonori Danila, 08-09-2019

Tempo Lettura articoloTempo di lettura/visione: 3 min

PROVA LA FORMAZIONE! LA PRIMA LEZIONE E' GRATIS


Fai il login e guarda gratuitamente la prima lezione del corso Scratch: coding dallo storytelling alla realtà aumentata - ID SOFIA: 65076

Scratch e le coordinate polari

Anteprima Articolo Blog Scratch e le coordinate polari

Muovere uno sprite

Il comando fai … passi di Scratch è piuttosto sottovalutato. In fin dei conti fa solamente muovere il gatto di un numero di passi scelto dal programmatore.

In realtà fa molto di più, perché fa muovere il gatto (o un altro sprite) nella direzione in cui sta puntando.
Quindi il movimento relativo che viene eseguito (relativo perché dipende dal punto di partenza dello sprite) tiene conto di due fattori:
  • la direzione;
  • il numero dei passi.

Questo è ben diverso dal blocco vai a x: … y: … oppure dal blocco cambia x di … .


Gli sprite e il numero di passi

Tutti sappiamo che lo stage di Scratch è in realtà un piano cartesiano. È facile posizionare uno sprite in un punto preciso dello schermo assegnando un valore alla coordinata x e uno alla coordinata y.

Quando usiamo il comando fai … passi entriamo nel magico mondo del sistema di coordinate polari, dove ogni punto del piano può essere identificato non da due coordinate ma da un angolo e da una distanza da un punto fisso.

Quindi se lo sprite (il gatto o forse parlando di coordinate polare si potrebbe usare il pinguino...) si trova al centro dello stage (x = 0, y = 0) e gli facciamo fare 150 passi, in che punto si sposterà?

Non possiamo sapere la risposta se non conosciamo anche la direzione dello sprite.

Gli sprite e la direzione

Se la direzione è 90 (quindi verso destra), il punto di arrivo sarà x =150 e y = 100.
Se invece la direzione fosse 75 (quindi verso destra e un po' anche verso l'alto), in suo punto di arrivo sarà... non così semplice da calcolare perché dovremo usare la funzioni trigonometriche di seno e coseno.

In realtà invece di ricorrere alla matematica possiamo costruire il programma con Scratch (Figura 1), eseguirlo
e poi attivare la visualizzazione delle coordinate (Figura 2) per verificare il punto di arrivo sullo stage (Figura 3).
Ora, se ripetiamo più volte parte dello script di Figura 1, ma ad ogni ripetizione modifichiamo l'angolo (Figura 4), il gatto si muoverà in tondo, come se fosse legato a punto centrale dello stage da un guinzaglio invisibile.

Per ottenere tutto ciò bisogna creare prima una variabile (Figura 5).
È evidente che oltre all'angolo possiamo contemporaneamente modificare anche la distanza dal punto centrale, quindi la lunghezza del guinzaglio invisibile del gatto (Figura 6).
A questo punto può venire la curiosità di poter vedere graficamente qual è il reale percorso seguito dal gatto (tutti i punti di arrivo, insomma).

Per farlo, possiamo caricare le estensioni “Penna”, cliccando prima il pulsante in basso a sinistra (Figura 7) e poi scegliendo la corretta estensione (Figura 8).
Basterà aggiungere un paio di blocchi (Figura 9) per vedere il gatto tracciare una spirale (Figura 10, il gatto è stato spostato al termine dell'esecuzione).

Per il codice completo e il funzionamento, il progetto di Scratch sulle coordinate polari è disponibile a questo link.

Seguici!

Ancora una volta grazie ad Andrea Ferraresso per la collaborazione.

Per non perdere nessun aggiornamento segui la pagina Facebook di We Turtle e iscriviti alla newsletter!
TORNA AGLI ARTICOLI
Scratch: coding dallo storytelling alla realtà aumentata...

TI E' PIACIUTO QUESTO ARTICOLO?

Continua a esplorare su WeTurtle!


Ti consigliamo il corso Scratch: coding dallo storytelling alla realtà aumentata - ID SOFIA: 65076

POTREBBE INTERESSARTI ANCHE

I Pirati dei Caraibi: lezioni di coding per la scuola...

FREE

Tempo: 51 min

TUTORIAL
   Lorenzo Cesaretti
I Tre Cosmonauti: lezione di coding per la scuola primaria

FREE

Tempo: 59 min

TUTORIAL
   Lorenzo Cesaretti
L’insostenibile leggerezza delle liste

FREE

Tempo: 2 min

BLOG
   Danila Leonori
Scratch e la programmazione a blocchi

FREE

Tempo: 1 min

BLOG
   Danila Leonori
TUTORIAL - COSTRUIRE UN VIDEOGIOCO A TEMA LABIRINTO...

FREE

Tempo: 5 min

TUTORIAL
   Luca Balestra