Orologi analogici e digitali

Lancetta e numero di secondi import math import time import pygame TITOLO=”Orologio analogico e digitale: secondi” DIM =800 FRAME =5 RaSecondi=0.4*DIM raSecondi=0.02*DIM coSfondo =(127, 127, 127) coSecondi1=( 64, 0, 0) coSecondi2=(255, 0, 0) frSecondi=2*math.pi/60 PI2 =math.pi/2 W2 =DIM/2 H2 =DIM/2 CENTRO=(W2, H2) pygame.init() screen=pygame.display.set_mode((DIM, DIM)) FONT =pygame.font.SysFont(“Courier”, size=40)#, bold=True) clock =pygame.time.Clock() pygame.display.set_caption(TITOLO) ANCORA=True while ANCORA: … Leggi tutto

Ipocicloidi

Una circonferenza rotola internamente a un’altra circonferenza L’estremo del raggio lascia una traccia Il risultato finale dipende dal rapporto tra i due raggi, n=a/b import math import pygame a =5 # Rapporto tra i raggi b =2 TITOLO =”Ipocicloide: a=” +str(a)+” b=”+str(b) DIM =800 dAngolo=2 # Angolo tra due punti notevoli FRAME =60 # Numero … Leggi tutto

Epicicloidi

Una circonferenza rotola esternamente a un’altra circonferenza L’estremo del raggio lascia una traccia Il risultato finale dipende dal rapporto tra i due raggi, n=a/b import math import pygame a =3 # Rapporto tra i raggi b =2 TITOLO =”Epicicloide: a=” +str(a)+” b=”+str(b) DIM =800 dAngolo=2 # Angolo tra due punti notevoli FRAME =60 # Numero … Leggi tutto

Ricorsione e triangoli

import pygame TITOLO=”Immagine ricorsiva: triangolo” DIM =800 SPAZIO=50 red =255 green =255 blue =127 def triangolo(x1,y1, x2,y2, x3,y3): pygame.draw.aaline(screen, (red,green,blue), (x1,y1), (x2,y2)) pygame.draw.aaline(screen, (red,green,blue), (x1,y1), (x3,y3)) pygame.draw.aaline(screen, (red,green,blue), (x2,y2), (x3,y3)) if(abs(x1-x2) > 2): triangolo((x1+x2)/2, (y1+y2)/2, (x1+x3)/2, (y1+y3)/2, (x2+x3)/2, (y2+y3)/2) pygame.init() screen=pygame.display.set_mode((DIM, DIM)) pygame.display.set_caption(TITOLO) triangolo(DIM/2 , SPAZIO , SPAZIO , DIM-SPAZIO, DIM-SPAZIO, DIM-SPAZIO) pygame.display.flip() input(“Premi INVIO … Leggi tutto

Salto a metà, punti in cerchio

import math # cos(), sin() import random # randint() import pygame NUMERO=3 DIM =800 RAGGIO=0.45*DIM raggio=1 # Punto colorato FRAME1=2 # Numero frame al secondo FRAME2=500 # Numero punti per ogni frame PUNTI=[] angolo=math.pi/2 dAngolo=2*math.pi/NUMERO XC=DIM/2 YC=DIM/2 for i in range(NUMERO): x=XC+RAGGIO*math.cos(angolo) y=YC-RAGGIO*math.sin(angolo) PUNTI.append((x,y)) angolo +=dAngolo pygame.init() screen=pygame.display.set_mode((DIM, DIM)) pygame.display.set_caption(“Chaos Game: tappeto rotondo 1/2: ” … Leggi tutto

Salto a due terzi, scelta guidata, punti in cerchio

+0 +3 +4 +5 import math import random # randint() import pygame SCELTA=(+0,+3,+4,+5) NUMERO=8 DIM =800 RAGGIO=0.45*DIM raggio=1 # Punto colorato FRAME1=2 # Numero frame al secondo FRAME2=500 # Numero punti per ogni frame PUNTI=[] angolo=math.pi/2 dAngolo=2*math.pi/NUMERO XC=DIM/2 YC=DIM/2 for i in range(NUMERO): x=XC+RAGGIO*math.cos(angolo) y=YC-RAGGIO*math.sin(angolo) PUNTI.append((x,y)) angolo +=dAngolo pygame.init() screen=pygame.display.set_mode((DIM, DIM)) pygame.display.set_caption(“Chaos Game: tappeto rotondo … Leggi tutto