Lezione 4

Benvenuti nel vostro AOZ Studio Lezione 4 adattata da Dave Baldwin – Febbraio 2020

Impareremo a disegnare molte barre casuali (rettangoli) o triangoli riempiti con motivi colorati casuali su tutto lo schermo.

Nell’editor, clicca sul simbolo della carta all’estrema sinistra per creare un nuovo progetto. Date al nuovo progetto il nome Lesson 4 e salvatelo come descritto nella Lesson 1.

I comandi che sono anche introdotti in questa lezione sono: SET PATTERN, SET PAINT, BAR e POLYGON.

				
					#manifest:"aoz" // Imposta l'ambiente di programmazione in modalità AOZ
#fullScreen:true // Utilizzare uno schermo intero
#fps:true // Accende il contatore FPS (fotogrammi al secondo) nell'angolo in alto a sinistra. Cambiatelo in >false< se non volete vedere il display.
Curs Off // Spegne il cursore lampeggiante.
sw=Screen Width // Definire la variabile sw come la larghezza dello schermo
sh=Screen Height // Definire la variabile sh come altezza dello schermo
BARRE=1 // Definire la variabile per accendere i rettangoli ON(1) o OFF(0)
TRIANGOLI=0 // Definire la variabile per accendere i triangoli ON(1) o OFF(0)
VELOCITA=0 // Definire le variabili per controllare la velocità. Lento(0), Veloce(1)
Cls // Cancella lo schermo prima di iniziare
				
			

Loop del programma principale. Tutti i comandi tra Do e Loop vengono ripetuti fino a quando il programma viene fermato.

				
					Do // Avviare il ciclo del programma
x1 = Rnd(sw)        // Definisci delle coordinate x e y casuali per il primo angolo del poligono. 
y1 = Rnd(sh)+100    // Rnd(??) genera un numero casuale tra 0 e il valore arbitrario tra le parentesi.
x2 = Rnd(sw)        //Definisci delle coordinate x e y casuali per il secondo angolo del poligono.
y2 = Rnd(sh)  
y3 = Rnd(sw)        // Definisci delle coordinate x e y casuali per il terzo angolo del poligono.
y3 = Rnd(sh)     //  Per prima cosa disegneremo il poligono riempito con l'ultimo colore utilizzato in modo da coprire i resti sullo schermo.
Set Pattern 0    // Questo imposta il modello di riempimento su un'uscita a colori (con l'ultimo colore usato)
Set Paint 0        // Questo commuta la modalità del bordo. >0< significa nessun bordo, >1< significa che la forma è emessa con un bordo.
If BARS=1 then Bar x1,y1 to x2,y2    // Controlla se le barre devono essere disegnate, se sì (BARRE=1) allora disegna un rettangolo e usa 2 coppie di coordinate corrispondenti agli angoli opposti.
If TRIANGLES=1 then Polygon x1,y1 to x2,y2 to x3,y3     // Controlla se i triangoli devono essere disegnati, se sì (TRIANGLES=1) allora disegna un triangolo con 3 coppie di coordinate corrispondenti ai tre angoli.

				
			

Ora disegneremo la stessa forma con bordi e motivi casuali. Sono disponibili 34 modelli preimpostati e il modello 0 che crea un blocco pieno. Questi motivi sono creati da due colori, il colore 0 (che viene trattato come trasparente nelle uscite grafiche) e il colore di disegno correntemente impostato.

				
					Set Pattern rnd( 34 )     // Imposta il modello su un numero casuale tra 0 e 34. Questo modello sarà usato in tutte le successive uscite grafiche finché non sarà cambiato.
Set Paint 1            // Imposta la modalità del bordo su 1.
Ink Rnd( 32 )      // Imposta il colore del disegno. (Questo è usato per il prossimo poligono così come per il prossimo blocco a colori nel prossimo ciclo. (Loop)
If BARRE=1 then Bar x1,y1 to x2,y2    //  Controlla se le barre devono essere disegnate, se sì (BARRE=1) allora disegna un rettangolo e usa 2 coppie di coordinate corrispondenti agli angoli opposti.
If TRIANGOLI=1 then Polygon x1,y1 to x2,y2 to x3,y3     // Controlla se i triangoli devono essere disegnati, se sì (TRIANGOLI=1) allora disegna un triangolo con 3 coppie di coordinate corrispondenti ai tre angoli. Infine, aggiungiamo alcuni comandi da tastiera per rendere le cose più interessanti.

				
			

