Please ignore secret bonuses. Secret tests do NOT award bonus. Max hw grade is 30+2 bonus efficiency

Do you need help?

HW6, disegnare snake

A
Alessio_tinaburri (510 points)
4 15 19
in Avvisi by (510 points)
closed by
Non riesco a capire come disegnare i singoli blocchi di pixel e riempirli.

Ho provato ad utilizzare le funzioni per creare delle righe, ma scriverle ripetutamente è un processo molto lungo.

Qualcuno mi può spiegare come risolvere?
561 views
closed

5 Answers

Best answer
V
ValerioZ (1140 points)
0 2 6
by (1.1k points)
selected by
in realtà devi muoverti un pixel alla volta... di conseguenza puoi disegnare un pixel alla volta (e non un blocco)
A
Alessio_tinaburri (510 points)
4 15 19
by (510 points)
Quando disegno un pixel,questo non è un quadratino perfetto, è normale?
Alegau (6770 points)
1 2 43
by (6.8k points)
Un consiglio potrebbe essere quello di usare un ciclo.

All interno potresti controllare tutti i possibili movimenti e colorare il pixel alle coordinate [testa snakeY][testa snakeX] di verde(prima scriviti che verde è una tupla RGB(0,255,0)).

Dopo aver controllato tutte e 8 le direzioni possibili prova a verificare i casi in cui il pixel in cui si muove il serpente fosse appartenente già al serpente stesso.

Fammi sapere se hai capito cosa intendo.
Paolo Gentili (31130 points)
3 6 114
by (31.1k points)
Hai usato images.load per far diventare l'immagine iniziale una matrice su cui puoi lavorare?

Da li ti muovi con img[y][x] per colorare i pixel e far muovere il serpente
Paolo Gentili (31130 points)
3 6 114
by (31.1k points)
Comunque ti basta andare su twiki a questo link

https://twiki.di.uniroma1.it/pub/Programmazione1/AA22_23/DiarioDelleLezioni-CanaleAL/lezione12.pdf

Qui trovi tutta la lezione su come lavorare sulle immagini

Mentre qui:

https://twiki.di.uniroma1.it/pub/Programmazione1/AA22_23/DiarioDelleLezioni-CanaleAL/lezione12.webm

trovi direttamente il video della spiegazione di come si lavora sulle immagini fatto dal professore stesso.
L
Larenzz03 (5990 points)
3 14 65
by (6.0k points)

Per prima cosa ti consiglio di pensare fin dall'inizio alle variabili righe e colonne (dove sarà posizionato) 

x = pos[0] 

 y = pos[1]

Queste verranno cambiate ogni volta che si fa un movimento. Ovviamente anche le posizioni (nord,sud...) le relative coordinate (ad esempio nord è (0, -1)). fatto questo prova a disegnare il singolo blocco nell'immagine utilizzando il colore e le coordinate xy. 

L
Larenzz03 (5990 points)
3 14 65
by (6.0k points)
ovviamente per movimento, potresti fare un ciclo aumentandolo e dividendolo nei vari casi (ad esempio se incontra rosso, arancione...a ogni "incontro" o non "incontro" il serpente cambia