# tic(x) fa passare x sec; plot(.fg.xaxt.yaxt.) prepara lo schermo, tutto bianco
tic <- function(x) {sec <-proc.time()[3]; while(proc.time()[3] < sec+x) sec<-sec}
plot(c(3,17),c(4,18),type="n",xlab="",ylab="",fg="white",xaxt="n",yaxt="n")
frase <- "premi ESC per fermare l'animazione"
while(TRUE){
polygon(c(0,20,20,0),c(20,20,0,0),col="yellow",fg="yellow")
polygon(c(17,11,9,9,8,8,7,6,4,4,5,6,5,6,7,7,8,10,17),
   c(16,16,14,17,14,17,14,10,7,6,5,6.2,5,5,6,7,8,9,7),col="grey")
lines(c(10,11,11), c(9,10,11)); lines(c(6,7,8,7,9,9), c(10,13,14,10,10,14))
lines(c(10,10), c(15,11)); lines(c(11,11), c(16,12))
lines(c(12,12,9), c(16,13,10)); lines(c(16,16,13,16), c(16,13,10,13))
lines(c(13,13), c(16,10)); lines(c(14,14), c(16,11)); lines(c(15,15), c(16,12))
symbols(5,6.5, circles=0.3, inches=FALSE, add=TRUE, bg="brown")
text(10,4.2,frase); tic(1)
polygon(c(0,20,20,0),c(20,20,0,0),col="yellow",fg="yellow")
polygon(c(17,11,9,9,8,8,7,6,4,4,5,6,5,6,7,7,8,10,17),
   c(16,16+1,14+1,17+1,14+1,17+1,14+1,10+1,7+1,6+1,5+1,6.2+1,5+1,5+1,6+1,7+1,8+1,9+1,7),col="grey")
lines(c(10,11,11), c(9+1,10+1,11+1)); lines(c(6,7,8,7,9,9), c(10+1,13+1,14+1,10+1,10+1,14+1))
lines(c(10,10), c(15+1,11+1)); lines(c(11,11), c(16+1,12+1))
lines(c(12,12,9), c(16+5/6,13+1,10+1)); lines(c(16,16,13), c(16+1/6,13+1,10+1))
lines(c(13,13), c(16+2/3,10+1)); lines(c(14,14), c(16+3/6,11+1)); lines(c(15,15), c(16+1/6,12+1))
symbols(5,6.5+1, circles=0.3, inches=FALSE, add=TRUE, bg="brown"); text(10,4.2,frase); tic(1) }
#
# OVVERO:
source("http://macosa.dima.unige.it/r.R") 
BF=3; HF=3
boxmN(3,17,4,18)
frase <- "premi ESC per fermare l'animazione"
while(TRUE){
spezzaC(c(0,20,20,0),c(20,20,0,0),"yellow")
spezzaC(c(17,11,9,9,8,8,7,6,4,4,5,6,5,6,7,7,8,10,17),
   c(16,16,14,17,14,17,14,10,7,6,5,6.2,5,5,6,7,8,9,7),"grey")
spezza(c(10,11,11), c(9,10,11), "brown"); spezza(c(6,7,8,7,9,9), c(10,13,14,10,10,14), "brown")
spezza(c(10,10), c(15,11), "brown"); spezza(c(11,11), c(16,12), "brown")
spezza(c(12,12,9), c(16,13,10), "brown"); spezza(c(16,16,13,16), c(16,13,10,13), "brown")
spezza(c(13,13), c(16,10), "brown"); spezza(c(14,14), c(16,11), "brown"); spezza(c(15,15), c(16,12), "brown")
cerchioC(5,6.5, 0.25, "brown")
text(10,4.2,frase); attendi(1)
spezzaC(c(0,20,20,0),c(20,20,0,0),"yellow")
spezzaC(c(17,11,9,9,8,8,7,6,4,4,5,6,5,6,7,7,8,10,17),
   c(16,16+1,14+1,17+1,14+1,17+1,14+1,10+1,7+1,6+1,5+1,6.2+1,5+1,5+1,6+1,7+1,8+1,9+1,7),"grey")
spezza(c(10,11,11), c(9+1,10+1,11+1), "brown"); spezza(c(6,7,8,7,9,9), c(10+1,13+1,14+1,10+1,10+1,14+1), "brown")
spezza(c(10,10), c(15+1,11+1), "brown"); spezza(c(11,11), c(16+1,12+1), "brown")
spezza(c(12,12,9), c(16+5/6,13+1,10+1), "brown"); spezza(c(16,16,13), c(16+1/6,13+1,10+1), "brown")
spezza(c(13,13), c(16+2/3,10+1), "brown"); spezza(c(14,14), c(16+3/6,11+1), "brown"); spezza(c(15,15), c(16+1/6,12+1), "brown")
cerchioC(5,6.5+1, 0.25, "brown"); text(10,4.2,frase); attendi(1) }