Infine, aggiungeremo alcuni controlli da tastiera per renderlo più interessante.

				
					Locate 0,0
Centre "Premi 'B' per le BARRE, 'T' per il TRIANGOLI, 'L' per LENTO, 'V' per VELOCE, 'Q' per FINIRE"   // Emette la linea in cima allo schermo. L'uscita ora assicura che nulla sia disegnato sopra di essa.
I$=Inkey$     //  Controlla se è stato premuto un tasto e in caso affermativo definisce I$ con il valore. Quando premete il tasto >T<, la variabile I$ diventa >T<.
If I$="B" or I$="b" then BARRE=1 : TRIANGOLI=0  // Controlla se >B< è stato premuto e, in caso affermativo, attiva i rettangoli (BARRE) e disattiva i triangoli (Triangoli). Testiamo le maiuscole e le minuscole se il tasto shift è attivo.
If I$="T" or I$="t" then TRIANGOLI=1 : BARRE=0   //  Verifica se >T< è stato premuto e, in caso affermativo, attiva TRIANGOLI e disattiva BARRE.
If I$="L" or I$="l" then VELOCITA=0    // Verifica se >L< è stato premuto e, in caso affermativo, imposta la variabile di velocità (VELOCITÀ) a 0 per lento.
If I$="V" or I$="v" then VELOCITA=1   // Verifica se >V< è stato premuto e, in caso affermativo, imposta la variabile SPEED a 1 per veloce.
If I$="Q" or I$="q" then Exit     // Premendo >Q< si esce dal programma.
If VELOCITA=0 then Wait 0.2      // Verificate se VELOCITÀ è impostato su slow e, in caso affermativo, rallentate un po' il programma prima di continuare.
Wait 0.001      // Una brevissima pausa per il programma.  Se non facciamo questa pausa, il programma andrà troppo veloce e ingombrerà il browser.
Loop    // Fine del ciclo del programma principale, torna a >Do< e inizia il ciclo successivo.
				
			

**Clicca sul pulsante “Run in Browser” o F1 per avviare il programma nel browser o su “Run in AOZ Viewer” (F2) per avviarlo nell’editor.

#####################
# Esercizi di programmazione #
#####################

1. LUCE Si possono avere grandi quadrati ed ellissi disegnati a caso invece di rettangoli?, vedi sotto

2. MODERATO E i triangoli equilateri?

3.PESANTE Aggiungere una quarta coppia di coordinate. Pensate a come si può disegnare un oggetto intero a quattro facce.

Comandi simili sono: POLYLINE x1,y1 a x2,y2 a x3,y3 a … – Disegna un poligono cavo con tutti gli angoli che volete.

BOX x1,y1 a x2,y2 – Disegna un rettangolo o un quadrato vuoto.

CIRCLE x1,y1,r – Disegna un cerchio con il centro x1,y1 e il raggio r.

ELLIPSE x1,y1,r1,r2 – Disegna un’ellisse cava con centro x1,y1 e un raggio orizzontale r1 e un raggio verticale r2.

Bene, ora puoi continuare con la lezione 5.

Aggiornato il 23.07.2023
Testato con AOZ Studio™ Versione 1.0 Aggiornamento 44 il 23.07.2023

RayShell Computer Department
Panoramica sulla protezione dei dati

Questo sito web utilizza i cookie per potervi offrire la migliore esperienza d'uso possibile. Le informazioni contenute nei cookie vengono memorizzate nel browser dell'utente e svolgono funzioni quali il riconoscimento dell'utente quando torna sul nostro sito web e l'aiuto al nostro team per capire quali sezioni del sito web sono più interessanti e utili per l'utente.