Le voci per questa sfida mostreranno una figura animata rotante di Lissajous . La comparsa della rotazione 3d si verifica quando il parametro x viene successivamente spostato di fase in ciascun fotogramma.
Ingresso:
I parametri a
e b
(come per l' articolo di Wikipedia ) saranno specificati nella riga di comando o letti da stdin.
Produzione:
Questo è ascii-art , quindi l'output verrà visualizzato in una finestra dell'emulatore di terminale o equivalente. Le dimensioni dell'output possono essere hardcoded, ma la figura di Lissajous deve essere almeno abbastanza grande da riempire una finestra 80x24.
La frequenza dei fotogrammi dell'animazione sarà di circa 50 fps. Dormire per 20 ms tra ogni fotogramma va bene, purché il tempo di calcolo di ciascun fotogramma sia ridotto rispetto al tempo di sospensione fisso. Se la tua lingua scelta non è in grado di calcolare abbastanza velocemente sulla piattaforma prescelta, dovrai calcolare il tempo di dormire in modo dinamico.
Ogni fotogramma non verrà visualizzato fino al completamento di tutti i calcoli per quel fotogramma. Non è necessario cancellare lo schermo tra ciascun fotogramma.
La figura eseguirà una 2*Pi
rotazione completa ogni 4 secondi circa.
Per ciascun fotogramma, deve essere generata una curva completamente chiusa. Almeno 1000 punti devono essere calcolati lungo la curva. Non è necessario tracciare la linea tra i punti.
I punti della curva verranno tracciati come #
caratteri. Il resto dell'area di visualizzazione sarà vuoto / spazi bianchi.
Questo è code-golf , quindi la risposta più breve in byte (ritenuta accettabile da me) sarà il vincitore accettato una settimana dopo questa pubblicazione.
Risposta di riferimento non golfata .