Scia con trail

La sfera verde attraversa la scena da sinistra verso destra.
La freccia azzurra segue la traiettoria della sfera verde.

from vpython import *
from numpy   import linspace
   
NUMERO = 100
DURATA = 4
RATE   = NUMERO / DURATA
START  = -10
STOP   = +10
   
freccia = arrow(color      = color.cyan,
                shaftwidth = 0.5       ) 
  
sfera1  = sphere(color = color.red) 
  
sfera2  = sphere(color = color.green           ,
                 pos   = vector(START, STOP, 0)) 
   
for x in linspace(START, STOP, NUMERO):
    rate(RATE)
       
    sfera2.pos   = vector(x, STOP, 0)
    freccia.axis = sfera2.pos - sfera1.pos

La sfera verde lascia una scia

from vpython import *
from numpy   import linspace
   
NUMERO = 100
DURATA = 4
RATE   = NUMERO / DURATA
START  = -10
STOP   = +10
   
freccia = arrow(color      = color.cyan,
                shaftwidth = 0.5       ) 
  
sfera1  = sphere(color = color.red) 
  
sfera2  = sphere(color      = color.green           ,
                 make_trail = True                  ,
                 pos        = vector(START, STOP, 0))
   
for x in linspace(START, STOP, NUMERO):
    rate(RATE)
       
    sfera2.pos   = vector(x, STOP, 0)
    freccia.axis = sfera2.pos - sfera1.pos

La sfera verde lascia una scia di colore giallo

from vpython import *
from numpy   import linspace
   
NUMERO = 100
DURATA = 4
RATE   = NUMERO / DURATA
START  = -10
STOP   = +10
   
freccia = arrow(color      = color.cyan,
                shaftwidth = 0.5       ) 
  
sfera1  = sphere(color = color.red) 
  
sfera2  = sphere(color       = color.green           ,
                 make_trail  = True                  ,
                 pos         = vector(START, STOP, 0), 
                 trail_color = color.yellow          )
   
for x in linspace(START, STOP, NUMERO):
    rate(RATE)
       
    sfera2.pos   = vector(x, STOP, 0)
    freccia.axis = sfera2.pos - sfera1.pos

La sfera verde lascia una scia di colore giallo con le ultime 50 posizioni

from vpython import *
from numpy   import linspace
   
NUMERO = 100
DURATA = 4
RATE   = NUMERO / DURATA
START  = -10
STOP   = +10
   
freccia = arrow(color      = color.cyan,
                shaftwidth = 0.5       ) 
  
sfera1  = sphere(color = color.red)
  
sfera2  = sphere(color       = color.green           ,
                 make_trail  = True                  ,
                 pos         = vector(START, STOP, 0),
                 retain      = 50                    ,
                 trail_color = color.yellow          )
   
for x in linspace(START, STOP, NUMERO):
    rate(RATE)
       
    sfera2.pos   = vector(x, STOP, 0)
    freccia.axis = sfera2.pos - sfera1.pos

La sfera lascia una scia saltando un certo numero di posizioni

from vpython import *
from numpy   import linspace
  
NUMERO = 100
DURATA = 4
RATE   = NUMERO / DURATA
START  = -10
STOP   = +10
   
freccia = arrow(shaftwidth = 0.5       ,
                color      = color.cyan) 
  
sfera1  = sphere(color = color.red) 
  
sfera2  = sphere(color       = color.green         ,
                 interval    = 5                   ,
                 make_trail  = True                ,
                 pos         = vector(START,STOP,0),
                 retain      = 10                  ,
                 trail_color = color.yellow        ,
                 trail_type  = "points"            )
   
for x in linspace(START, STOP, NUMERO):
    rate(RATE)
       
    sfera2.pos   = vector(x, STOP, 0)
    freccia.axis = sfera2.pos - sfera1.pos