Tag Archives: vpython

Bounce

Tutorial ufficiale


Una pallina bianca

Una pallina azzura e una parete verde a destra

 

La posizione della palla dipende dal tempo: ball.pos=ball.pos+ball.velocity*deltat

Il tempo scorre per alcuni secondi: t=t+deltat

Se la posizione della palla supera quella del muro a destra allora si inverte il segno della velocità

La palla rimbalza sul lato destro ma si perde sul lato sinistro…
Un’altra parete e un’altra condizione per rimbalzare

La palla annega parzialmente nelle pareti, è necessario migliorare il controllo

Un vettore di colore giallo segue la palla e indica direzione e verso del movimento

Per seguire la traiettoria della palla aggiungi automaticamente una traccia grafica: make_trail=True

La traiettoria completamente orizzontale è prevedibile, aggiungi

  1. il movimento in verticale
  2. le pareti in alto e in basso
  3. i controlli corrispondenti

La palla si muove su un piano xy piuttosto che nello spazio 3d, aggiungi

  • il movimento in profondità
  • una parete di fondo
  • la parete frontale è solo immaginata…
  • i controlli corrispondenti


L’animazione può continuare all’infinito modificando la condizione del ciclo

Si può aggiungere una seconda palla con colore e vettore velocità diversi


Ancora…


  1. Più palline
  2. Posizione iniziale, velocità, colore a piacere
  3. Colori delle palline, o delle pareti, che cambiano quando c’è un rimbalzo
  4. Pareti mobili…

Per evitare che la finestra si adatti a ogni intervento dell’utente escludi autoscale prima del ciclo while

 

Sfere

Più sfere

Più sfere diventano delle figure interessanti

Wireframe

Vettori

L’immagine seguente si ottiene ruotando la vista


Le immagini seguenti si ottengono ruotando e zoomando.
Con shaftwidth=0.2 tutte le frecce hanno lo stesso spessore.