orbiteTruccateSi può sfruttare una caratteristica di Scratch per disegnare circonferenze di centro e raggio dati e riprodurre moti circolari senza troppi calcoli analitici.

Una esemplificazione la si può osservare in questa animazione del sistema solare link1

Per fare questo occorre sfruttare una caratteristica peculiare della piattaforma: Scratch ridisegna la grafica al termine di ogni ciclo di ripetizione.

 

Vediamo in che modo utilizzare questa caratteristica.

Nell'esempio si utilizza uno sprite, detto "pianeta", che viene posto in orbita circolare, con istruzioni che, nell'ordine, sono:cerchio conTrucco1

1) spostare il pianeta nel centro,

2) imprimere una rotazione a scelta (da mettere in relazione alla velocità orbitale) così da orientarlo in una direzione diversa da quella di provenienza,

3) spostare in avanti di una quantità pari al raggio prescelto per vederlo nella sua posizione orbitale,

La sequenza viene ripetuta 1), 2), 3) per sempre.

 

Così facendo, il pianeta verrà visto spostarsi lungo la sua orbita circolare e non lo si vedrà mai nella sua posizione centrale.

Questo è dovuto al fatto che lo stage viene disegnato solo al termine del ciclo quindi solo quando l'oggetto è nella sua posizione orbitale e non quando è in centro.

 

inseguitorePer fargli lasciare una traccia si utilizza un secondo sprite "inseguitore".

Lo sprite "inseguitore" ha il compito di posizionarsi sempre dove c'è lo sprite "pianeta".

La sua "penna" è sempre giù per cui lascia traccia della sua posizione che è la stessa del pianeta, nell'esempio o il centro o l'orbita.

È sufficiente questo per vedere girare il pianeta e disgnare la propria orbita.

Vedi progetto link1

 

L'esempio illustrato è contenuto nel progetto link1 eseguito quando si preme [tasto 1] che è stato costruito per sperimentare diversi modi di ordinare la sequenza della istruzioni con effetti differenti.orbita

Per disegnare un poligono basta imprimere una rotazione ampia.

Per disegnare una (quasi) circonferenza occorre utilizzare angoli di rotazione non troppo grandi in modo che il poligono disegnato possa essere confuso con una circonferenza.

 

In un successivo articolo sono stati eseguiti degli esperimenti con queste procedure per comprendere meglio il funzionamento di Scratch link1