""" rifrazione dall'aria al vetro con grafico """ from graftarta2 import Graf from graphics import * import math t=Graf("Rifrazione", 500, 300) t.coordinate(-250,-160,250,160) def prepara(): """ linea di separazione di due mezzi e normale """ t.avanti(200) t.avanti(-400) t.avanti(200) t.destra(-90) t.avanti(200) t.avanti(-400) t.avanti(200) t.destra(90) Testo=Text(Point(10,120),'aria') Testo.draw(t) Testo1=Text(Point(10,-120),'acqua') Testo1.draw(t) def rifra(): """ chiede l'angolo di incidenza e calcola l'angolo di rifrazione; ripete la richiesta finche' non si scrive f """ prepara() n=1.50 q='w' while q<>'f': i=input('scrivi un angolo ') print 'angolo di incidenza ',i r=math.asin(math.sin(i*math.pi/180)/n)*180/math.pi print 'angolo di rifrazione ',r t.destra(-i) t.avanti(200) t.avanti(-200) t.destra(90+i) t.destra(90-r) t.avanti(200) t.avanti(-200) t.destra(-180+r) q=raw_input('premi un tasto (f fine) invio ') t.close() rifra()